syntax.tex Eine Übersicht



Ähnliche Dokumente
Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel

Professionelle Seminare im Bereich MS-Office

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Zwischenablage (Bilder, Texte,...)

1. Formale Sprachen 1.2 Grammatiken formaler Sprachen

Anleitung über den Umgang mit Schildern

Hilfedatei der Oden$-Börse Stand Juni 2014

Lineare Gleichungssysteme

Stapelverarbeitung Teil 1

Einführung in. Logische Schaltungen

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

AutoTexte und AutoKorrektur unter Outlook verwenden

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

1 topologisches Sortieren

FlowFact Alle Versionen

Der Kalender im ipad

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar ZID Dezentrale Systeme

Mind Mapping am PC. für Präsentationen, Vorträge, Selbstmanagement. von Isolde Kommer, Helmut Reinke. 1. Auflage. Hanser München 1999

Artikel Schnittstelle über CSV

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

Anlegen eines DLRG Accounts

Handbuch für Easy Mail in Leicht Lesen

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

Erstellen von x-y-diagrammen in OpenOffice.calc

Robot Karol für Delphi

trivum Multiroom System Konfigurations- Anleitung Erstellen eines RS232 Protokolls am Bespiel eines Marantz SR7005

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Mediator 9 - Lernprogramm

Programmiersprachen und Übersetzer

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

1. Einführung Erstellung einer Teillieferung Erstellung einer Teilrechnung 6

Einführung in TexMaker

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

TREND SEARCH VISUALISIERUNG. von Ricardo Gantschew btk Berlin Dozent / Till Nagel

Grundbegriffe der Informatik

Windows 7: Neue Funktionen im praktischen Einsatz - Die neue Taskleiste nutzen

Primzahlen und RSA-Verschlüsselung

Wie Sie beliebig viele PINs, die nur aus Ziffern bestehen dürfen, mit einem beliebigen Kennwort verschlüsseln: Schritt 1

1. Einführung. 2. Die Abschlagsdefinition

Professionelle Seminare im Bereich MS-Office

Erstellen einer digitalen Signatur für Adobe-Formulare

Word 2010 Grafiken exakt positionieren

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Anleitung für die Formularbearbeitung

Handbuch ECDL 2003 Basic Modul 6: Präsentation Diagramm auf einer Folie erstellen

Animationen erstellen

Eigene Dokumente, Fotos, Bilder etc. sichern

Enigmail Konfiguration

1 Einleitung. Lernziele. Symbolleiste für den Schnellzugriff anpassen. Notizenseiten drucken. eine Präsentation abwärtskompatibel speichern

Anleitung: Ändern von Seiteninhalten und anlegen eines News Beitrags auf der Homepage des DAV Zorneding

5.2 Neue Projekte erstellen

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

teamsync Kurzanleitung

Aktivierung von Makros in den Erfassungshilfen

Kostenstellen verwalten. Tipps & Tricks

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

Einfügen von Bildern innerhalb eines Beitrages

Erstellen eines Screenshot

Task: Nmap Skripte ausführen

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager -rückläufer Script. combit GmbH Untere Laube Konstanz

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Mehrere PDF-Dokumente zu einem zusammenfügen

Bearbeitungshinweis zu den Profilblätter. Anlage zum Leitfaden

FH-SY Chapter Version 3 - FH-SY.NET - FAQ -

Wie halte ich Ordnung auf meiner Festplatte?

Die Excel Schnittstelle - Pro Pack

Excel Pivot-Tabellen 2010 effektiv

Outlook Erstellen einer aus einer HTML - Vorlage INHALT

ecaros2 - Accountmanager

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

CAQ Software für Ihr Qualitätsmanagement. Ablauf für die Erfassung der Fehler in der Fertigung

Vorbereitung einer Grafik zum Druck einer Glotze aus, Stadion an! -Zaunfahne Torsten Bunde, Stand 5. Juli 2014

Buchhaltung mit WISO EÜR & Kasse 2011

EINFACHES HAUSHALT- KASSABUCH

Visual Basic Express Debugging

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Wie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann.

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

Personalisierte versenden

Einleitung. Hauptteil. Wir befinden uns nun im Demoarchiv.

GEONET Anleitung für Web-Autoren

Drahtlosnetzwerke automatisch konfigurieren mit WCN (Windows Connect Now) unter Windows Vista

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Anwendungsbeispiele Buchhaltung

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

So richten Sie Ihr Postfach im Mail-Programm Apple Mail ein:

Bauteilattribute als Sachdaten anzeigen

Microsoft PowerPoint 2013 Folien gemeinsam nutzen

Menü auf zwei Module verteilt (Joomla 3.4.0)

Im Original veränderbare Word-Dateien

Erstellen einer GoTalk-Auflage

Wir basteln einen Jahreskalender mit MS Excel.

LANiS Mailversender ( Version 1.2 September 2006)

Transkript:

syntax.tex Eine Übersicht Bernd Worsch 7. Juli 1997 Inhaltsverzeichnis 1 Einleitung 1 2 Bevor es funktioniert... 1 3 Grundelemente von syntax.tex 1 4 Strukturelemente von syntax.tex 3 5 Setzen von Syntaxdiagrammen 4 6 Weitere Hinweise 6 7 Kontakt 6 1 Einleitung Zur Beschreibung von Zusammenhängen in formal sprachlichen Systemen, findet häufig die sogenannte Bachus Naur Form kurz BNF Verwendung. Von dieser (textlichen) Darstellung ausgehend wird gerade im Zusammenhang mit höheren Programmiersprachen gerne eine grafische Beschreibung zur Verdeutlichung herangezogen. Solche Syntaxdiagramme sind intuitiv verständlich und verdeutlichen auf anschauliche Weise den formalen Aufbau der jeweiligen Programmiersprache. Das File syntax.tex ermöglicht das einfache Erstellen solcher Diagramme in L A TEX-Dokumenten. Statt mit geometrischen Objekten (Linien, Kreise, etc.) zu arbeiten, nutzt der Anwender dazu Befehle, die schon im Quelldokument die zu illustrierenden Kontrollstrukturen wiederspiegeln. 1

2 Bevor es funktioniert... Um die Möglichkeiten von syntax.tex nutzen zu können muß die Datei vor dem ersten zu setzenden Syntaxdiagramm durch \input{syntax.tex} in das eigene Dokument eingefügt werden. Da es in der vorliegenden Version 0.02 noch auf einen Befehl des Pakets fancybox.sty zurückgreift, muß dieses am Anfang der eigenen Datei aktiviert werden. Wie für alle Pakete geschieht dies durch den Befehl: \usepackage{fancybox}. 3 Grundelemente von syntax.tex Abgesehen von Hilfskonstrukten, insbesondere Linien und Pfeilen, bestehen Syntaxdiagramme aus Terminalsymbolen, den elementaren Grundbausteinen einer Programmiersprache, und Syntaxvariablen. Letztere stehen als Platzhalter für syntaktische Konstruktionen. Beide Grundelemente stehen innerhalb der Umgebung Syntaxdiagramm mit den Befehlen \TerSym und \SynVar zur Verfügung. Die Umgebung Syntaxdiagramm erzeugt zunächst ein leeres Syntaxdiagramm, also einen von links nach rechts verlaufenden Pfeil. An inneren Befehlen stehen unter anderem elementare Teilstrukturen von Syntaxdiagrammen bereit. Einige haben keine Parameter und erzeugen beispielsweise Linien oder Pfeile, \TerSym und \SynVar hingegen erhalten als Parameter einen Text. Da diese Befehle stets innerhalb des umgebenden Pfeils auftreten, wurden in der folgenden Übersicht die inneren Elemente durch Leerzeichen von der äußeren Umgebung abgegrenzt. Diese Zwischenräume sind im endgültigen Diagramm unerwünscht. Befehle und Umgebungen in Syntaxdiagrammen sollten daher mit einem Kommentarzeichen (%) beendet werden, falls Zeilenumbrüche im Eingabetext vorgenommen werden. \begin{syntaxdiagramm} \Linie \PfeilR \PfeilL \Ellipse... \Leer \TerSym{xxxx} xxxx \SynVar{xxxx} xxxx Aus obigen Grundelementen und vertikalen Linien werden alle Syntaxdia- 2

gramme aufgebaut. Die vertikalen Linien und Pfeile sind prinzipiell unter den Namen \LinieO{x},\LinieU{x},\PfeilO{x} und \PfeilU{x} ansprechbar, wobei x die jeweilige Länge festlegt, sie sind jedoch nur intern notwendig. Um die L A TEX Beschreibung eines Syntaxdiagramms kompakt zu halten existieren schließlich noch vier abkürzende Schreibweisen. Es sind die zusammengesetzten Grundelemente: \TerSymR{xxxx} \TerSymL{xxxx} xxxx xxxx \SynVarR{xxxx} xxxx \SynVarL{xxxx} xxxx 4 Strukturelemente von syntax.tex Aus den Grundelementen allein lassen sich noch keine (bzw. sehr wenige) Syntaxdiagramme aufbauen, es fehlt die Möglichkeit diese Elemente zu verbinden. Zu diesem Zweck stellt syntax.tex Alternativen und Wiederholungen bereit. Für beide Strukturen existieren zunächst Befehle, die je zwei Parameter übernehmen. Im Fall des Befehls \Alternative{}{x2} steht für den Teil des Strukturdiagramms der auf dem ersten Pfad, x2 für den Teil der auf dem zweiten Pfad durchlaufen wird. Bei \Wiederholung{}{x2} entspricht dem wiederholten Teil und x2 allem, was im zurücklaufenden Pfad auftritt. Die erzeugten Bilder wieder in einer Tabelle: \Alternative{}{x2} \Wiederholung{}{x2} x2 x2 Für Wiederholungen ist diese Konstruktion ausreichend, bei Alternativen sollten jedoch mehr als zwei Pfade möglich sein, dies wird durch die Umgebung Alternativen realisiert. Sie übernimmt ähnlich obigen Befehlen zwei Parameter. enthält wie gehabt den ersten Pfad, x2 hingegen den letzten der möglichen Pfade. Alle weiteren Pfade werden innerhalb der Umgebung getrennt durch \\ angegeben, also wie in einer einspaltigen \tabular Umgebung, wobei auch auf die letzte Zeile ein abschließendes \\ folgt. 3

\begin{alternativen} {}{x2} x3\\ \end{alternativen} x3 x2 5 Setzen von Syntaxdiagrammen Praktisch geht man nun so vor, daß innerhalb der äußeren Umgebung im einfachsten Fall eine Folge von Syntax Variablen und Terminal Symbolen aufgelistet wird. Hierzu verwendet man die nach rechts gerichteten Varianten. \TerSymR{xx}% \SynVarR{xx}% \TerSymR{xx}% \SynVarR{xx}% xx xx xx xx Etwas anspruchsvoller können Syntax Variablen und Terminal Symbole in Strukturen auftreten. In diesem Fall sorgt die umgebende Struktur für die notwendigen Pfeile, man verwendet also die ungerichteten Befehle \TerSym{} und \SynVar{}: \Wiederholung% {\TerSym{}}% x2 \Alternative% {\TerSym{}}% x2 In der Alternativen Umgebung müßen die inneren Pfade selbst für ihre Pfeile sorgen (hier: Terminal Symbol x3). 4

\begin{alternativen}% {\TerSym{}}% \TerSymR{x3}\\% \end{alternativen}% x3 x2 Schließlich können auch Strukturen beliebig kombiniert und verschachtelt werden: \Alternative% {\Wiederholung% {\TerSym{}}% {\TerSym{}}}% x2 Die vielen Kommentarzeichen (%) in der Eingabe sind nicht an allen Stellen notwendig. Es ist aber in jedem Fall einfacher alle Zeilen mit einem % zu beenden, als jeweils zu überlegen, ob es eventuell weggelassen werden könnte. Sollte ein notwendiges %-Zeichen vergessen werden, so erscheint an entsprechender Stelle im Diagramm ein Leerzeichen. Umgekehrt weisen solche Brüche im Diagramm auf vergessene Kommentarzeichen hin. \TerSymR{xx} \TerSymR{xx} xx xx Sollte ein Syntaxdiagramm zu lang für eine einzelne Zeile werden, so kann ein Teildiagramm zu einer Syntax-Variable zusammengezogen werden und diese in einem weiteren Diagramm aufgeschlüsselt werden. Ist dies nicht erwünscht, so kann die Syntaxdiagramm-Umgebung mit einem optionalen Parameter aufgerufen werden. Der Inhalt des Parameters ersetzt dann als Ende Symbol den abschließenden Pfeil. Verwendet man den Befehl \Dots so kann man das Diagramm mit einem weiteren in der nächsten Zeile fortsetzen. Dieses kann durch eine voranstehendes \quad etwas eingerückt werden. \begin{syntaxdiagramm}[\dots]% \TerSymR{} \quad \TerSymR{x2}... x2 5

Schließlich gibt es den Stapel Befehl der zwei Teile eines Diagramms untereinander setzt und sie durch einen rücklaufenden Pfeil verknüpft. Oft ist das Aufteilen ohne rücklaufenden Pfeil allerdings sowohl einfacher als auch übersichtlicher. \Stapel{\TerSym{}}% {\TerSym{x2}}% x2 6 Weitere Hinweise Einige Konstruktionen erzeugen nur dann Verbindungslinien korrekter Länge, wenn auf den Pfaden Einträge mit der richtigen Höhe bzw. Tiefe auftreten. Im ersten Beispiel zur Umgebung Alternativen ist dies nicht der Fall. In der Datei syntax.tex sind einige Anmerkungen und eine kleine Liste möglicher Erweiterungen. Wer Zeit und Lust hat darf sich gerne austoben und das eine oder andere erledigen. Kritik, Anregungen und eigene Beiträge sind in jedem Fall erwünscht. Vielleicht finde ich bei ausreichendem Interesse sogar die Zeit noch ein wenig an diesem Paket zu basteln. 7 Kontakt -------------------------------------- Bernd Worsch Doberanerstrasse 99 18057 Rostock bernd.worsch@stud.uni-rostock.de email preferred --------------------------biichi-ji--- 6