Wie schreibe ich eine Skriptsprache mit C? Irgendeine Idee? Links?
Meinst du, wie man eine Sprache schreibt, die in C interpretiert wird?
Wenn ja, sollten Sie Wikipedia und andere Quellen zu folgenden Themen überprüfen:
Es ist viel mehr Arbeit, als Sie vielleicht denken ... Viel Spaß beim Lesen!
Sie können sich das Buch "Die UNIX-Programmierumgebung" ansehen
Am Ende des Buches, und so ziemlich das letzte Kapitel, schrieben die Autoren Schritt für Schritt einen kleinen Interpreter in C mit genügend und detaillierten Informationen. Sehr interessant und sehr einfach zu folgen.
Der Quellcode dieses Interpreters ist hier
Warum nicht den C-Code für eine (einfache) Skriptsprache betrachten? Vielleicht Lua? ( Link ) )
Vielleicht sollten Sie auch etwas über Parser-Generatoren lesen, die der erste Baustein sind, den Ihr Programm interpretieren kann Sprache. Der zweite Block soll tatsächlich tun, was geparst wurde (manchmal kann man das in den Parser integrieren, es können Callback-Funktionen bei jedem Token / jeder Struktur analysiert werden). Einfache Beispiele wie das Parsen und Ausführen mathematischer Formeln könnten helfen.
Es gibt ein gutes, wenn auch altes, Buch namens "Sprachprogramme für kleine Sprachen erstellen" Sprachen ", mit denen Sie beginnen können. Es ist sehr pragmatisch und erklärt die verschiedenen Möglichkeiten, die Sie haben, wenn Ihre Bedürfnisse komplexer werden.
Darüber hinaus werden Sie im Wesentlichen ein oder zwei Bücher über Compiler und Interpreter recherchieren wollen. Wenn Sie einen Pfad mit niedrigerem Widerstand suchen und dies zum Verstehen von Konzepten und nicht für eine Klasse oder Arbeitsprojekte tun, sollten Sie sich eine Alternative zu C wie Lisp oder Scheme ansehen, die den Aufbau erleichtert an kleinen Experimenten. Oder lernen Sie DSLs in Sprachen zu entwickeln, die das einfacher machen (Boo, Groovy).
Mein Rat wäre, mit einem Recursive Descent Parser zu beginnen.
Wenn dir dieses Zeug gefällt, solltest du definitiv eine Kopie des Drachenbuchs bekommen.