The act of subconsciously debugging a program / problem you have been working on, while asleep. You then wake up, with the answer to the problem fully formed in your mind. Lest you accuse me of Making Shit Up, I would like to point out that this happens to me on a regular basis. In fact, it happened to me last night.

I spent most of the day working on a problem in aboot. I finally came home at 11pm and, after a little time socializing with my roommates, went to bed. I lay down, still thinking about the problem, and eventually fell asleep. Around 3am, I woke up. I don't remember having any dreams, but somehow I knew (or believed I knew) what was causing the problem. I got up and went to work, and sure enough, I had forgotten to free up some vital part of memory, causing all sorts of strange problems. It was fixed before I had my morning coffee.

It's a tremendously useful thing when it happens, like a gift from the Code Fairy left under my pillow. On the other hand, whether it's a good or a bad thing that I dream in C is debatable.