4 ms·
Common lisp does have a form of goto in the "go" operator within a tagbody. Was this not usable for your purposes? You needed a global goto? http://clhs.lisp.s
by dmm 11y ago
Common lisp does have a form of goto in the "go" operator within a tagbody. Was this not usable for your purposes? You needed a global goto?
http://clhs.lisp.se/Body/s_go.htm#go http://clhs.lisp.se/Body/s_go.htm#go
- david-given 11y agoTBH I don't know Lisp - the code generator was donated. There isn't enough libc to run the benchmarks and I haven't really examined the code much. Maybe it does use go. If you're interested in having a look, feel free...
- dmm 11y ago> Maybe it does use go. I just took a look at your repository. In the lisp implementation each generated function is wrapped with a prog which provides a tagbody and then a label is emitted for each basic block and go is used to jump to the labels. So be sure to leave out lisp in your future lists of toy languages... :D
- david-given 11y agoExcellent news! Normally at this point I'd ask if you were interested in fixing the libc for me, but frankly, it's not worth it --- clue's technology is pretty crappy. One day, in my copious free time, I'd like to retry the whole idea using a better compiler.