Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Neat, another one to add to my collection: https://taoofmac.com/space/dev/lisp

(you can find most small LISPs there, reply here if you know more to add)



Beautiful, thanks. I'm writing my own small interpreter and it's good to have a reference of all other implementations to steal/get inspired from.

Also, looks like you're missing Kernel: https://web.cs.wpi.edu/~jshutt/kernel.html


Bel, a LISP written in itself [1] by Paul Graham.

Arc, a LISP written in Racket LISP [2] by Paul Graham

Several (tiny) LISP and Scheme implementations [5]

Alan Kay wrote and lectured many times about the LISP eval implementation in itself on page 13 of the LISP 1.5 Manual [6] as the "Maxwells equations of software" [3]

There is an derivation of this idea, a Smalltalk eval written in itself, see chapter IV and Smalltalk 71 [4].

[1] http://www.paulgraham.com/bel.html

[2] http://www.paulgraham.com/arc.html

[3a] https://github.com/informatimago/lisp-1-5/blob/master/LISP-1...

[3b] https://queue.acm.org/detail.cfm?id=1039523

[3c] https://michaelnielsen.org/ddi/lisp-as-the-maxwells-equation...

[4] http://worrydream.com/EarlyHistoryOfSmalltalk/

[5] http://www.iro.umontreal.ca/~feeley/

[6] https://michaelnielsen.org/ddi/wp-content/uploads/2012/04/Li...


Just found one after replying to another comment on this story.

https://github.com/ioccc-src/winner/blob/master/1989/jar.2.c (accompanying explanation: https://github.com/ioccc-src/winner/blob/master/1989/jar.2.h... )

It apparently works somewhat after a few minor tweaks.

Another one that I've bookmarked some months earlier: https://github.com/rui314/minilisp


My Z3S5 Lisp[1] is rather big, it's intended to integrate well into Go programs, but it's based on the 1-page Nukata Lisp[2]. Go creates much larger binaries than C, though.

[1] https://z3s5.com/ [2] https://github.com/nukata/lisp-in-go


It looks like your lisp has a lot of built-in/primitives, I'll have to explore!

I also wrote a simple lisp in go, in my case I added LSP support for completion and help-on-hover, which was a fun addition I've not seen in anything else.

https://github.com/skx/yal


I went to look for uLisp, which is there and I am quite fond of, but “for Arduino” may have only been its original intent. It’s a bit broader now.

> Lisp for Arduino, Adafruit M0/M4, Micro:bit, ESP8266/32, RISC-V, and Teensy 4.x boards.

And even that needs updated on the site, as it runs on the RP2040 (Pi Pico) as well, with wireless functions on the W variant, even.


owl lisp: https://gitlab.com/owl-lisp/owl - https://haltp.org/posts/owl.html - talk: https://www.youtube.com/watch?v=utOVF0U7Zd8

otus lisp: https://github.com/yuriy-chumak/ol - owl lisp with ffi - http://yuriy-chumak.github.io/ol/

owl can compile to c or interpret - otus is a small interpreter 45kb


you have some things there that i didn't know about, which is pretty cool. however, i think you need to put more work into this. sicl, clozure, armed bear are common lisp implementations. you also left out some pretty big ones - sbcl and ecl. for more common lisp libraries see https://github.com/CodyReichert/awesome-cl


Well, I do have 8000 pages of content, it's hard to update the whole thing... Plus I don't use Steel Bank anymore, so that's likely why I left it out.

But I'm adding all the stuff mentioned, thanks!

https://taoofmac.com/static/graph




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: