1
0
Fork
You've already forked lip
0
a really slow lisp interpreter in perl
  • Perl 100%
2026年04月13日 13:19:40 -04:00
lip.pl slow progress, mostly just WIP for renaming/making things nicer to read 2026年04月13日 13:19:40 -04:00
README.md slow progress, mostly just WIP for renaming/making things nicer to read 2026年04月13日 13:19:40 -04:00
test.lip jesus christ my brain is fried after this 2026年03月30日 15:26:24 -04:00

lip

a dirty, experimental lisp interpreter in perl.

scope and goals of this project

  • i want acceptable--accepted by me--error messages.
  • i don't aim to make this accessible--i don't have the spoons to do that, and worrying about this will take the fun out of this project. i recognize that sucks for people who use screen readers, but i don't have the energy to, so i would probably go looking elsewhere for toy lisp interpreters that are accessible--it's nothing personal, it's just that i don't have the spoons or energy to do this, and struggle to get joy out of my hobbies as it already is with my severe depression.
  • i want to write the standard library/core functions in lip itself (this is really easy to do with lisps and lexically-scoped environments, it isn't as fancy as it sounds).

repl

start the repl with ./lip.pl.

running code from a file

run a file that contains lip source code as a script with ./lip.pl <filename>.

syntax highlighting and indentation for text editors

for text editors, somehow configure your editor to treat .lip files as clojure files.

for example, in vim, you would do this by appending the following code to your ~/.vimrc file:

autocmd BufNewFile,BufReadPost *.lip setlocal ft=clojure