Literate programming
Da Wikipedia, l'enciclopedia encyclopedia
Il Literate programming è un paradigma di programmazione introdotto da Donald Knuth in cui un programma per computer viene fornito come una spiegazione della sua logica in un linguaggio naturale, come l'inglese, intervallata da frammenti di macro e codice sorgente tradizionale, da cui può essere generato codice sorgente compilabile.[1]
Il paradigma del literate programming, come concepito da Knuth, rappresenta un allontanamento dalla scrittura di programmi per computer nel modo e nell'ordine imposti dal computer, e consente invece ai programmatori di sviluppare programmi nell'ordine richiesto dalla logica e dal flusso dei loro pensieri.[2] I literate programs sono scritti come un'esposizione ininterrotta della logica in un linguaggio umano ordinario, proprio come il testo di un saggio, in cui sono incluse le macro per nascondere le astrazioni e il codice sorgente tradizionale.
Gli strumenti per il literate programming (LP) vengono utilizzati per ottenere due rappresentazioni da un file sorgente literate: uno adatto per ulteriori compilazioni o esecuzioni da un computer, il codice "aggrovigliato" o "tangled" e un altro per la visualizzazione come documentazione formattata, che si dice sia "intessuta" o "woven".[3] Mentre la prima generazione di strumenti di literate programming era specifica per un certo linguaggio di programmazione, i successivi sono indipendenti ed esistono al di sopra di questi.