Skip to content

Learning how programming languages work by writing one (or trying to). That is about the size of it.

License

Notifications You must be signed in to change notification settings

ronanduddy/omnium

Repository files navigation

Omnium

"Your talk," I said, "is surely the handiwork of wisdom because not one word of it do I understand."

Omnium is

  1. an ongoing educational project for learning how to write a programming language
  2. an interpreter written in Ruby
  3. a gem
  4. a bicycle
  5. quite the pancake

Build Status

Installation

Add this line to your application's Gemfile:

gem 'omnium'

And then execute:

bundle install

Or install it yourself as:

gem install omnium

Usage

bundle exec omnium hello.om
{:a=>2, :b=>25, :y=>5.997142857142857}

Development

After checking out the repo, run make run filename=hello.om to run the example program. Then, run make test to run all the tests or make guard to use guard for testing. You can also run make irb for an interactive prompt that will allow you to experiment.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/ronanduddy/omnium. Please read CODE_OF_CONDUCT.md for details on our code of conduct.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments