Noam is a JavaScript library for working with automata and formal grammars for regular and context-free languages.
Noam’s name comes from Noam Chomsky and his hierarchy of formal languages and grammars.
Pre-alpha. Horrible performance, only functions for working with FSMs implemented. Stay tuned. See TODO list.
If you just want to use noam (and not contribute to development), install using npm:
npm install noam
To use noam in a browser, add a <script>
link to the browser-based versions found in lib/browser/
:
<script src="https://ivanzuzak.info/noam/lib/browser/noam.js"></script>
or minified version:
<script src="https://ivanzuzak.info/noam/lib/browser/noam.min.js"></script>
git clone https://github.com/izuzak/noam.git
cd noam
npm install
./src
), tests (./test
) or benchmarks (./benchmarks
)grunt
(on linux and osx), grunt.cmd
(on windows)istanbul cover node_modules/jasmine-node/bin/jasmine-node test
to get code coverage reports in ./coverage
. Add more tests or change existing tests to improve coverageNoam is developed by Ivan Zuzak <izuzak@gmail.com> and Ivan Budiselic. Contributors: Vedrana Jankovic.
Noam is built with many awesome open-source projects:
Licensed under the Apache 2.0 License.