<P> The idea of auto - generating documentation is attractive to programmers for various reasons . For example, because it is extracted from the source code itself (for example, through comments), the programmer can write it while referring to the code, and use the same tools used to create the source code to make the documentation . This makes it much easier to keep the documentation up - to - date . </P> <P> Of course, a downside is that only programmers can edit this kind of documentation, and it depends on them to refresh the output (for example, by running a cron job to update the documents nightly). Some would characterize this as a pro rather than a con . </P> <P> Respected computer scientist Donald Knuth has noted that documentation can be a very difficult afterthought process and has advocated literate programming, written at the same time and location as the source code and extracted by automatic means . The programming languages Haskell and CoffeeScript have built - in support for a simple form of literate programming, but this support is not widely used . </P> <P> Elucidative Programming is the result of practical applications of Literate Programming in real programming contexts . The Elucidative paradigm proposes that source code and documentation be stored separately . </P>

A programming language that had a built-in support for a simple form of literate programming