
Literate programming: Two beefs with the classic version (2014) - fanf2
http://akkartik.name/post/literate-programming
======
svat
Previous discussions:

[https://news.ycombinator.com/item?id=17484999](https://news.ycombinator.com/item?id=17484999)

[https://news.ycombinator.com/item?id=11695498](https://news.ycombinator.com/item?id=11695498)

[https://news.ycombinator.com/item?id=11692632](https://news.ycombinator.com/item?id=11692632)

------
antt
I have been playing around with org-babel's ability to do literate
programming.

It allows you control which file the code is tangled to, along with a comments
which deliminate where in the literate source code a block of text came from.
That gives some primitive ability to debug and build larger project bases.

Unfortunately I have never managed to convince a team to adopt emacs, let
alone org-mode, as the coding tool for a project. That's left me using the
obviously broken, half finished and barely documented implementation as good
enough for the parts of projects that are under my direct control.

Even in that state however, when you throw in git and pandoc, it is vastly
superior to any other devops system.

------
sumanthvepa
This actually makes sense. I’ve always found it much easier to read code in an
editor directly and jump around to understand it. I see the appeal of literate
programming. But it promises to be a debugging nightmare.

~~~
badsectoracula
I don't think it is really any different than debugging anything else.
Literate programming, as i understand it, is basically done with a
preprocessor (or two) that takes your "literare program" and spits out a human
readable document and a machine readable source code. You debug the latter
which is still the code you typed with the document bits stripped out, so it
should map 1:1 to your literate program code.

~~~
gmueckl
I think what it comes down to is interactive tooling linking code and
documentation. When coding and debugging, you want to see all the relevant
code without any noise (e.g. superfluous documentation). You want to change it
in that representation and these changes ideally get transferred back into the
documentation automatically. You may want to reorder sections of code and
documentation on the screen as required. And so on.

Maybe it is time to finally say goodbye to source files and place everything
in structured and annotated code databases instead? Code does not have to be
text.

