1
1
Fork 0
mirror of https://github.com/azur1s/bobbylisp.git synced 2024-10-16 02:37:40 -05:00
bobbylisp/blspc
2022-02-11 18:07:32 +07:00
..
example refactor: move file up 1 director 2022-02-11 18:07:32 +07:00
src refactor: move file up 1 director 2022-02-11 18:07:32 +07:00
.gitignore refactor: move file up 1 director 2022-02-11 18:07:32 +07:00
Cargo.lock refactor: move file up 1 director 2022-02-11 18:07:32 +07:00
Cargo.toml refactor: move file up 1 director 2022-02-11 18:07:32 +07:00
Makefile refactor: move file up 1 director 2022-02-11 18:07:32 +07:00
README.md refactor: move file up 1 director 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