Or how about a live programming environment that incrementally recomputes a new programming execution based on incremental changes to the program's code. Anyways, I've been working on this problem for a few years now...the first step is incremental compilation.