Literate Programming. Back in 1984 when Knuth published his paper proposing Literate Programming, he believed that the concept would take over the programming world. I remember him saying that companies that failed to adopt Literate Programming would soon fall behind those that do. It hasn’t worked out that way.
Literate Programming failed to gain traction until recently. Now a sort of watered down version can be found in the various programming language notebooks. Org-mode Babel can—but doesn’t have to—support Knuth’s model so after almost 4 decades one could say that Literate Programming is finally seeing its day in the sun.
Although I love the idea, I’ve never been able to embrace the Knuth model. I want—need—to see the whole program all at once, which isn’t practical with the Knuth model. Even with Babel, I don’t use the full Literate Programming capabilities. I prefer the Literate Devops model used by Howard Abrams, a weaker model similar to that provided by the programming language notebooks.
Given the resurgence of interest in Literate Programming, it seems appropriate to revisit Knuth’s original paper. Vivek Haldar has added it to his Read A Paper series and gives a nice exposition of the paper. The video is just over 9 minutes so you can watch it on a coffee break. If you have an interest in Literate Programming in any of its incarnations, it’s worth taking a look at where it all started.