Skip to content

Mal Lisp implementation in Nim

License

Notifications You must be signed in to change notification settings

piyushrungta25/mal-lisp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mal

Mal Lisp intrepretor following the kanaka/mal guide. Features linenoise integration, macros, tail call optimization, closures, quoting, try/catch, metadata etc.

Build/Run

  • Build in debug mode - make build
  • Build in release mode - make build:release
  • Pass compiler args - make nim-build-args='--opt:speed' build
  • Clean build cache and the binary - make clean
  • Run the interpretor - make run
  • Run with debug logging - make run:debug
  • Format code with nimpretty - make format
  • Run all tests - make test
  • Run self hosted tests - make test:selfhosted
  • Watch targets (requires entr) - make watch and make watch:test

Note on test suite

Everything under tests directory is copied unmodified from the kanaka/mal repository.

License

All the files under tests directory is available under the original MPL 2.0 license. Rest everything is under GLP 3.0 or later.