Skip to content
barakPublic

About

An object-oriented dialect of Scheme

Resources

Stars

64 stars

Watchers

8 watching

Forks

Repository files navigation

Oaklisp

Oaklisp is an object-oriented dialect of lisp sharing the standard lisp syntax, including common lisp style macros, first class types, multiple inheritance, and multiple namespaces (packages). Oaklisp is also a Lisp-1 dialect meaning functions and variables share the same namespace (like Scheme).

This is a portable implementation of a lisp interpreter / compiler for the Oaklisp dialect of lisp.

Project homepage(s)

The compiler compiles Oaklisp source code into byte-code for the included Oaklisp emulator / virtual machine. The implementation is described in the included documentation, and also in

See BUILD.md for instructions on how to build the system.

Recent Changes

These made extensive use of claude code. The hard ones were done by Blake McBride blake@mcbridemail.com and then reworked/extended by BAP.

  1. Port from 32-bit to 64-bit
  2. Bug fixes
  3. Added the ability to dump a world without exiting
  4. Added the ability to load a world at runtime (see Dump.md)
  5. Added full support for native threads (green threads were already supported)
  6. Added a concurrent GC
  7. (Optional) bootstrap from source and Guile scheme: no preexisting oaklisp or prebuilt world or precompiled .oa files.

This repo is located at: https://github.com/barak/oaklisp

Barak Pearlmutter (& Blake McBride, who is THE MAN.)

About

An object-oriented dialect of Scheme

Resources

Stars

64 stars

Watchers

8 watching

Forks

Releases

Packages

Contributors

Languages