b6c2a08c8f
FEATURE: Better parsing errors.
...
More specific reports about what is wrong when we know the correct
next tokens to expect.
2019-01-22 20:59:25 -06:00
5bfe38140a
FEATURE: Schema checks for particular shapes.
...
Progress toward #6 and #32 .
2019-01-21 19:47:04 -06:00
6321828006
FEATURE: The begnnings of some schema definition utilities.
...
Also allow failure messages to be generated from any expression.
2019-01-20 08:32:05 -06:00
7959391b90
MAINT: Remove cpuprofiler.
...
I wasn't using it.
2019-01-19 13:30:06 -06:00
883f7792e6
MAINT: Bump version v0.4.1
v0.4.1
2019-01-19 13:18:06 -06:00
1d2008c2da
DOCS: Updated todo list a little.
2019-01-19 13:14:51 -06:00
1d6c850fd4
FEATURE: Dynamic Type checking with is.
...
Any expression for the type as long as the expression evaluates to a string.
2019-01-19 13:06:43 -06:00
9b84444feb
DOCS: Updated grammar and expression reference
...
`is` operator and the `fail` expression.
2019-01-19 11:47:39 -06:00
6d5d4c79de
FEATURE: Declarative failures.
...
FIXES : #30
2019-01-19 11:39:37 -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
d40e89fea9
FEATURE: Boolean Operators.
2019-01-17 19:20:01 -06:00
ea2297a5eb
MAINT: Cargo fmt
2019-01-16 19:28:59 -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
b18d513a9f
FEATURE: Added some functional primitives to the stdlib.
2019-01-16 18:47:16 -06:00
9767ea20b4
FEATURE: Better error messages for select expression parsing.
2019-01-16 17:47:07 -06:00
692a52f46d
MAINT: Add a target to make install.
2019-01-15 19:33:08 -06:00
b9b30a4bd1
FEATURE: Add a module for stripping NULL fields from a tuple.
2019-01-15 19:31:55 -06:00
e838554fff
FIX: Modules were attempting to conver std imports into absolute paths.
2019-01-15 19:22:10 -06:00
5b05405618
FIX: presence checks for tuples with NULL values works now.
2019-01-15 18:51:35 -06:00
599ed31414
FIX: NULL equality should be useable with any type.
2019-01-15 18:49:15 -06:00
98323eabbd
FIX: Multiple packaging errors.
...
* The include setting doesn't do what I thought it did.
* Also when packaging the rules on what build.rs can do
are a little more strict than was immediately apparent.
v0.4.0
2019-01-14 20:41:12 -06:00
5777797580
MAINT: Bump version v0.4.0
2019-01-14 18:40:36 -06:00
44d6247b46
DOCS: Modify the docs to reflect macros as closures.
archive/closures
2019-01-14 18:34:37 -06:00
685ee7407e
FEATURE: make macros close over their environment.
...
The benefits are great enough to allow this and the benefits of
not allowing closures are not terribly useful.
We do not get the same benefits for modules though so we don't add
it to them.
2019-01-14 18:23:39 -06:00
5c2d8662bf
FIX: Handle binding and named field collisions in lookups.
2019-01-13 22:51:20 -06:00
207a08d112
FEATURE: Better rendering of Val's to text.
2019-01-13 22:25:26 -06:00
924dcb40ff
FEATURE: Allow people to override the descriptions
...
For equal and not_equal specifically.
2019-01-13 22:06:38 -06:00
38fc521e3e
FIX: The in memory asset cache should no longer canonicalize.
...
The pseudo relative paths for std libraries won't work with them.
2019-01-13 22:05:20 -06:00
17a9882f40
DOCS: Document our standard library.
2019-01-13 21:30:33 -06:00
116a2b716a
REFACTOR: Better name for the tuples field/value iterator.
2019-01-13 21:24:35 -06:00
547c271aa1
FEATURE: Special case the std/ import prefix.
...
It's a reserved import path for our std library.
closes #27
archive/builtins
2019-01-13 20:35:23 -06:00
50a3d33208
FEATURE: Generate a hashmap of path to String for std libraries.
...
prework for #27
2019-01-13 20:34:50 -06:00
92d2857f83
FEATURE: Add a default import_path search location.
...
We'll always search "~/.ucg".
2019-01-13 15:00:26 -06:00
e2ab14f23d
MAINT: Slight tweak to the import test.
...
Demonstrate that you don't have to use parens to get a val from the
import expression.
2019-01-13 14:37:25 -06:00
3cfed0d0e1
FEATURE: Better error reporting using must!.
...
Some errors around punctuation were less than helpful. This should
improve that situation somewhat.
2019-01-13 14:31:04 -06:00
c4505ac2ab
FEATURE: Add a counter for our assertion output per file.
2019-01-13 14:20:08 -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
archive/import_expressions
2019-01-13 14:11:20 -06:00
54faeede5e
FEATURE: Imports as expressions.
...
This is a breaking change for the language. However it makes a number of things
easier. Like importing specific symbols from a file.
adds: #28
2019-01-13 14:10:43 -06:00
0f7498884a
FEATURE: No longer require the dsl to output ok vs not ok.
2019-01-13 13:53:24 -06:00
6f9ba2ac33
FEATURE: Add the range expression.
...
fixes : #24
2019-01-10 19:40:32 -06:00
d2a5a1619a
STDLIB: More stdlib additions.
...
* list reverse
* enumerate for tuples
2019-01-10 17:17:57 -06:00
db809fad97
STDLIB: Add some helper modules for tuples.
2019-01-10 17:17:57 -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
f022e71c0c
TESTS: Added some new test coverage.
2019-01-10 17:17:57 -06:00
21c4237e22
MAINT: Bump version in Cargo.toml
archive/release0.3.0
2019-01-10 17:15:56 -06:00
1b45066f39
BUGFIX: Found a bug in deep equality for lists :-(
v0.3.0
2019-01-08 19:26:56 -06:00
544cd1572e
MAINT: remove extraneous files
2019-01-08 19:25:52 -06:00