ctarbide / lisp0

a bare minimum remake of origin LISP

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LISP0

A bare minimum remake of origin LISP on Linux x86-64.

Run example1

$ make
$ cat example.in | ./lisp0.elf | diff example.out -

It is static linked without crt, using TLSF2 memory allocator, and one-pass mark-sweep garbage collector3 . Short symbols, less than 8 bytes, are base64 decoded to fit in 6 bytes.


  1. Example code are taken from The Roots of Lisp http://lib.store.yahoo.net/lib/paulgraham/jmc.ps

  2. TLSF: a New Dynamic Memory Allocator for Real-Time Systems http://www.gii.upv.es/tlsf/files/ecrts04_tlsf.pdf

  3. One Pass Real-Time Generational Mark-Sweep Garbage Collection http://www.erlang.se/publications/memory1995.ps

About

a bare minimum remake of origin LISP


Languages

Language:C 97.5%Language:Assembly 1.5%Language:Makefile 1.0%