Sile: A Modern Rewrite of TeX
TeX and Literate Programming (and Lisp) are my fundamental, day-to-day tools.<p>Code it, explain it, generate a Literate PDF containing the code.<p>The programming cycle is simple. Write the code in a latex block. Run make.
The makefile extracts the code from the latex, compiles it, runs the test cases (also in the latex), and regenerates the PDF. Code and explanations are always up to date and in sync.<p>I have found no better toolset.