Shelisp on hyvin lyhyt ohjelma, joka tarjoaa mekanismit säveltämiseen ja käynnissä Unix shell (erityisesti bash) komentoja ja konstruktioita alkaen Common Lisp.
Voit suorittaa shelisp, sanovat komentoriville:
lisp -Load shelisp.lisp
Tämä olisi aloitettava CMU Common Lisp ja tarjota nopea, *. Kätevämmässä voitaisiin aloittaa emacs, ja anna komento Mx cmulisp että alkaa `huonompi Lisp" tilassa CMU; sitten, sanovat:
(Load "shelisp.lisp")
Bang (!) Paeta shell
Nyt voit sanoa ("*" on jo laittaa sinne cmulisp):
*! Ls
Ja se tulee suorittaa shell ls komento (ajamalla bash oikeusasteessa ja kulkee komennon sitä.
Tietenkin, olet todella Lisp. Voit kokeilla tätä:
* (Defun kertoma (x) (if (zerop x) 1 (* x (kertoma (1- x)))))
Kertoma
* (Kertoma 33)
8683317618811886495518194401280000000
Joten, jos annat ``! '' Loput linja (kunnes ensimmäinen rivin loppuun, joka ei ole karannut kanssa `` '') tulkitaan bash komento ja tulos on painettu vakiotulosteeseen.
Yritä nyt:
*! Kaiku? (+ 2 3) zuzu
5zuzu
`?" on "lisp paeta". Sitä seuraa s-ilmaisu, joka luetaan, teloitettiin ja painetut (jossa princ) ja tulostetaan tulos korvaa `?" ja ilmaisun komentotulkin komento. Se voi olla mikä tahansa Lisp-ilmaisua.
*! Kaiku? (+ 2/3 2/11) "
Mitä uutta strong> tässä julkaisussa:
- Muutama enemmän toimintoja lisättiin (wget-testi, bash-tulos), ja tämä versio on uudelleenjulkaistun alle Lisp LGPL.
Kommentteja ei löytynyt