Comment obtenir l'interpréteur Lisp EMACS utiliser le dialecte Schéma de LISP. Je vais au-dessus du SICP book et suis nouveau à EMACS (juste fini d'apprendre les commandes de navigation et d'accès de dossier)?Dialecte de Lisp dans Emacs
Répondre
Vous ne le faites pas, du moins pas directement. Ce que les gens font généralement est de générer un processus de schéma et de communiquer directement avec cela.
Voir la documentation external-lisp pour savoir comment faire cela, ainsi que le Emacs Wiki page for Scheme. Ok, j'avais un peu tort, il semble que quelques personnes aient écrit des interprétations Scheme sur Emacs Lisp (voir le lien Wiki ci-dessus), même si elles ne sont pas des fonctionnalités complètes.
Ce n'est pas le cas. GNU Emacs LISP est intégré dans GNU Emacs, et une grande partie de GNU Emacs est écrite dans GNU Emacs LISP. Vous ne pouvez pas changer l'interpréteur LISP intégré sans casser massivement Emacs. GNU/MIT Scheme inclut l'éditeur Edwin, un éditeur de type Emacs écrit dans Scheme. Vous pourriez peut-être utiliser cela à la place de GNU Emacs.
La recommandation de l'autre gars de générer un processus de schéma et de communiquer avec cela semble être la meilleure idée.
Pour utiliser SICP, vous devez utiliser un interpréteur de schéma externe car Emacs Lisp est différent de Scheme et aucune implémentation correcte du schéma n'a été créée au-dessus d'Emacs Lisp. Une autre raison pour laquelle vous devez utiliser un interpréteur de schéma externe est la rapidité d'exécution.
La solution simple consiste à utiliser PLT Scheme maintenant appelé Racket:
Télécharger et installer système à partir du site Racket.
configurer la variable
scheme-program-name
à la valeurmzscheme
Enfin exécutez la commande
run-scheme
: il fonctionnera mzscheme processus dans un tampon*scheme*
.
Le tampon *scheme*
utiliser le mode majeur inferior-scheme-mode
qui définit les touches suivantes:
CcCk-système de compilation fichier
CcCl-load-plan fichier
C-xC-e schéma-send-dernière sexp
schéma-envoyer définition C-M-x
réponse de Jérôme est un bon moyen simple pour commencer.Si vous envisagez de travailler sur des exercices plus longs dans SICP, je suggère fortement d'installer Quack, qui est un paquet Emacs qui fournit de nombreuses fonctionnalités utiles pour le formatage, la modification et l'exécution du code de schéma. C'est la norme de facto.
Vous devrez toujours installer votre dialecte préféré de Scheme (je suggère également Racket ici) indépendamment, puis utiliser Emacs pour communiquer avec lui. Pour plus d'informations sur la configuration et l'utilisation d'Emacs, consultez la page suivante: http://www.microsoft.com/france/security/modules/documents/Emacs.html.
je l'ai trouvé était plus facile à utiliser système MIT Emacs avec l'exécution système M-x - instructions pour cette mise en place sont ici:
http://praveen.kumar.in/2011/03/06/gnu-emacs-and-mit-scheme-on-mac-os-x/
- 1. PPRINT dans Emacs Lisp?
- 2. replace-char dans Emacs Lisp?
- 3. Emacs Lisp search-backward
- 4. strtotime pour Emacs Lisp
- 5. Emacs Lisp coloration syntaxique
- 6. Utilisation correcte de apply dans Emacs Lisp?
- 7. Emacs Lisp: évaluer la variable dans alist
- 8. Dates et heures dans Emacs Lisp
- 9. Habillage d'une fonction quotée dans emacs-lisp
- 10. envelopper une fonction dans emacs lisp
- 11. Emacs Lisp - ouverture de la nouvelle fenêtre
- 12. Emacs bibliothèque lisp pour les formulaires d'entrée?
- 13. Rupture d'un programme Emacs Lisp en cours
- 14. Télécharger un fichier avec Emacs Lisp
- 15. Trier par ordre naturel pour Emacs Lisp
- 16. Habillage d'un texte de largeur variable dans Emacs Lisp
- 17. Quel est l'équivalent de foldr, foldl dans Emacs Lisp?
- 18. emacs lisp skip-syntax-forward aide
- 19. Puis-je utiliser facilement Lisp sans Emacs?
- 20. Quel est votre Lisp Emacs recommandé?
- 21. Quel dialecte de LISP est écrit «Paradigmes de programmation d'intelligence artificielle»?
- 22. Comment vérifier si une chaîne est vide dans Emacs Lisp?
- 23. Comment créer une fonction temporaire dans Emacs Lisp
- 24. Dans Emacs Lisp, comment vérifier si une variable est définie?
- 25. Comment obtenir le texte sélectionné dans Emacs Lisp?
- 26. eval lors de l'expansion de la macro lisp emacs
- 27. Problème avec les arguments du processus de shell Lisp emacs
- 28. Comment réparer un chemin de répertoire Lisp brisé pour Emacs?
- 29. Dans Emacs pouvez-vous évaluer une expression Emacs Lisp et le remplacer par le résultat?
- 30. En Lisp (Clojure, Emacs Lisp), quelle est la différence entre une liste et une citation?
Que voulez-vous dire? Voulez-vous dire courir un interprète de régime dans Emacs? Ou Voulez-vous dire utiliser Scheme pour contrôler Emacs? Le premier est facile, le second ne l'est pas. –