Adventures with Literate Programming

· literate programming, short thought

For a while last year, I was looking at trying to learn Julia for my research. Sadly, I wasn’t able to find a lot of traction in learning it as I was already well entrenched in the Python ecosystem. :disappointed: Interestingly, one thing that kind of stuck with me is Pluto.jl which is this interesting alternative to Jupyter Notebooks, where the “notebook” is generated from comments from the Julia source file. Which is amazing! One thing led to another, and I was properly introduced to the concept of Literate Programming.

Sadly, a lot of tools I found around literate programming in Python and C++ requires that I write another language altogether, and kind of defeats the purpose of the Literate Programming philosophy. And then I realized that the philosophy is a lot less about how to present the program, and a lot more about writing a lot of documentation comments.

So, starting this year, I am going to make my code a lot more readable, and write a whole bunch of documentation comments (even where they are technically not documentation comments, like in the middle of a function definition :smile:).