669 Commits

Author SHA1 Message Date
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
200db01b13 Add documentation for the base types and simple expressions. 2017-07-30 09:09:43 -05:00
42b5b8f656 Expand the examples section of the README. 2017-07-29 13:20:57 -05:00
c00306337b Cleanup warnings. 2017-07-29 13:02:47 -05:00
0453a6043d Store the result of the last statement in the builder. 2017-07-29 12:57:34 -05:00
c71d668529 Cleanups and Addtional Tests. 2017-07-29 12:22:30 -05:00
a3b2b605a2 Convert Value::Tuple to Val::Tuple using the value_to_val method. 2017-07-29 12:07:06 -05:00
20c360af67 Let Statement Evaluation 2017-07-29 11:50:09 -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
bd329c6a1f Rename the build::Tuple struct.
The duplicate name was easily confused with the Val::Tuple type.
2017-07-12 20:30:52 -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
c6af1543bf Basic Parsing for the language.
The start of defining a languge for configuration generation.
2017-07-11 20:36:05 -05:00
5f05eab033 Initial commit 2017-07-11 20:31:02 -05:00