Wie entwirft man eine Sprache?

Hallo,
ich stehe gerade vor folgender Frage:
Wie entwirft man ordentlich eine Sprache?

Die Sprache soll eine Beschreibungssprache werden, die Datensätze beschreibt in einer Art onfigurationsdatei beschreibt.

Gehe ich beim Entwurf da entsprechend vor wie bei einem DB-Entwurf? Oder macht man das ganz anders?

Vielleicht hat mir jemand auch ein paar weiterführende Links oder Literaturtipps.

Danke
Dirk

Hallo.

[…] Die Sprache soll eine Beschreibungssprache werden, die
Datensätze beschreibt […] Gehe ich beim Entwurf da entsprechend vor
wie bei einem DB-Entwurf? […]

Ja, die Methodik kann man durchaus vergleichen. Bei der Datenbankmodellierung betrachtest Du Entitäten, die Du in Relation zueinander setzen musst. Beim Sprachentwurf überlegst Du Dir analog, welche Eigenschaften der Objekte Du in Deine Sprache integrieren willst. Bei einer Datenbeschreibungssprache sind das z.B. Datenformat, ggf.- Länge, Ausprägungsmöglichkeiten. Schau Dir beispielsweise mal die Property- Eigenschaft im Field- Objekt in Visual Basic an.

Gruß Eillicht zu Vensre

Hallo,
ich stehe gerade vor folgender Frage:
Wie entwirft man ordentlich eine Sprache?

Hallo,

das soll nur eine Anregung zum Weitersuchen und Lesen sein, keine Einführung in die Linguistik.

Gruss Reinhard

Eine Metasprache stellt mir keine Methodiken zum Entwurf bereit, sondern ist lediglich eine Möglichkeit zur Umsetzung. Es geht schließlich ja auch ohne Metasprache…
Was ich suche ist eine methodische Herangehensweise für den Entwurf einer Sprache.

Grüße
Dirk

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Warum, Wozu
Hallo Dirk,

ich stehe gerade vor folgender Frage:
Wie entwirft man ordentlich eine Sprache?

Das ist schon die falsche Frage.

Was ich suche ist eine methodische Herangehensweise für den
Entwurf einer Sprache.

WARUM und WOZU entwerfe ich eine neue Sprache.
Daraus ergibt sich dann die zu verwendende Methodik.

Es bestand mal die Idee eine Programmiersprache zu haben, welche sich (fast) wie ien englischer Text liest, kennt man heute als COBOL.

Dann gab es einen armen Kerl in einer astronomischen Abteileun, welche mit den unterschiedlichsten Computern astronomische Geräte steuern musste. Zudem war er auch noch gezwungen alles selber zu portieren
-> FORTH (eigentlich sollte sie FO U RTH heissen, weil es die vierte Version war, aber das verwendete Dateisystem liess nur 5 Zeichen für den Dateinamen zu).
Übrigens sind FORTH und PostScript eigentlich eng verwandte Sparachen.

Es gab auch einen Ansatz sehr mächtige Operationen, so einfach wie in der Mathematik zu schreiben
-> APL (Zur damaligen Zeit benötigte man aber spezielle Terminals für APL, da APL für Operationen diverse eigene Graphik-Zeichen verwendet).

Dann war da der Professor, welchen seinen Studenten richtiges modulares Programmieren beibringen wollte
-> PASCAL.

Parser benötigt man schon bei jeder Comanndo-Zeile, das ist somit auch schon eine Sprachdefinition.

Und dann war noch die Idee, eine „Sprache für Alles“ zu haben. Dazu konnte damals jeder seine Wünsche anbringen. In einem Gremium wurde dann die eigentlich Sprache entwickelt, was zu einem sehr inkonsistenten Gebilde führte
-> ADA

Auch bei Sprachen, wie bei jeder Entwicklung, muss zuerst ein Ziel vorgegeben werden. Daraus kann man dann die Anforderungen ableiten und die Technologie gibt dann die Wege vor.

MfG Peter(TOO)

1 Like

Mit lex und yacc

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Such mal nach „Compilerbau“ in Google. Zusammen mit „Vorlesung“ oder „Skript“ oder ähnliches, dürftest du bestimmt auf Studien-Unterlagen stoßen…

Ich stehe genau vor diesem Problem…
Hat vielleicht jemand Beispiele für ne einfache Sprache wie z.B. Pascal???

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]