Skip to content

Latest commit

 

History

History
66 lines (44 loc) · 1.22 KB

README.md

File metadata and controls

66 lines (44 loc) · 1.22 KB

Malady Build Status

Malady is an implementation of mal that compiles to Rubinius bytecode.

Installation

$ gem install malady

Usage

Use the malady binary provided in the bin directory to start the malady repl.

$ malady
malady> (+ 42 88)
130
malady> (def! fib (fn* [x]
          (if (< x 2)
              1
              (+ (fib (- x 1)) (fib (- x 2))))))
#<Rubinius::BlockEnvironment:0x30ac>
malady> (fib 8)
34
malady>

Development

Malady requires Rubinius.

Install dependencies with bundle

$ bundle install

To run tests, use rspec

$ rspec

To Do:

  • Data structures
    • Lists
    • Hashes
    • Symbols
  • Macros
  • Import mal's test cases

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/jsyeo/malady.

Credits

Inspired by lani, a programming language in Rubinius.

License

The gem is available as open source under the terms of the MIT License.