# forspll forspll is an implementation of [Forsp](https://xorvoid.com/forsp.html) as an LLVM-based compiler. Forsp is a tiny yet very versatile programming language that mixes features of Forth and Lisp. Through LLVM, Forsp can be compiled into efficient machine code for a wide array of platforms. forspll features: * Lisp-style S-expression syntax * Forth-style data stack for parameters/values * Linking with C functions (see `support.c`) * Recursion: `$self` gets pointer to current function Missing features: * Captured variables: Functions/lambdas are *not dynamic* and do not capture the state of previously declared variables * Quote operator: `quote`/`'` * Built-in dynamic allocations (implement them via platform-specific `support.c`) ## Building Requires Clang and LLVM development files. Run `make` to build the compiler. Run `make prog` to compile `test.fp` and `support.c`.