Lisp/Schema de interpretare fără Emacs?

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.

0
fr hi bn

12 răspunsuri

@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. :-)

0
adăugat

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)

0
adăugat
Dacă utilizați PLT cu SICP: neilvandyke.org/sicp-plt
adăugat autor Eli Barzilay, sursa

Ați încercat Allegro CL de la http://www.franz.com/ ?

0
adăugat
la 599 dolari? Un pic de mult să cheltuiți pentru învățare, nu-i așa?
adăugat autor crashmstr, sursa
@crashmstr: Allegro are o versiune de încercare gratuită care ar trebui să fie în întregime adecvată dacă doriți să învățați acel limbaj.
adăugat autor Pillsy, sursa

Another good dialect of lisp is cmucl. They used to love to brag about being the "fastest" lisp.

0
adăugat

Dacă sunteți în căutarea pentru Schema de lucru cu SICP, aruncați o privire la MIT/GNU Scheme

http://groups.csail.mit.edu/mac/projects/scheme/

http://www.gnu.org/software/mit-scheme/index.html

0
adăugat
Schema MIT/GNU utilizează un interpret care este aproape asemănător cu Emacs.
adăugat autor Ceasar Bautista, sursa
Editorul Edwin inclus este ca și Emacs, iar REPL are niște comenzi asemănătoare cu Emacs pentru întrerupe , dar asta nu este totul. Cu MIT-Scheme, el ar putea să învețe Schema fără a învăța Emacs.
adăugat autor crashmstr, sursa

Nu "interpret" necesită emacs.

De asemenea, emacs poate rula elisp în mod fără cap.

0
adăugat

Verificați CLISP wiki-link , adică. a fost folosit de Paul Graham

Direct link

0
adăugat
Dacă cu "ie." vrei să spui "adică": care spune "id est" (în engleză: "that is"). Cred că vrei să spui "de exemplu" (exempli gratia = de exemplu).
adăugat autor Svante, sursa
clisp este deosebit de bun pentru utilizarea interactivă atunci când este compilat cu suportul ncurses (TAB-completion bash style) preluarea documentației de la hyperspec etc.
adăugat autor dsm, sursa

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ă:

0
adăugat
Uneori, aceste replici au o "editare de linie" foarte proastă. Apucând săgeata din stânga și obținerea lui [[D este îngrozitor. Pentru aceste cazuri, puteți utiliza rlwrap, care împachetează programul cu suport pentru linia de citire (executați-l cu rlwrap ). Setările pentru linia de citire (fișierul ~/.inputrc) vor intra în vigoare, astfel încât să puteți folosi modul vi de citire dacă doriți.
adăugat autor spelufo, sursa

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ă.

0
adăugat

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 .

0
adăugat

Eu scriu adesea scripturi shell lisp care încep cu această linie:

#!/Usr/bin/clisp

Apoi, nici măcar nu trebuie să tastați "lispinterpret" pe linia de comandă. Doar marcați executabilul scriptului și rulați-l direct.

0
adăugat

It seems like scheme shell is suitable for your purpose. Take a look at http://www.scsh.net/index.html

0
adăugat