Wie bekomme ich den EMACS-Lisp-Interpreter den Scheme-Dialekt von LISP. Ich gehe über die SICP book und bin neu in EMACS (gerade fertig mit dem Lernen der Navigations-und Dateizugriffsbefehle)?Schema-Dialekt von Lisp in Emacs
Antwort
Sie nicht, zumindest nicht direkt. Was Leute im Allgemeinen tun, ist ein Schema-Prozess zu spawnen und direkt damit zu kommunizieren.
Siehe external-lisp Dokumentation nach, wie das zu tun, sowie die Emacs Wiki page for Scheme.
Ok, ich war ein bisschen falsch, es sieht so aus, als ob ein paar Leute Scheme-Interpreter auf Emacs Lisp geschrieben haben (siehe den obigen Wiki-Link), obwohl sie nicht vollständig vorprogrammiert sind.
Sie nicht. GNU Emacs LISP ist in GNU Emacs integriert, und ein großer Teil von GNU Emacs ist in GNU Emacs LISP geschrieben. Sie können den integrierten LISP-Interpreter nicht ändern, ohne Emacs massiv zu unterbrechen.
GNU/MIT Scheme enthält den Edwin-Editor, einen Emacs-ähnlichen Editor, der in Scheme geschrieben wurde. Möglicherweise können Sie das anstelle von GNU Emacs verwenden.
Die Empfehlung des anderen Typen, einen Schema-Prozess zu spawnen und damit zu kommunizieren, scheint die bessere Idee zu sein.
Um SICP zu tun, sollten Sie einen externen Schema-Interpreter verwenden, da sich Emacs Lisp von Schema unterscheidet und keine korrekte Implementierung des Schemas über Emacs Lisp erstellt wurde. Ein anderer Grund, warum Sie einen externen Schema-Interpreter verwenden sollten, ist die Geschwindigkeit der Ausführung.
Die einfache Lösung ist jetzt PLT Scheme Racket genannt zu verwenden:
Herunterladen und Installieren Schema von Racket-Website.
konfigurieren Sie dann die Variable
scheme-program-name
auf den Wertmzscheme
schließlich den Befehl ausführen
run-scheme
: es wird MzScheme Prozess in einen*scheme*
Puffer laufen.
Der *scheme*
Puffer den inferior-scheme-mode
Hauptmodus verwenden, der die folgenden Tasten definiert:
CcCk scheme-Kompilierung Datei
CcCl scheme-last- Datei
C-xC-e Schema-send-last-sexp
C-M-x Schema-send-Definition
Jerome Antwort ist ein guter, einfacher Weg, um loszuzulegen.Wenn Sie vorhaben, längere SICP-Übungen durchzuführen, empfehlen wir dringend die Installation von Quack, einem Emacs-Paket, das viele nützliche Funktionen zum Formatieren, Bearbeiten und Ausführen von Programmcode bietet. Es ist der De-facto-Standard.
Sie müssen Ihren bevorzugten Dialekt von Schema (ich empfehle auch hier Racket) unabhängig installieren, und dann Emacs verwenden, um mit ihm zu kommunizieren.
This page und this other page können Sie mit einigen anderen Ressourcen für die Einrichtung und Verwendung von Emacs für diesen Zweck helfen.
Ich fand es war am einfachsten MIT Schema in Emacs mit M-x Laufschema zu verwenden - Anweisungen für das hier einrichten:
http://praveen.kumar.in/2011/03/06/gnu-emacs-and-mit-scheme-on-mac-os-x/
- 1. In Emacs kopieren Lisp
- 2. PPRINT in Emacs Lisp?
- 3. Was bedeutet # [...] in emacs-lisp?
- 4. Emacs Lisp Char-Tabelle
- 5. Fehlerbehebung für Emacs und Emacs Lisp
- 6. Debug Emacs Lisp Hauptmodus
- 7. Emacs Lisp - neues Fenster öffnen
- 8. Tipps zum Profilieren von Fehlverhalten Emacs Lisp?
- 9. Registrieren von click events für emacs lisp
- 10. emacs Lisp-Bibliothek für Eingabeformulare?
- 11. Daten und Zeiten in Emacs Lisp
- 12. Überschreiben einer Funktion in Emacs Lisp
- 13. Emacs Lisp: Variable in Alist bewerten
- 14. Eine zitierte Funktion in Emacs-Lisp
- 15. Richtige Anwendung in Emacs Lisp anwenden?
- 16. wrap eine funktion in emacs lisp
- 17. Was bedeutet^L in (Emacs Lisp) Quellcode?
- 18. awk '{print $ 2, ",", $ 1}' in Emacs Lisp?
- 19. nest backquote und `in emacs lisp
- 20. Welche Shell-Befehl in Emacs lisp?
- 21. extrahieren/Slice/reorder-Listen in (Emacs) Lisp?
- 22. Serialisieren eines Emacs-Lisp-Hashs in Datei
- 23. Struct Unterschied zwischen gemeinsamen Lisp und Emacs lisp
- 24. Emacs-Lisp: Wie man emacs-lisp Programm als PC-Anwendung verpackt?
- 25. Was ist das Äquivalent von foldr, foldl in Emacs Lisp?
- 26. Schreiben von Emacs-Erweiterungen in anderen Sprachen als Lisp
- 27. Hilfe schreiben Emacs Lisp für Emacs Etags Suche
- 28. kontinuierlich eine Emacs-Lisp-Funktion ausführen
- 29. Kann ich Lisp ohne Emacs problemlos verwenden?
- 30. Emacs/Common Lisp: Zitat Variable Wert
Was meinen Sie? Meinst du, in Emacs einen Dolmetscher zu leiten? Oder meinst du mit Scheme, um Emacs zu kontrollieren? Der erste ist einfach, der zweite nicht. –