1
1
Fork 0
mirror of https://github.com/azur1s/bobbylisp.git synced 2024-09-28 05:27:35 +00:00
Another lisp dialect (mirror)
Go to file
2022-02-11 18:07:32 +07:00
example feat: math intrinsic 2022-02-11 18:07:32 +07:00
src feat: math intrinsic 2022-02-11 18:07:32 +07:00
.gitignore refactor: .vl -> .blsp 2022-02-11 18:07:32 +07:00
Cargo.lock feat: argument handling, makefile 2022-02-11 18:07:32 +07:00
Cargo.toml feat: argument handling, makefile 2022-02-11 18:07:32 +07:00
Makefile feat: argument handling, makefile 2022-02-11 18:07:32 +07:00
math.bbb feat: math intrinsic 2022-02-11 18:07:32 +07:00
README.md feat: some bytecode compiling 2022-02-11 18:07:32 +07:00

bobbylisp

another lisp dialect

; example/s.blsp
(fun factorial (x)
    (if (<= x 1)
        1
        (* x (factorial (- x 1)))))
(do
    (print (factorial 7)))

Compliation flow:

Input(file) -> Parser -> Compile(Bytecode) -> Interpret
  String       SExprs        Bytecode            IO
                                          |->  Compile
                                              Assembly(?)

Installation

$ make

or

$ make debug

The binary will be installed in ~/bin/blspc run it with:

$ blspc -h

Progress:

  • Lexer & Parser
  • Syntax checker & Type checker
  • Interpreter
  • Compiler