48 Commits

Author SHA1 Message Date
439ebf74f3 FEATURE: Give modules a reference to self. 2019-04-24 19:13:22 -05:00
0e41a40ab3 FEATURE: Add a function to the mod binding that imports the containing package. 2019-04-16 20:09:27 -05:00
d31d5ed454 DOC: Fill out the reference overview more. 2019-03-29 12:57:26 -04:00
ecde7f4636 DOCS: Update documentation for the select expression.
Talk about the default being optional and what will happen
the field doesn't exist and no default is specified.
2019-03-01 17:15:07 -06:00
b334482822 DOCS: Add a precedence table to our reference. 2019-02-27 19:41:09 -06:00
f691489bf8 DOCS: A whole bunch of improvements.
* Changed the ordering so that tutorials come first.
* Added a tutorial on recursive modules.
2019-02-27 19:41:09 -06:00
2134d79f0d DOCS: Formatting and organization changes.
Additionally:

* Added an overview
* Expanded the docs for the NULL type.
2019-02-25 19:02:23 -06:00
1604981a5c DOCS: Update the documentation with module out expressions.
issue #35
2019-02-21 20:09:47 -06:00
3c91f48415 DOCS: Clarified the reference for assert statements. 2019-02-04 19:29:46 -06:00
39f7afa8fc DOCS: Add the not operator to our expression reference. 2019-02-01 17:20:02 -06:00
619e3d8d2e DOCS: A raft of fixes and updates to the documentation site. 2019-01-31 19:23:28 -06:00
1322378975 DOCS: Update the docs with the new functional operator syntax. 2019-01-31 16:51:00 -06:00
4d6fd87c3d FEATURE: Allow expressions for functions in reduce/map/filter. 2019-01-30 20:35:28 -06:00
7b4995607c DOCS: More clarification about parenthesized format args. 2019-01-28 21:41:34 -06:00
315fbabc3d DOCS: update the grammar and expression docs.
Adds the new form of format expressions using tuples.

Regarding Issue #23
2019-01-28 21:31:02 -06:00
44055c28e9 DOCS: Update docs with a bunch of fixes. 2019-01-24 20:07:19 -06:00
9b84444feb DOCS: Updated grammar and expression reference
`is` operator and the `fail` expression.
2019-01-19 11:47:39 -06:00
eaa3e84179 FIX: Treat is as a regular binary operator
do syntax checks post parse. Also to avoid collisions with
keywords require quoting the types.
2019-01-19 10:49:33 -06:00
1dba5f66ce FEATURE: map, filter, and reduce over lists. 2019-01-18 20:01:08 -06:00
25d84a771e FEATURE: Add the is operator
This operator tests that something is of a certain base type.
2019-01-18 18:47:11 -06:00
77075d6c79 DOCS: Added boolean expressions and TODO items. 2019-01-17 19:28:41 -06:00
890387b4cc FEATURE: Macros are just an expression now.
This is a breaking change for the map, filter, and reduce expressions
but happily a forward compatible change for macros themselves.
2019-01-16 19:27:58 -06:00
44d6247b46 DOCS: Modify the docs to reflect macros as closures. 2019-01-14 18:34:37 -06:00
cacb345000 DOCS: Reflect the changes in import expressions.
Update the docs to remove the import statement and add the import
expression.

adds: #28
2019-01-13 14:11:20 -06:00
6f9ba2ac33 FEATURE: Add the range expression.
fixes: #24
2019-01-10 19:40:32 -06:00
d989e47706 FEATURE: Use a better DSL for unit tests.
* Assert now requires a tuple instead of a string containing
  statements.
* We include a helpful ucg based unit testing module.

Fixes: #26
2019-01-10 17:17:57 -06:00
a062332b0a DOCS: Add reduce expressions to the grammar and reference. 2019-01-06 21:04:01 -06:00
a8c4ce1157 FEATURE: Allow map and filter on tuples. 2019-01-06 16:35:35 -06:00
d40f30dcf9 DOCS: Add the list and map expressions to our grammar. 2019-01-06 14:53:03 -06:00
1b744ab883 DOCS: keep all tokens together. 2019-01-06 14:45:36 -06:00
f219b320f2 DOCS: Fix some inaccuracies in the grammar. 2019-01-06 14:30:25 -06:00
922955ad0a DOCS: Normalize naming of UCG for consistency. 2019-01-05 09:56:07 -06:00
6c0da11ff7 DOCS: More unit tests and reorganized docs for selectors. 2019-01-05 09:05:02 -06:00
9d6737149f DOCS: Update our reference.
* add the `in` operator.
* add the include expression.
2019-01-04 10:34:57 -06:00
a830047784 FEATURE: Add include as a string functionality.
Includes happy path tests for including a string.

fixes #15
2019-01-04 10:03:50 -06:00
5daf266366 DOCS: Add format expressions to the grammar; 2019-01-04 09:01:40 -06:00
59343d71d5 FEATURE: add a conatins operator
Adds the `in` operator that checks for fields in tuples and
elements in a list.

Fixes: #12
2019-01-03 11:42:11 -06:00
d13556b4cd DOCS: Add a formal grammar to the documentation site. 2019-01-03 10:52:38 -06:00
825955d855 DOCS: Add xml converter documentation to the docsite. 2018-12-12 20:26:42 -06:00
fe4bb1c9d7 FEATURE: allow tuples to have true or false as field names.
this allows selects where the condiotion is a boolean and you can choose
the true or false branch.
2018-11-26 23:08:14 -06:00
4305fe0bcd DOCS: document the strict mode behavior for env variables. 2018-11-26 21:42:12 -06:00
9524cd9d25 DOCS: Add quoted fields for tuples to the documentation. 2018-11-25 12:44:04 -06:00
64e3b793ae DOCS: Update docs for Modules.
Also since We have the reference site now not longer embed the reference in the library
documentation.
2018-11-23 13:14:29 -06:00
fa96c7c0ef FEATURE: UCG Parameterized Modules
closes #10

Squashed commit of the following:

commit 3101c2bb9a385ed9e84481d36906a3e3ce93e571
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date:   Wed Nov 21 20:10:31 2018 -0600

    FEATURE: Module evaluation

    * handle evaluating the module definition.
    * Handle performing a module instantiation via the copy syntax.

commit 4ca863896b416e39f0c8eacc53384b9c514f6f14
Author: Jeremy Wall <jeremy@marzhillstudios.com>
Date:   Tue Nov 20 18:38:19 2018 -0600

    FEATURE: Add module parsing expression parsing to ucg.

    changes toward issue #10
2018-11-23 12:51:13 -06:00
11f86ea8f8 MAINT: Grammar, Spelling, and minor content fixes. 2018-11-18 14:50:30 -06:00
5dbf0eca3f MAINT: general formatting and cleanup for the docsite. 2018-11-17 22:28:25 -06:00
0053afbe0c DOCS: Add a reference for converters to the docsite and some examples.
Also update the README to point to the Docsite as well.
2018-11-17 22:11:52 -06:00
c20190e8e2 Add our documentation site using gutenberg and ucg.
* gutenberg generates the documentation site
* ucg configures the Google cloud storage bucket.
2018-11-17 17:51:18 -06:00