Webb (programmeringssystem)
Web är ett datorprogrammeringssystem skapat av Donald E. Knuth som den första implementeringen av vad han kallade " litterate programmering ": idén att man skulle kunna skapa mjukvara som litteraturverk , genom att bädda in källkod i beskrivande text, snarare än tvärtom ( som är vanlig praxis i de flesta programmeringsspråk ), i en ordning som är bekväm för exponering för mänskliga läsare, snarare än i den ordning som kompilatorn kräver .
Web består av två sekundära program: TANGLE, som producerar kompilerbar Pascal- kod från källtexterna, och WEAVE, som producerar snyggt formaterad, utskrivbar dokumentation med TeX .
CWEB är en version av webben för programmeringsspråket C , medan noweb är ett separat programmeringsverktyg för läskunnig, som är inspirerat av webben (som återspeglas i namnet) och som är språkagnostiskt .
De viktigaste programmen skrivna i webben är TeX och Metafont . Moderna TeX-distributioner använder ett annat program Web2C för att konvertera webbkälla till C.
Filosofi
Till skillnad från de flesta andra dokumentationsgeneratorer som hänvisar dokumentation till kommentarer, är WEB-metoden att skriva en artikel för att dokumentera framställningen av källkoden. Ungefär som TeX-artiklar är källan indelad i avsnitt enligt dokumentationsflöde. Till exempel, i CWEB, är kodsektioner sömlöst blandade i argumentationsraden.
CWEB
Paradigm | Läskunnig , imperativ ( procedurmässig ), strukturerad |
---|---|
Designad av | Donald Knuth |
Utvecklare | Donald Knuth och Silvio Levy |
Dök först upp | 1987 |
Stabil frisättning | 3,67 / 24 oktober 2006
|
Maskinskrivningsdisciplin | Statisk , svag , manifest , nominell |
OS | Cross-platform (multi-plattform) |
Licens | anpassad fri programvara licens |
Filnamnstillägg | .w |
Hemsida | |
Influerad av | |
WEB , TeX | |
Influenced | |
noweb |
CWEB är ett datorprogrammeringssystem skapat av Donald Knuth och Silvio Levy som en uppföljning av Knuths WEB- lärta programmeringssystem , med programmeringsspråket C (och i mindre utsträckning programmeringsspråken C++ och Java ) istället för Pascal .
Liksom WEB består den av två primära program: CTANGLE, som producerar kompilerbar C-kod från källtexterna, och CWEAVE, som producerar snyggt formaterad utskrivbar dokumentation med TeX .
Funktioner
- Kan ange manuell TeX-kod såväl som automatisk.
- Gör formatering av C-kod för snygg utskrift .
- Kan definiera avsnitt, och kan innehålla dokumentation och koder, som sedan kan inkluderas i andra avsnitt.
- Skriv rubrikkoden och C-huvudkoden i en fil och kan återanvända samma sektioner, och sedan kan den trasslas in i flera filer för kompilering.
- Använd
#line
-pragmor så att eventuella varningar eller fel hänvisar till .w-källan. - Inkludera filer.
- Ändra filer, som automatiskt kan slås samman i koden vid kompilering/utskrift.
- Ger index över identifierare och avsnittsnamn i utskriften.
externa länkar