11 Commits

Author SHA1 Message Date
45b9712380 Some Refactoring and cleanups.
* Moved the AST datastructures into their own module.
* Collapsed the Expression Enum to just wrappers around structs
  instead of having actual structs in the definitions.
* Added a few more unit tests to ensure nothing got broken.
* Added documentation for the new structs.
* Added a unifying BinaryExpression Tuple type.
2017-09-06 18:16:28 -05:00
9b367fa2d2 Allow '-' and '_' in symbols. 2017-08-11 23:16:13 -05:00
9df7d57f69 Add format string support. 2017-08-09 21:21:36 -05:00
c00306337b Cleanup warnings. 2017-07-29 13:02:47 -05:00
c1c05cad7c Implement Macros and Select.
Note: We change all our lifetimes in this.

It was getting too complicated for this first pass to avoid
copies. This makes lifetime management much easier to handle.

Each one of Val, Value, and Expression contain no references anymore.
2017-07-25 20:23:49 -05:00
1ee7409367 Lambdas are probably better named as macros. 2017-07-12 20:55:03 -05:00
4f18686fb8 Add README and License information. 2017-07-11 20:36:05 -05:00
8a5c121f26 Basic Evaluation Logic for the Builder. 2017-07-11 20:36:05 -05:00
72d03e21dd Add the build module.
Builder struct that takes a list of Statements and constructs a
Tuple from it.
2017-07-11 20:36:05 -05:00
59cf18fe4d Let and Import names and paths should just be strings. 2017-07-11 20:36:05 -05:00
4a156adae2 Refactor into separate modules for parsing and interpreting. 2017-07-11 20:36:05 -05:00