Literate programming: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Botcrux (discussione | contributi)
m Bot: fix sezioni standard
Botcrux (discussione | contributi)
m Bot: fix errori del modulo Citazione
Riga 21:
Molto spesso si chiama erroneamente literate programming<ref name="MJD2000" /> il processo di estrazione della documentazione formattata prodotta da un file comune con codice sorgente e commenti - che è propriamente chiamata generazione di documentazione - o ai commenti copiosamente inclusi nel codice. Questo è il contrario del literate programming: il codice ben documentato o la documentazione estratta dal codice segue la struttura del codice, con la documentazione incorporata nel codice; mentre nel literate programming, il codice è incorporato nella documentazione, con il codice che segue la struttura della documentazione.
 
Questo malinteso ha portato alcuni a sostenere che gli strumenti di estrazione dei commenti, che i sistemi [[Perl]] Plain Old Documentation o [[Java (linguaggio di programmazione)|Java]] [[Javadoc]], siano "strumenti per il literate programming". Tuttavia, poiché questi strumenti non implementano la "rete di concetti astratti" che si nasconde dietro il sistema di macro in linguaggio naturale, o forniscono la capacità di cambiare l'ordine del codice sorgente da una sequenza imposta dalla macchina in una comoda per la mente umana, non possono essere correttamente chiamati strumenti di literate programming nel senso inteso da Knuth.<ref name="MJD2000">{{Cita web|url=https://www.perl.com/pub/tchrist/litprog.html/|titolo=POD is not Literate Programming|utoreautore=Mark Jason Dominus|sito=Perl.com|data=20 marzo 2000|urlarchivio=https://web.archive.org/web/20090102151452/http://www.perl.com/pub/a/tchrist/litprog.html|dataarchivio=2 gennaio 2009|urlmorto=no}}</ref><ref>{{Cita|Knuth}}. {{Citazione|I chose the name WEB partly because it was one of the few three-letter words of English that hadn't already been applied to computers. But as time went on, I've become extremely pleased with the name, because I think that a complex piece of software is, indeed, best regarded as a web that has been delicately pieced together from simple materials. We understand a complicated system by understanding its simple parts, and by understanding the simple relations between those parts and their immediate neighbors. If we express a program as a web of ideas, we can emphasize its structural properties in a natural and satisfying way.}}</ref>
 
=== Critica ===