Laufen Schema von der Befehlszeile aus
Wie führen Sie durch Scheme-Programme aus dem terminal in linux(ubuntu)? Auch, wie zu akzeptieren, die Argumente aus der Kommandozeile in ein Scheme-Programm?
Edit: Im mit die DrScheme Umsetzung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den DrScheme scheme-Implementierung, und der name, den Sie verwenden, um es ausführen von der Befehlszeile aus, ist
mzscheme
. Die Dokumentation für das starten von Kommandozeilen-Skript ist hier zu finden: Unix-Scripts (PLT Scheme Dokumentation). Die Kommandozeilen-Argumente ist hier erklärt: Command-line-Parsing (PLT Scheme Dokumentation).Das Ergebnis ist, dass Sie verwenden können shebang-Skripte wie dieses:
oder wenn Sie möchten mehr Kontrolle über die Kommandozeilen-flags für
mzscheme
, müssen Sie starten Sie das Skript wie dieses:Die Funktion, die Sie verwenden, um die Befehlszeile Prozess args ist
command-line
. Finden Sie Beispiele, wie es in dem verlinkten Artikel vom zweiten link.Es ist nicht standardisiert in der R6RS. Gibt es eine Empfehlung SRFI-22, die einige Dolmetscher unterstützen. Wenn Ihr interpreter nicht unterstützt SRFI-22 dann hängt es von Ihrer Anwendung ab.
Unten ist ein Beispiel aus der SRFI. Es wird davon ausgegangen, dass Dolmetscher ist ein binary namens-Schema-r5rs. Im Grunde ruft es eine Funktion mit dem Namen main mit einem einzigen arg, dass ist eine Liste der Kommandozeilen-Argumente.
Diese Lösung funktioniert bei mir
Den R6RS-Bibliothek definiert eine Funktion namens
command-line
gibt die Liste der Argumente (der ersten wird der name des Programms). Nicht alle Implementationen von Scheme zu implementieren R6RS obwohl; Ihre Umsetzung könnte noch einige andere Funktion für diese.Kommt es auf die Umsetzung der Regelung, die Sie verwenden.