Hat sich TeX seit Knuth verändert?

Fragen und Probleme, die nicht den obigen Kategorien zugeordnet werden können


tom72
Forum-Anfänger
Forum-Anfänger
Beiträge: 26
Registriert: Di 11. Dez 2012, 19:56

Hat sich TeX seit Knuth verändert?

Beitrag von tom72 »

Hallo,

gibt es Unterschiede zwischen LuaTex, pdfTeX, etc.?
Hat sich TeX seit der ersten Version von Knuth verändert?

Bitte entschuldigt die vielleicht etwas dumme Frage. Aber es interessiert mich einfach. Ich habe eben ein wenig im TeXBook von Knuth gelesen und mich gewundert, daß die Beispiele sich tatsächlich mit LuaTeX übersetzen lassen (sagt man kompiliert? interpretiert?)

Viele Grüße,
Tom

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Beitrag von Stefan Kottwitz »

Hallo Tom,

man sagt compiliert (oder eben übersetzt). Interpretieren wäre zur Laufzeit bzw. Darstellungszeit.

Bei TeX und auch den neuen Engines wird enorm viel Wert auf Rückwärtskompatibilität gelegt. Auch bei LaTeX ist das wichtig und wird eingehalten, was den Kern betrifft. Zusatz-Pakete von unabhängigen Autoren sind schon ein anderer Fall, da gibt es schonmal Inkompatibilitäten (zueinander, wie gleich gewählte Makronamen in verschiedenen Paketen) oder Abhängigkeiten (z.B. in der Ladereihenfolge, wenn ein Paket auf anderen basiert). Gute Zusatzpakete sorgen für eigene Abwärtskompatibilität, wie KOMA-Script und pgfplots, durch identisches Verhalten trotz neuer Features oder Optionen für Versionskompatibilität.

Stefan

tom72
Forum-Anfänger
Forum-Anfänger
Beiträge: 26
Registriert: Di 11. Dez 2012, 19:56

Beitrag von tom72 »

Hallo Stefan,

vielen Dank!
Ich denke, dann werde ich doch noch mehr Zeit in das Buch von Knuth investieren. Mein Problem ist nämlich an vielen Stellen, daß etwas angepasst werden müßte und ich dann die Quellcodes der Pakete nicht wirklich durchschaue.

Würdest du der These zustimmen, daß jemand der LaTeX wirklich beherrschen will auch TeX verstanden haben muß?

Viele Grüße,
Tom

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Beitrag von Stefan Kottwitz »

Zu schwer durchschaubaren Paket-Quellcodes:

Dort wird oft TeX-Syntax verwendet, aus Effizienzgründen, also wegen Geschwindigkeit und Speicher. Wenn man nicht auf Performance Wert legen muss, würde ich immer LaTeX-Syntax empfehlen statt TeX-Befehlen, also insbesondere in den eigenen Dokumenten. Das höhere Abstraktionslevel hat Vorteile in Lesbarkeit, Kompatibilität und Sicherheit. Z.B. prüft LaTeX bei \newcommand, ob das Makro schon existiert, während das TeX-Pendant \def ein bestehendes stillschweigend überschreiben würde. Und LaTeX-Befehle passen zueinander, weil sie konsistent entwickelt wurden und miteinander passend agieren. Ein TeX-Befehl weiß nichts von LaTeX.

Wichtig ist schonmal, die Prinzipien von LaTeX verstanden zu haben, wie z.B. eben nicht Font-Befehle im Dokumentkörper zu verwenden, sondern zu abstrahieren. TeX-Verständnis erleichtert noch mehr, z.B. bei Fehlersuche.

Die These finde ich zu absolut. Ich würde soweit mitgehen, dass Lese-Verständnis von TeX enorm hilft, LaTeX zu verstehen, weil man dann im LaTeX-Kern-Quellcode und in Paket-Quellen einfach nachschauen kann und sehen kann, warum welche Sachen wie gelöst sind, wie etwas funktioniert. In TeX schreiben können, ist weniger wichtig: hat man etwas verstanden, kann man es i.d.R. auch mit LaTeX-Mitteln bearbeiten. Z.B.: sehe ich eine TeX-Definition mit \def in einem Paket, nehme ich gern \renewcommand* oder \renewcommand zur Redefinition, statt geradeaus den \def-Text per copy & paste zu übernehmen und direkt anzupassen. Siehe oben, dann merke ich sofort einen eventuellen Konflikt zu einem genutzten Paket.

Stefan

tom72
Forum-Anfänger
Forum-Anfänger
Beiträge: 26
Registriert: Di 11. Dez 2012, 19:56

Beitrag von tom72 »

Vielen Dank für die ausführliche Erklärung!
Sie bringt mich wieder ein kleines Stückchen weiter.

Viele Grüße,
Tom

guy.brush™
Forum-Century
Forum-Century
Beiträge: 185
Registriert: So 8. Aug 2010, 19:43
Wohnort: Earth

Beitrag von guy.brush™ »

Stefan hat geschrieben:Wichtig ist schonmal, die Prinzipien von LaTeX verstanden zu haben, wie z.B. eben nicht Font-Befehle im Dokumentkörper zu verwenden, sondern zu abstrahieren. TeX-Verständnis erleichtert noch mehr, z.B. bei Fehlersuche.
Entschuldigung, dass ich mich an dieser Stelle einmal einklinke, aber was meinst du mit dieser Aussage und insb. dem Beispiel (Font-Befehle) genau?
Arch Linux - KDE - TeXLive - Kile - \me = Advanced Newbie

Interessensschwerpunkte: Mathematik- und Formelsatz sowie mathematische (Mikro-)Typographie
Offenes Problem: negierte \xarrow-Pfeile beliebiger Länge

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Beitrag von Stefan Kottwitz »

Ich meine, um an einem Beispiel zu bleiben: nicht einfach auf Fettdruck umzuschalten im Text, sondern überlegen warum - und einen Stil dafür definieren. In einem umfangreichen Dokument hunderte \textbf, \large uvm. Befehle wären problematisch bei Änderungen der Auszeichnungswahl (doch lieber italic?) und keine Garantie für konsistentes Durchhalten der Schriftwahlen.

Also lieber z.B. \keyword definieren und das im Text verwenden, und in der Präambel bei \newcommand hierfür \texbf verwenden. Alles konsistent, und wenn es geändert werden soll, ist es ein Klacks an dieser Stelle. Zusätzlich typewriter hinzunehmen? Oder Farbe? Kein Problem. Gleich einen \index-Befehle aufnehmen? Geht auch. Logische Textauszeichnung gibt Dir volle Kontrolle über das Textdesign durch die Präambel.

Stefan

guy.brush™
Forum-Century
Forum-Century
Beiträge: 185
Registriert: So 8. Aug 2010, 19:43
Wohnort: Earth

Beitrag von guy.brush™ »

Ah, ok, dann hatte ich dich doch richtig verstanden :). Ich nutze bspw. fuer neue Begriffe den tollen Befehl \novus, den ich mir gebastelt habe (wollte nicht \emph verwenden) ;). Bei Mathe-Formeln hat es bei manchen Zeichen uebrigens auch so seine Vorteile, dann kann man global das Zeichen wechseln, da oft unterschiedliche Notationen verwendet werden.
Arch Linux - KDE - TeXLive - Kile - \me = Advanced Newbie

Interessensschwerpunkte: Mathematik- und Formelsatz sowie mathematische (Mikro-)Typographie
Offenes Problem: negierte \xarrow-Pfeile beliebiger Länge

Antworten