In a new post to his blog Henri Berguis takes a look at something that seems to be popping up more and more these days - literate programming. He's created a simple tool that can help implement this in your development too called noweb (modeled after the noweb python project).
The literate programming paradigm, as conceived by Knuth, represents a move away from writing programs in the manner and order imposed by the computer, and instead enables programmers to develop programs in the order demanded by the logic and flow of their thoughts.
Literate programming allows the developer to set up one file, one with more natural language, and have the tool split it up into two other files - one for execution and the other used as documentation. He steps you through how the noweb tool works to pull in the file, parsing out the information via regular expressions (based on the noweb-style) and pushing the two versions of the file back out on the other side. The documentation is set up to end up as HTML and the code will be the literal code pulled from the noweb document itself.