Reaction for: Literate Programming by Danah

I found that the idea of a literate program intrigues me, although I am not certain if I agree with the style that is presented in this article. A few specific questions come to mind- If this was done in 1984, has anyone actually used WEB to teach a course or write industry level code? Can such a project be done using the object-oriented paradigm?

The idea of a literate program could be tremendously useful, in particular to students just beginning to program. I cannot imagine such a style being used in industry. It creates such bulky code and an experienced coder can read code easier than than the literate jumble that WEB creates.

So, this idea poses a question- what is the intent of code? Is code supposed to be read by just you? by colleagues on the same league? by anyone? I would pose that most code is not for everone that interacts with a program; rather for the programmers and future programmers. Maybe this is a naive thought based on assumptions that are far from accurate, but this article did not prove otherwise to me.

Another good question posed is what is good commenting or style? What is the goal in commenting programs or making them literate? In my mind, I see clear code as important to the programmer and those who may also work on the project. I cannot imagine creating code for the general user. I think this bias is preventing any great enlightening thoughts on this matter...

[One humourous comment in the article is that they chose the word WEB because it was one of only few words that had not been used to describe something related to computers. How funny is that! He also addresses the idea that programs should be viewed as webs rather than heirarchically. I assume OOP did not exist in 1984...]


Reactions


Adam:

Just on an aside, OOP's been around for a while. Smalltalk was created in the late 1960's I think. It's interesting to note, however, that it was still not popularized in 1984 to the extent that it is not even mentioned in the paper.


Jon:

Yes, OO languages have been around for a few decades, though I believe they did not start becoming widely popular until C++ made it a "practical" system to program in.

I also agree that comments are the coder and other people who may work on the same project. There is no point for a user to look at the source code for a project, even if it is available to be read. Thus, comments are intended for people who understand the language, and presumably have a good sense of the program. Something that I thought about when reading this was how well this idea would scale up to larger programs, where the design of a program is far beyond the scope of a few dozen files or classes. For example, how would someone write the "thought process" behind the several million lines of code that comprise Windows NT? How does this approach work with programs that develop over time?


[BACK]