This repository was archived by the owner on May 9, 2018. It is now read-only.

Description
We currently do some simple type-checking while constructing the AST, but some things we can't check include:
- variable scoping
- different type restrictions for different types of operators (e.g. different constraints for multiplication vs addition)
We can add a pass for each type of check. This will make the library slower at runtime, but won't be a problem once we transition to a DSL that's compiled with webpack.