making a gay and stupid lisp
i probably should not be making a gay and stupid lisp when i already dont know a lot about heterosexual and smart lisp
TAke a look, y'all: https://github.com/Robert-van-Engelen/tinylisp it's a little lisp with nanboxing in 99 lines of C, and then a little supplemental paper which explains every line and then goes into more ways to extend it. like with tail-call optimization and hygienic macros. it's very cute. and it's got a No Ai policy
TAke a look, y'all: https://github.com/Robert-van-Engelen/tinylisp it's a little lisp with nanboxing in 99 lines of C, and then a little supplemental paper which explains every line and then goes into more ways to extend it. like with tail-call optimization and hygienic macros. it's very cute. and it's got a No Ai policy
@quat when I see smth like that implemented in so little lines I'm internally expecting like. an unreadable mess optimized only for line count and nothing else. like, IOCCC type shit
...
this is relatively normal
you can Seeeee the Functions
that's fucking incredible
evaluation order keeps coming up. youve got forms like "define" which use their first argument literally without evaluating it. or forms like "if" which don't evaluate both arms. or regular ordinary functions which... evaluate all the arguments eagerly but you could just as easily thunk em to make some sort of lazy lisp. like there's a lot of freedom
i DID feel smart because i thought of the "have builtins take an arg-list parameter and environment parameter" pattern by myself & then i looked at tinylisp and it did the same thing
lookiee i got define, eval and quote
ok i wasnt expecting that to actually work
TAke a look, y'all: https://github.com/Robert-van-Engelen/tinylisp it's a little lisp with nanboxing in 99 lines of C, and then a little supplemental paper which explains every line and then goes into more ways to extend it. like with tail-call optimization and hygienic macros. it's very cute. and it's got a No Ai policy
i probably should not be making a gay and stupid lisp when i already dont know a lot about heterosexual and smart lisp
i probably should not be making a gay and stupid lisp when i already dont know a lot about heterosexual and smart lisp