crisp

Lisp dialect implemented with Crystal lisp language
HEAD Latest release released
rhysd/Crisp
44 3
Linda_pp

Crisp

CI

Crisp is one of Lisp dialect which is based on mal and implemented with Crystal. This project is a toy box for my dynamic language ideas.

screenshot

So Many Tasks

  • Refactorings
    • [ ] Make is_a? guards more elegant
    • [ ] Import test cases from Mal
    • [x] Add CI
    • [x] More OOP (evaluator, remove global variable, move states into object)
    • [x] Use standard readline implementation
    • [ ] Better lexer and parser
    • [ ] Add examples
    • [ ] More convenient REPL (e.g. completion)
  • New language features using Crystal's semantics
    • [ ] Algebraic data type
    • ...

Installation

  1. Install crystal command
  2. Run shards install for installing dependencies
  3. Run crystal build /path/to/Crisp/crisp.cr to build an executable (add --release for the release build)
  4. Put the built crisp executable in a $PATH directory

Examples

Please see mal test cases for now.

Development Environment

  • macOS or Linux
  • Crystal 0.33.0 or later

License

Distributed under the MIT License.

Copyright (c) 2015 rhysd
crisp:
  github: rhysd/Crisp
  
License MIT
Crystal none

Dependencies 1

  • readline ~> 0.1.0
    {'github' => 'crystal-lang/crystal-readline', 'version' => '~> 0.1.0'}

Development Dependencies 0

Dependents 0

Last synced .
search fire star recently