Am vrut să mă învăț pe Lisp pentru o vreme. Cu toate acestea, toți interpreții despre care am auzit implică o anumită aromă de emacs. Există interpretori de linie de comandă, astfel încât să pot scrie acest lucru în linia de comandă:
lispinterpret sourcefile.lisp
la fel cum pot rula perl sau python.
În timp ce aș vrea să mă familiarizez mai mult cu Emacs (dacă nu numai să nu fiu frustrat când lucrez cu cineva care folosește Emacs), aș prefera să decuplez învățarea Emacs de la învățarea lui Lisp.
Editați: De fapt, vreau să urmez SICP care folosește schema, deci un răspuns despre Schemă ar fi mai util. Nu sunt atât de familiar cu diferențele.
Ați încercat Allegro CL de la http://www.franz.com/ ?
Puteți încerca, de asemenea, DrScheme , care, deși nu este chiar un interpret independent, nu este emacs :)
Este în esență un IDE simplu care are o zonă pentru a tasta în cod care poate fi executat ca un fișier și apoi o altă zonă care este interpretul care se execută cu care puteți interacționa.
(De asemenea, găsiți podcasturile UC Berkeley CS61A și le ascultați, precum și citiți SICP)
Se pare că Steel Bank Common Lisp (SBCL) se ocupă și de ceea ce dorești:
http://www.sbcl.org/manual/#Shebang-scripts
SBCL este atât o rată superioară cât și o sursă deschisă.
@Nathan: Am modificat link-urile Common Lisp, pentru că ați întrebat despre Lisp (mai ales cu referire la Emacs Lisp). Cu toate acestea, Common Lisp este foarte diferit de Schema. Un program scris pentru unul este puțin probabil să ruleze pe cealaltă.
După cum ați menționat, SICP este pentru schema de învățare, nu Lisp (sau cel puțin, nu comun Lisp și nu Emacs Lisp). Există unele suprapuneri în principii, cu toate acestea nu puteți pur și simplu să tăiați și să lipiți codul de la SICP și așteptați ca acesta să ruleze pe orice sistem Common Lisp sau Emacs Lisp. :-)
IDE-ul cel mai folosit pentru Common Lisp, în special în subsetul de software liber al comunității, este, de fapt, SLIME , care rulează pe Emacs. Puteți utiliza orice compilator CL pe care îl preferați și invoca fișierele sursă Lisp așa cum descrieți, dar dacă faceți acest lucru, nu veți profita de multe din caracteristicile dinamice Lisps, care sunt atât de utile în timp ce vă dezvoltați aplicația.
Vă sugerăm să aruncați o privire la acest video demonstrativ SLIME pentru a vedea ce Vreau să spun, chiar dacă ar fi puțin depășit în acest moment.
Dacă problema este că tu (cred că nu) nu-ți place Emacs, eu serios sugerez să încerci să-l înveți. Serios. Nu, într-adevăr, vreau să spun asta. Cu toate acestea, există alternative, cum ar fi IDE-urile furnizate de implementările comerciale Lisp, cum ar fi Allegro și Lispworks (încercări gratuite disponibile) sau un plug-in Eclipse numit Cusp .
Dacă sunteți în căutarea pentru Schema de lucru cu SICP, aruncați o privire la MIT/GNU Scheme
It seems like scheme shell is suitable for your purpose. Take a look at http://www.scsh.net/index.html
Cei mai mulți interpreți de scheme cu care sunt familiarizați pot fi difuzate din linia de comandă. (O mare parte din lista de mai jos este extrasă din tabelul comparativ la Alegerile de implementare a schemelor . Există o listă mai extinsă la schemewiki , dar că pagina nu oferă imediat sintaxă de invocare a liniei de comandă.)
Iată cum executați o serie de implementări la linia de comandă:
Schema Chez : scheme
, petite
Schema MIT : mit-scheme
Schema 48 : scheme48
RScheme : rs
racket
(Dar vă recomand să încercați IDR-ul DrRacket , în special pentru începători.)
Guile : guile
Bigloo : bigloo
Pui : csi
Gambit : gsi
Gauche : gosh
IronScheme : IronScheme.Console
Kawa : kawa
, java kawa.repl
Larceny : răpire
SCM : scm