Skip to content

Latest commit

 

History

History
43 lines (36 loc) · 860 Bytes

README.org

File metadata and controls

43 lines (36 loc) · 860 Bytes

bnlisp, a lisp for 2.11BSD

https://github.com/aaronjackson/bnlisp/actions/workflows/main.yml/badge.svg

[2017-08-02 19:16:49] <bnl> C is great because it lets me write scheme

bnl (Marc Cleave) was a fan of, among other things, Lisp, PDP-11s and UNIX. In bnlisp, we try to encapsulate some of these interests by building a lisp interpreter which runs on the PDP-11 under 2.11BSD.

It is currently full of memory leaks, so, enjoy.

Primitives

  • PROGN
  • QUOTE
  • WHILE
  • IF
  • SETQ
  • LAMBDA
  • +
  • CONS
  • CAR
  • CDR
  • RPLACA
  • RPLACD
  • EVAL
  • PRINT
  • ALL-SYMBOLS
  • EQ (as in pointers)
  • = (numeric)
  • STRING=
  • READ (read a lisp expression)
  • LOAD (load a `.bnl` lisp file)
  • CONCATENATE (strings only at the moment)
  • STREAM-OPEN (open file or network stream)
  • STREAM-CLOSE
  • STREAM-READ
  • STREAM-EOF?

We all miss you bnl ❤️