2 votes

Je suis en train de lire SICP et j'essaie de suivre, mais pourquoi les interprètes Lisp que je trouve en ligne échouent-ils avec le mot-clé DEFINE ?

C'est le livre...

http://mitpress.mit.edu/sicp/full-text/book/book.html

Une idée de l'interpréteur que je devrais utiliser pour travailler avec le code présenté ici ?

Jusqu'à présent, j'ai essayé quelques interpréteurs Lisp en ligne et à télécharger et tout ce que j'obtiens, ce sont des erreurs lorsque j'essaie d'utiliser DEFINE.

Ejemplo:

De cette section : http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-10.html#%_sec_1.1

Mettez-le ici : http://www.ugcs.caltech.edu/~rona/tlisp/

> (define (square x) (* x x))
*** EVAL Error: Function 'DEFINE' is not defined. ***

J'ai également essayé avec 'lispbox' avec des résultats similaires.

Ah HA : http://sisc-scheme.org/sisc-online.php fonctionne, merci pour le conseil blabla999, j'accepterai la réponse bientôt.

Après de plus amples recherches : Scheme != Common Lisp

4voto

blabla999 Points 2316

Probablement parce que :

(EQ Scheme CommonLisp) -> #f

et aussi :

(Schéma EQ ManyOtherLisps) -> #f

essayez un vrai schéma (je recommande plt, qui a été renommé en Racket, récemment). (Ou écrivez le vôtre - voir http://www.avc-cvut.cz/avc.php?id=9769 )

1voto

jforberg Points 1089

Il existe un grand nombre de dialectes différents de Lisp, dont Common Lisp est peut-être le plus utilisé aujourd'hui. Scheme, avec lequel vous êtes familier, ne prétend pas être un Lisp, bien qu'il en partage de nombreuses caractéristiques.

Pour ce que ça vaut, ce que vous essayez de faire est écrit

(defun square (x) (* x x))

en Common Lisp.

-1voto

dansalmo Points 3220

Le moyen le plus simple (de loin) que j'ai trouvé pour obtenir un environnement Lisp pour les exemples de SCIP est d'utiliser DrRacket dans Racket, que l'on trouve ici. http://racket-lang.org/

L'environnement DrRacket dispose d'un éditeur et d'un REPL qui prend en charge le copier/coller et l'impression, un peu comme l'outil Python Idle. Il est simple à installer et fonctionne avec tous les exemples du livre et de l'ouvrage. les vidéos .

J'ai trouvé d'autres bons conseils pour apprendre lisp ici : http://www.learningclojure.com/2011/02/advice-to-newbie.html

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X