https://de.wikipedia.org/w/index.php?action=history&feed=atom&title=Literate_Programming Literate Programming - Versionsgeschichte 2025-05-21T21:25:55Z Versionsgeschichte dieser Seite in Wikipedia MediaWiki 1.45.0-wmf.1 https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=240153832&oldid=prev Mosmas: /* Eigenschaften eines Literate-Programming-Systems */Satzbau 2023-12-13T16:08:31Z <p><span class="autocomment">Eigenschaften eines Literate-Programming-Systems: </span>Satzbau</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 13. Dezember 2023, 18:08 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 13:</td> <td colspan="2" class="diff-lineno">Zeile 13:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div># Quellcode und Kommentare können miteinander gemischt werden.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div># Quellcode und Kommentare können miteinander gemischt werden.</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div># Die Quellcode-Abschnitte können in beliebiger Reihenfolge angeordnet werden. Das Literate-Programming-System setzt sie automatisch in der Reihenfolge zusammen, so dass sie ausgeführt werden können (''tangle'').</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div># Die Quellcode-Abschnitte können in beliebiger Reihenfolge angeordnet werden. Das Literate-Programming-System setzt sie automatisch in der<ins style="font-weight: bold; text-decoration: none;"> richtigen</ins> Reihenfolge zusammen, so dass sie ausgeführt werden können (''tangle'').</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div># Aus Programm und Beschreibung kann automatisch eine lesbare Dokumentation mit Inhaltsverzeichnis, Verweisen, Registern etc. erstellt werden (''weave'').</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div># Aus Programm und Beschreibung kann automatisch eine lesbare Dokumentation mit Inhaltsverzeichnis, Verweisen, Registern etc. erstellt werden (''weave'').</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> </table> Mosmas https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=240126687&oldid=prev Paintdog: Paintdog verschob die Seite Beschriebenes Programmieren nach Literate Programming: Für den anderen Begriff liefert Google nur den WP-Artikel; Eindeutschung in der Informatik nicht üblich; Begriffsbildung ist nicht gewünscht 2023-12-12T18:00:29Z <p>Paintdog verschob die Seite <a href="/w/index.php?title=Beschriebenes_Programmieren&amp;action=edit&amp;redlink=1" class="new" title="Beschriebenes Programmieren (Seite nicht vorhanden)">Beschriebenes Programmieren</a> nach <a href="/wiki/Literate_Programming" title="Literate Programming">Literate Programming</a>: Für den anderen Begriff liefert Google nur den WP-Artikel; Eindeutschung in der Informatik nicht üblich; Begriffsbildung ist nicht gewünscht</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <tr class="diff-title" lang="de"> <td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">Version vom 12. Dezember 2023, 20:00 Uhr</td> </tr><tr><td colspan="2" class="diff-notice" lang="de"><div class="mw-diff-empty">(kein Unterschied)</div> </td></tr></table> Paintdog https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=240126645&oldid=prev Paintdog: Änderungen von Jakob5 (Diskussion) auf die letzte Version von ElLutzo zurückgesetzt 2023-12-12T17:59:18Z <p>Änderungen von <a href="/wiki/Spezial:Beitr%C3%A4ge/Jakob5" title="Spezial:Beiträge/Jakob5">Jakob5</a> (<a href="/wiki/Benutzer_Diskussion:Jakob5" title="Benutzer Diskussion:Jakob5">Diskussion</a>) auf die letzte Version von <a href="/wiki/Benutzer:ElLutzo" title="Benutzer:ElLutzo">ElLutzo</a> zurückgesetzt</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 12. Dezember 2023, 19:59 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 1:</td> <td colspan="2" class="diff-lineno">Zeile 1:</td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Mit<del style="font-weight: bold; text-decoration: none;"> Beschriebenes Programmieren (engl.</del> {{lang|en|'''literate programming'''}}, näherungsweise mit ''literarisches Programmieren'' übersetzbar) bezeichnet man das Schreiben von [[Computerprogramm]]en in einer Form, so dass sie vor allem für Menschen lesbar sind.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Mit {{lang|en|'''literate programming'''}}<ins style="font-weight: bold; text-decoration: none;"> (engl.</ins>, näherungsweise mit ''literarisches Programmieren'' übersetzbar) bezeichnet man das Schreiben von [[Computerprogramm]]en in einer Form, so dass sie vor allem für Menschen lesbar sind.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Beschriebenes</del> <del style="font-weight: bold; text-decoration: none;">Programmieren</del> bedeutet technisch gesehen, dass sowohl die [[Dokumentation]] als auch der [[Quelltext]] des Programms in einer gemeinsamen [[Datei]] vorhanden sind. Spezielle Werkzeuge sorgen dafür, dass sowohl der Quelltext als auch die Dokumentation aus dieser Datei extrahiert werden können. Da die für den Menschen geschriebene Dokumentation im Vordergrund steht, ist die Reihenfolge der Programmausdrücke so ausgelegt, dass diese verständlich dokumentiert werden können.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Literate</ins> <ins style="font-weight: bold; text-decoration: none;">programming</ins> bedeutet technisch gesehen, dass sowohl die [[Dokumentation]] als auch der [[Quelltext]] des Programms in einer gemeinsamen [[Datei]] vorhanden sind. Spezielle Werkzeuge sorgen dafür, dass sowohl der Quelltext als auch die Dokumentation aus dieser Datei extrahiert werden können. Da die für den Menschen geschriebene Dokumentation im Vordergrund steht, ist die Reihenfolge der Programmausdrücke so ausgelegt, dass diese verständlich dokumentiert werden können.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Motivation ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Motivation ==</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 7:</td> <td colspan="2" class="diff-lineno">Zeile 7:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Geschichte ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Geschichte ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die angesprochene Problematik wurde jedoch schon früher erkannt: Die erste Programmierumgebung, die <del style="font-weight: bold; text-decoration: none;">beschriebenes</del> <del style="font-weight: bold; text-decoration: none;">Programmieren</del> unterstützte, war das von [[Donald Knuth]] entwickelte [[WEB (Programmiersprache)|WEB]]. 1981 für die Implementierung des [[TeX]]-Systems entwickelt, benutzte es [[Pascal (Programmiersprache)|Pascal]] als Programmiersprache und TeX als Dokumentationsgenerator.&lt;ref&gt;Der Quellcode von TeX wurde in ''TeX: The program'' von Donald Knuth veröffentlicht&lt;/ref&gt; Nachfolger von WEB war [[CWEB]], welches [[C (Programmiersprache)|C]] als Grundlage benutzte.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die angesprochene Problematik wurde jedoch schon früher erkannt: Die erste Programmierumgebung, die <ins style="font-weight: bold; text-decoration: none;">literate</ins> <ins style="font-weight: bold; text-decoration: none;">programming</ins> unterstützte, war das von [[Donald Knuth]] entwickelte [[WEB (Programmiersprache)|WEB]]. 1981 für die Implementierung des [[TeX]]-Systems entwickelt, benutzte es [[Pascal (Programmiersprache)|Pascal]] als Programmiersprache und TeX als Dokumentationsgenerator.&lt;ref&gt;Der Quellcode von TeX wurde in ''TeX: The program'' von Donald Knuth veröffentlicht&lt;/ref&gt; Nachfolger von WEB war [[CWEB]], welches [[C (Programmiersprache)|C]] als Grundlage benutzte.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Eigenschaften eines Literate-Programming-Systems ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Eigenschaften eines Literate-Programming-Systems ==</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 23:</td> <td colspan="2" class="diff-lineno">Zeile 23:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Spezielle Programmiersprachen ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Spezielle Programmiersprachen ===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die Programmiersprache [[Haskell (Programmiersprache)|Haskell]] erlaubt <del style="font-weight: bold; text-decoration: none;">beschriebenes</del> <del style="font-weight: bold; text-decoration: none;">Programmieren</del> bereits auf Quelltextebene: Kommentare und Programmanweisungen können beliebig gemischt werden. Im Gegensatz zu anderen Programmiersprachen wird bei dieser Strategie der Quelltext speziell markiert – und nicht die dazugehörigen Kommentare. Eine Umordnung ist jedoch auch hier nicht möglich.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die Programmiersprache [[Haskell (Programmiersprache)|Haskell]] erlaubt <ins style="font-weight: bold; text-decoration: none;">Literate</ins> <ins style="font-weight: bold; text-decoration: none;">Programming</ins> bereits auf Quelltextebene: Kommentare und Programmanweisungen können beliebig gemischt werden. Im Gegensatz zu anderen Programmiersprachen wird bei dieser Strategie der Quelltext speziell markiert – und nicht die dazugehörigen Kommentare. Eine Umordnung ist jedoch auch hier nicht möglich.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Generelle Textsatzsysteme ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Generelle Textsatzsysteme ===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Durch geeignetes Verschränken von Quellcode und Kommentar kann man bei Einsatz geeigneter [[Textsatzsystem]]e <del style="font-weight: bold; text-decoration: none;">Beschriebenes</del> <del style="font-weight: bold; text-decoration: none;">Programmieren</del> erreichen. So kann man zum Beispiel C-Quellcode so schreiben, dass er mit dem C-Compiler zu einem Programm kompiliert werden kann, aber mit [[troff]]/[[groff]] daraus auch ein Postscript-Dokument mit Grafiken erzeugt werden kann. Dabei sind gegenüber „echten“ Literate-Programming-Tools einige Einschränkungen in der Funktionalität in Kauf zu nehmen, da eine spezielle Software mehr Möglichkeiten anbieten kann als generelle Textsatzsysteme.&lt;ref&gt;[http://www.first.in-berlin.de/software/tools/multiple/ Beispiel für Einsatz von troff/groff für <del style="font-weight: bold; text-decoration: none;">Beschriebenes</del> <del style="font-weight: bold; text-decoration: none;">Programmieren</del>]&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Durch geeignetes Verschränken von Quellcode und Kommentar kann man bei Einsatz geeigneter [[Textsatzsystem]]e <ins style="font-weight: bold; text-decoration: none;">Literate</ins> <ins style="font-weight: bold; text-decoration: none;">Programming</ins> erreichen. So kann man zum Beispiel C-Quellcode so schreiben, dass er mit dem C-Compiler zu einem Programm kompiliert werden kann, aber mit [[troff]]/[[groff]] daraus auch ein Postscript-Dokument mit Grafiken erzeugt werden kann. Dabei sind gegenüber „echten“ Literate-Programming-Tools einige Einschränkungen in der Funktionalität in Kauf zu nehmen, da eine spezielle Software mehr Möglichkeiten anbieten kann als generelle Textsatzsysteme.&lt;ref&gt;[http://www.first.in-berlin.de/software/tools/multiple/ Beispiel für Einsatz von troff/groff für <ins style="font-weight: bold; text-decoration: none;">Literate</ins> <ins style="font-weight: bold; text-decoration: none;">Programming</ins>]&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Programming by Intention ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Programming by Intention ===</div></td> </tr> </table> Paintdog https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=240119095&oldid=prev Jakob5: /* Geschichte */ 2023-12-12T13:27:56Z <p><span class="autocomment">Geschichte</span></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 12. Dezember 2023, 15:27 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 7:</td> <td colspan="2" class="diff-lineno">Zeile 7:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Geschichte ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Geschichte ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die angesprochene Problematik wurde jedoch schon früher erkannt: Die erste Programmierumgebung, die <del style="font-weight: bold; text-decoration: none;">veschriebenes</del> Programmieren unterstützte, war das von [[Donald Knuth]] entwickelte [[WEB (Programmiersprache)|WEB]]. 1981 für die Implementierung des [[TeX]]-Systems entwickelt, benutzte es [[Pascal (Programmiersprache)|Pascal]] als Programmiersprache und TeX als Dokumentationsgenerator.&lt;ref&gt;Der Quellcode von TeX wurde in ''TeX: The program'' von Donald Knuth veröffentlicht&lt;/ref&gt; Nachfolger von WEB war [[CWEB]], welches [[C (Programmiersprache)|C]] als Grundlage benutzte.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die angesprochene Problematik wurde jedoch schon früher erkannt: Die erste Programmierumgebung, die <ins style="font-weight: bold; text-decoration: none;">beschriebenes</ins> Programmieren unterstützte, war das von [[Donald Knuth]] entwickelte [[WEB (Programmiersprache)|WEB]]. 1981 für die Implementierung des [[TeX]]-Systems entwickelt, benutzte es [[Pascal (Programmiersprache)|Pascal]] als Programmiersprache und TeX als Dokumentationsgenerator.&lt;ref&gt;Der Quellcode von TeX wurde in ''TeX: The program'' von Donald Knuth veröffentlicht&lt;/ref&gt; Nachfolger von WEB war [[CWEB]], welches [[C (Programmiersprache)|C]] als Grundlage benutzte.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Eigenschaften eines Literate-Programming-Systems ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Eigenschaften eines Literate-Programming-Systems ==</div></td> </tr> </table> Jakob5 https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=240118894&oldid=prev Jakob5: Übersetzung 2023-12-12T13:19:27Z <p>Übersetzung</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 12. Dezember 2023, 15:19 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 1:</td> <td colspan="2" class="diff-lineno">Zeile 1:</td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Mit {{lang|en|'''literate programming'''}}<del style="font-weight: bold; text-decoration: none;"> (engl.</del>, näherungsweise mit ''literarisches Programmieren'' übersetzbar) bezeichnet man das Schreiben von [[Computerprogramm]]en in einer Form, so dass sie vor allem für Menschen lesbar sind.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Mit<ins style="font-weight: bold; text-decoration: none;"> Beschriebenes Programmieren (engl.</ins> {{lang|en|'''literate programming'''}}, näherungsweise mit ''literarisches Programmieren'' übersetzbar) bezeichnet man das Schreiben von [[Computerprogramm]]en in einer Form, so dass sie vor allem für Menschen lesbar sind.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;">Literate</del> <del style="font-weight: bold; text-decoration: none;">programming</del> bedeutet technisch gesehen, dass sowohl die [[Dokumentation]] als auch der [[Quelltext]] des Programms in einer gemeinsamen [[Datei]] vorhanden sind. Spezielle Werkzeuge sorgen dafür, dass sowohl der Quelltext als auch die Dokumentation aus dieser Datei extrahiert werden können. Da die für den Menschen geschriebene Dokumentation im Vordergrund steht, ist die Reihenfolge der Programmausdrücke so ausgelegt, dass diese verständlich dokumentiert werden können.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Beschriebenes</ins> <ins style="font-weight: bold; text-decoration: none;">Programmieren</ins> bedeutet technisch gesehen, dass sowohl die [[Dokumentation]] als auch der [[Quelltext]] des Programms in einer gemeinsamen [[Datei]] vorhanden sind. Spezielle Werkzeuge sorgen dafür, dass sowohl der Quelltext als auch die Dokumentation aus dieser Datei extrahiert werden können. Da die für den Menschen geschriebene Dokumentation im Vordergrund steht, ist die Reihenfolge der Programmausdrücke so ausgelegt, dass diese verständlich dokumentiert werden können.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Motivation ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Motivation ==</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 7:</td> <td colspan="2" class="diff-lineno">Zeile 7:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Geschichte ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Geschichte ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die angesprochene Problematik wurde jedoch schon früher erkannt: Die erste Programmierumgebung, die <del style="font-weight: bold; text-decoration: none;">literate</del> <del style="font-weight: bold; text-decoration: none;">programming</del> unterstützte, war das von [[Donald Knuth]] entwickelte [[WEB (Programmiersprache)|WEB]]. 1981 für die Implementierung des [[TeX]]-Systems entwickelt, benutzte es [[Pascal (Programmiersprache)|Pascal]] als Programmiersprache und TeX als Dokumentationsgenerator.&lt;ref&gt;Der Quellcode von TeX wurde in ''TeX: The program'' von Donald Knuth veröffentlicht&lt;/ref&gt; Nachfolger von WEB war [[CWEB]], welches [[C (Programmiersprache)|C]] als Grundlage benutzte.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die angesprochene Problematik wurde jedoch schon früher erkannt: Die erste Programmierumgebung, die <ins style="font-weight: bold; text-decoration: none;">veschriebenes</ins> <ins style="font-weight: bold; text-decoration: none;">Programmieren</ins> unterstützte, war das von [[Donald Knuth]] entwickelte [[WEB (Programmiersprache)|WEB]]. 1981 für die Implementierung des [[TeX]]-Systems entwickelt, benutzte es [[Pascal (Programmiersprache)|Pascal]] als Programmiersprache und TeX als Dokumentationsgenerator.&lt;ref&gt;Der Quellcode von TeX wurde in ''TeX: The program'' von Donald Knuth veröffentlicht&lt;/ref&gt; Nachfolger von WEB war [[CWEB]], welches [[C (Programmiersprache)|C]] als Grundlage benutzte.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Eigenschaften eines Literate-Programming-Systems ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Eigenschaften eines Literate-Programming-Systems ==</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 23:</td> <td colspan="2" class="diff-lineno">Zeile 23:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Spezielle Programmiersprachen ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Spezielle Programmiersprachen ===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die Programmiersprache [[Haskell (Programmiersprache)|Haskell]] erlaubt <del style="font-weight: bold; text-decoration: none;">Literate</del> <del style="font-weight: bold; text-decoration: none;">Programming</del> bereits auf Quelltextebene: Kommentare und Programmanweisungen können beliebig gemischt werden. Im Gegensatz zu anderen Programmiersprachen wird bei dieser Strategie der Quelltext speziell markiert – und nicht die dazugehörigen Kommentare. Eine Umordnung ist jedoch auch hier nicht möglich.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die Programmiersprache [[Haskell (Programmiersprache)|Haskell]] erlaubt <ins style="font-weight: bold; text-decoration: none;">beschriebenes</ins> <ins style="font-weight: bold; text-decoration: none;">Programmieren</ins> bereits auf Quelltextebene: Kommentare und Programmanweisungen können beliebig gemischt werden. Im Gegensatz zu anderen Programmiersprachen wird bei dieser Strategie der Quelltext speziell markiert – und nicht die dazugehörigen Kommentare. Eine Umordnung ist jedoch auch hier nicht möglich.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Generelle Textsatzsysteme ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Generelle Textsatzsysteme ===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Durch geeignetes Verschränken von Quellcode und Kommentar kann man bei Einsatz geeigneter [[Textsatzsystem]]e <del style="font-weight: bold; text-decoration: none;">Literate</del> <del style="font-weight: bold; text-decoration: none;">Programming</del> erreichen. So kann man zum Beispiel C-Quellcode so schreiben, dass er mit dem C-Compiler zu einem Programm kompiliert werden kann, aber mit [[troff]]/[[groff]] daraus auch ein Postscript-Dokument mit Grafiken erzeugt werden kann. Dabei sind gegenüber „echten“ Literate-Programming-Tools einige Einschränkungen in der Funktionalität in Kauf zu nehmen, da eine spezielle Software mehr Möglichkeiten anbieten kann als generelle Textsatzsysteme.&lt;ref&gt;[http://www.first.in-berlin.de/software/tools/multiple/ Beispiel für Einsatz von troff/groff für <del style="font-weight: bold; text-decoration: none;">Literate</del> <del style="font-weight: bold; text-decoration: none;">Programming</del>]&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Durch geeignetes Verschränken von Quellcode und Kommentar kann man bei Einsatz geeigneter [[Textsatzsystem]]e <ins style="font-weight: bold; text-decoration: none;">Beschriebenes</ins> <ins style="font-weight: bold; text-decoration: none;">Programmieren</ins> erreichen. So kann man zum Beispiel C-Quellcode so schreiben, dass er mit dem C-Compiler zu einem Programm kompiliert werden kann, aber mit [[troff]]/[[groff]] daraus auch ein Postscript-Dokument mit Grafiken erzeugt werden kann. Dabei sind gegenüber „echten“ Literate-Programming-Tools einige Einschränkungen in der Funktionalität in Kauf zu nehmen, da eine spezielle Software mehr Möglichkeiten anbieten kann als generelle Textsatzsysteme.&lt;ref&gt;[http://www.first.in-berlin.de/software/tools/multiple/ Beispiel für Einsatz von troff/groff für <ins style="font-weight: bold; text-decoration: none;">Beschriebenes</ins> <ins style="font-weight: bold; text-decoration: none;">Programmieren</ins>]&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Programming by Intention ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Programming by Intention ===</div></td> </tr> </table> Jakob5 https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=240118774&oldid=prev Jakob5: Jakob5 verschob die Seite Literate programming nach Beschriebenes Programmieren: korrekte Bezeichnung: literate Programming kann man gut und treffend durch "Beschriebenes Programmieren" übersetzen. Nicht: Beschreibendes, da dann das Programmieren selbst beschreibend wäre. Beschrieben bedeutet, das Programmieren selbst ist "beschrieben" 2023-12-12T13:15:57Z <p>Jakob5 verschob die Seite <a href="/wiki/Literate_programming" class="mw-redirect" title="Literate programming">Literate programming</a> nach <a href="/w/index.php?title=Beschriebenes_Programmieren&amp;action=edit&amp;redlink=1" class="new" title="Beschriebenes Programmieren (Seite nicht vorhanden)">Beschriebenes Programmieren</a>: korrekte Bezeichnung: literate Programming kann man gut und treffend durch &quot;Beschriebenes Programmieren&quot; übersetzen. Nicht: Beschreibendes, da dann das Programmieren selbst beschreibend wäre. Beschrieben bedeutet, das Programmieren selbst ist &quot;beschrieben&quot;</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <tr class="diff-title" lang="de"> <td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="1" style="background-color: #fff; color: #202122; text-align: center;">Version vom 12. Dezember 2023, 15:15 Uhr</td> </tr><tr><td colspan="2" class="diff-notice" lang="de"><div class="mw-diff-empty">(kein Unterschied)</div> </td></tr></table> Jakob5 https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=194720083&oldid=prev ElLutzo: /* Programming by Intention */ Link-Fix: http://www.netobjectives.net/files/books/esad/essential-skills-programming-by-intention.pdf 2019-12-07T20:53:38Z <p><span class="autocomment">Programming by Intention: </span> Link-Fix: http://www.netobjectives.net/files/books/esad/essential-skills-programming-by-intention.pdf</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 7. Dezember 2019, 22:53 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 29:</td> <td colspan="2" class="diff-lineno">Zeile 29:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Programming by Intention ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Programming by Intention ===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Programming by Intention (nicht zu verwechseln mit [[Intentionale Programmierung|Intentionaler Programmierung]]) ist ein Konzept der [[Agile Softwareentwicklung|Agilen Softwareentwicklung]], welches besagt, dass bei der Implementierung von Methoden nicht wie üblich Algorithmen implementiert werden, sondern „nur“ Intentionen niedergeschrieben werden. Diese Intentionen entsprechen dann üblicherweise weiteren Hilfsmethoden oder einzeiligen Algorithmen. Damit wird sichergestellt, dass das Programm auch ohne Programmierkenntnisse äußerst einfach zu lesen ist.&lt;ref&gt;[http://www.netobjectives.<del style="font-weight: bold; text-decoration: none;">com</del>/files/essential-skills-programming-by-intention.pdf Programming by Intention, Essential Skills for the Agile Developer] (PDF; 731&amp;nbsp;kB)&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Programming by Intention (nicht zu verwechseln mit [[Intentionale Programmierung|Intentionaler Programmierung]]) ist ein Konzept der [[Agile Softwareentwicklung|Agilen Softwareentwicklung]], welches besagt, dass bei der Implementierung von Methoden nicht wie üblich Algorithmen implementiert werden, sondern „nur“ Intentionen niedergeschrieben werden. Diese Intentionen entsprechen dann üblicherweise weiteren Hilfsmethoden oder einzeiligen Algorithmen. Damit wird sichergestellt, dass das Programm auch ohne Programmierkenntnisse äußerst einfach zu lesen ist.&lt;ref&gt;[http://www.netobjectives.<ins style="font-weight: bold; text-decoration: none;">net</ins>/files<ins style="font-weight: bold; text-decoration: none;">/books/esad</ins>/essential-skills-programming-by-intention.pdf Programming by Intention, Essential Skills for the Agile Developer] (PDF; 731&amp;nbsp;kB)&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Software ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Software ==</div></td> </tr> </table> ElLutzo https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=183704796&oldid=prev Mosmas: /* Spezielle Programmiersprachen */Großschreibung 2018-12-14T16:18:27Z <p><span class="autocomment">Spezielle Programmiersprachen: </span>Großschreibung</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 14. Dezember 2018, 18:18 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 23:</td> <td colspan="2" class="diff-lineno">Zeile 23:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Spezielle Programmiersprachen ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Spezielle Programmiersprachen ===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die Programmiersprache [[Haskell (Programmiersprache)|Haskell]] erlaubt <del style="font-weight: bold; text-decoration: none;">literate</del> <del style="font-weight: bold; text-decoration: none;">programming</del> bereits auf Quelltextebene: Kommentare und Programmanweisungen können beliebig gemischt werden. Im Gegensatz zu anderen Programmiersprachen wird bei dieser Strategie der Quelltext speziell markiert – und nicht die dazugehörigen Kommentare. Eine Umordnung ist jedoch auch hier nicht möglich.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die Programmiersprache [[Haskell (Programmiersprache)|Haskell]] erlaubt <ins style="font-weight: bold; text-decoration: none;">Literate</ins> <ins style="font-weight: bold; text-decoration: none;">Programming</ins> bereits auf Quelltextebene: Kommentare und Programmanweisungen können beliebig gemischt werden. Im Gegensatz zu anderen Programmiersprachen wird bei dieser Strategie der Quelltext speziell markiert – und nicht die dazugehörigen Kommentare. Eine Umordnung ist jedoch auch hier nicht möglich.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Generelle Textsatzsysteme ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Generelle Textsatzsysteme ===</div></td> </tr> </table> Mosmas https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=183704750&oldid=prev Mosmas: /* Eigenschaften eines Literate-Programming-Systems */Großschreibung 2018-12-14T16:16:41Z <p><span class="autocomment">Eigenschaften eines Literate-Programming-Systems: </span>Großschreibung</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 14. Dezember 2018, 18:16 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 10:</td> <td colspan="2" class="diff-lineno">Zeile 10:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Eigenschaften eines Literate-Programming-Systems ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Eigenschaften eines Literate-Programming-Systems ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Ein Literate-Programming-System ermöglicht <del style="font-weight: bold; text-decoration: none;">folgendes</del>:</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Ein Literate-Programming-System ermöglicht <ins style="font-weight: bold; text-decoration: none;">Folgendes</ins>:</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div># Quellcode und Kommentare können miteinander gemischt werden.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div># Quellcode und Kommentare können miteinander gemischt werden.</div></td> </tr> </table> Mosmas https://de.wikipedia.org/w/index.php?title=Literate_Programming&diff=158928528&oldid=prev 78.54.73.72: Typo 2016-10-20T22:10:42Z <p>Typo</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 21. Oktober 2016, 00:10 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 4:</td> <td colspan="2" class="diff-lineno">Zeile 4:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Motivation ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Motivation ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>In ''Communications of the ACM'' fragt 1986 Jon Bentley: {{lang|en|When was the last time you spent a pleasant evening in a comfortable chair, reading a good program?}} (deutsch: „Wann war das letzte Mal, dass <del style="font-weight: bold; text-decoration: none;">sie</del> einen angenehmen Abend in einem bequemen Sessel verbracht haben und dabei ein gutes Programm gelesen haben?“) Der Hintergrund dieser Frage beruht auf der Tatsache, dass zwar so mancher Programmierer hervorragende Arbeit leistet und dementsprechend gute Programme erstellt, dass aber kaum ein Programmierer seine Programme ausreichend dokumentiert.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>In ''Communications of the ACM'' fragt 1986 Jon Bentley: {{lang|en|When was the last time you spent a pleasant evening in a comfortable chair, reading a good program?}} (deutsch:<ins style="font-weight: bold; text-decoration: none;"> </ins> „Wann war das letzte Mal, dass <ins style="font-weight: bold; text-decoration: none;">Sie</ins> einen angenehmen Abend in einem bequemen Sessel verbracht haben und dabei ein gutes Programm gelesen haben?“) Der Hintergrund dieser Frage beruht auf der Tatsache, dass zwar so mancher Programmierer hervorragende Arbeit leistet und dementsprechend gute Programme erstellt, dass aber kaum ein Programmierer seine Programme ausreichend dokumentiert.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Geschichte ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Geschichte ==</div></td> </tr> </table> 78.54.73.72