GwenNelson/BearLang
lisp for bears
{ "createdAt": "2018-03-21T20:10:02Z", "defaultBranch": "master", "description": "lisp for bears", "fullName": "GwenNelson/BearLang", "homepage": null, "language": "C", "name": "BearLang", "pushedAt": "2023-06-26T10:04:14Z", "stargazersCount": 13, "topics": [], "updatedAt": "2023-06-26T09:01:11Z", "url": "https://github.com/GwenNelson/BearLang"}BearLang
Section titled “BearLang”BearLang is a lispy-like language (ok, it’s a lisp essentially) written by me to match my own mental model of coding better. At the same time, it’s a heavy work in progress so expect bugs.
Why bears?
Section titled “Why bears?”BOW!!!!
Building + running it
Section titled “Building + running it”Build and install the dependencies under vendor/ first (running build.sh as root will do this for you automatically).
Next do this:
mkdir build cd build cmake .. make ./bli ../examples/euler/problem01.blThe REPL is named bli (for BearLang Interpreter), a compiler is currently under development.
Documentation on the language can be accessed by running the documentation browser webapp in docs/docs.bl
Basic features
Section titled “Basic features”- Lispy primitives (list operations, lambdas etc)
- Nested functions
- Tail call optimisation
- Fast flex-based parsing
- Boehms GC