A small portable lisp
  • C 76.3%
  • NewLisp 23.4%
  • Shell 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-10 00:51:18 -07:00
arch break up all the things into components 2026-09-10 00:38:24 -07:00
.gitignore break up all the things into components 2026-09-10 00:38:24 -07:00
build break up all the things into components 2026-09-10 00:38:24 -07:00
io.h break up all the things into components 2026-09-10 00:38:24 -07:00
libc.c break up all the things into components 2026-09-10 00:38:24 -07:00
libc.h break up all the things into components 2026-09-10 00:38:24 -07:00
LICENSE Add files, attribute tinylisp 2026-09-09 20:12:57 -07:00
README.md break up all the things into components 2026-09-10 00:38:24 -07:00
tinylisp-stdlib.lisp break up all the things into components 2026-09-10 00:38:24 -07:00
vm.c Fix small typo bug 2026-09-10 00:51:18 -07:00
vm.h break up all the things into components 2026-09-10 00:38:24 -07:00

smalisp

This is a fork of tinylisp

It is intended to work on very constrained hardware.

Changes compared to tinylisp:

  1. removed c standard library from core system
  2. integers instead of doubles (remove IEEE 754 dependency)
  3. tagged unions instead of NaN boxed doubles
  4. no intermediary string buffer, so atoms can be any arbitrary size (until you hit the size limit)
  5. moved I/O to architecture specific implementations