673 Commits

Author SHA1 Message Date
c6037f6ea7 REFACTOR: reference the Composite types directly. 2019-10-17 17:57:03 -05:00
b6c208fb97 REFACTOR: Keep the bytecodes in memory
This will help us implement functions and modules.
Also move each of the operations into a separate method.
This will help the readability of our run method.
2019-10-17 17:57:03 -05:00
d7da091b83 DEV: List and Tuple construction. 2019-10-17 17:57:03 -05:00
d4b7bdcd46 DEV: Basic primitives and operations on them in a VM Stack Machine. 2019-10-17 17:57:03 -05:00
acffc6d5da MAINT: cargo fmt 2019-10-02 20:56:09 -05:00
acfd343c7a FIX: Give fmt a --overwrite flag.
Fixes: #51
2019-10-02 20:55:48 -05:00
b9309ce12b FIX: Don't print an extraneous new line on fmt.
Fixes: #49
2019-10-02 19:55:40 -05:00
8f64d3385a FIX: Exit with non-zero exit code when fmt fails
Fixes #50
2019-10-02 19:55:39 -05:00
b83c57b1f6 FIX: Builds on windows now. 2019-10-02 19:55:39 -05:00
ebb06c169b FIX: Add newlines to yaml config output.
Fixes #48
2019-10-02 19:55:31 -05:00
49a64251a4 MAINT: cargo fix
Mostly to add the dyn keyword all the places where it will soon
be required.
2019-09-18 20:09:57 -05:00
97c25e076f Make this a little more general. 2019-09-18 19:10:17 -05:00
Jeremy Wall
4ec27ff426 DEV: Collapse fields when merging yaml maps 2019-08-13 09:48:13 -05:00
Jeremy Wall
949d468f55 DEV: Fix escaping in both strings and format strings. 2019-08-12 18:10:48 -05:00
Jeremy Wall
dffa535f1b DEV: Support the merge key syntax for yaml deserialization.
https://yaml.org/type/merge.html
2019-08-12 13:19:56 -05:00
Jeremy Wall
eb764b048a MAINT: tag a v0.6.4 bug release 2019-08-12 11:41:35 -05:00
Jeremy Wall
cd4fdfb9be DEV: Fix bug in eval command when you don't specify an input file. 2019-08-12 11:40:51 -05:00
7e88ed4d84 FIX: deprecated and unsafe code revealed by 1.36 rust release. 2019-07-11 14:53:11 -05:00
368c153c9e MAINT: Bump version to v0.6.3 2019-06-21 17:10:18 -05:00
3bc56e9162 Fix json example 2019-06-20 19:42:23 -05:00
fa73cf258a FEATURE: out statements work in a REPL 2019-06-20 19:39:09 -05:00
354f072c98 DOCS: Add details about the repl to our getting started doc. 2019-06-20 19:30:20 -05:00
f349293400 FEATURE: Support a convert expression. 2019-06-20 19:28:20 -05:00
1d08a84eab MAINT: cargo update. 2019-06-03 16:33:25 -05:00
496130c5ed DOCS: Update the warnings section of readme 2019-05-31 15:36:57 -05:00
e4000b90d5 MAINT: Add a Contributing.md document. 2019-05-30 18:36:36 -05:00
4bca898eda MAINT: Bump version to v0.6.2 2019-05-30 18:23:08 -05:00
0766d8058f DEV: Stop using nested tuples in flag output.
Now that we have string manipulation facilities in the stdlib
that is a less useful and more confusing feature. This code removes
it.
2019-05-30 18:22:47 -05:00
85f239a566 REFACTOR: Error handling to use BuildError throughout.
Also removed more extraneous error output.

Contributes toward issue #45
2019-05-29 18:58:13 -05:00
e5f406d4e9 DEV: remove some unneccessary error output.
Working towards Issue #45
2019-05-28 21:08:54 -05:00
07d132bebc CLEANUP: an errant debug printf... 2019-05-28 20:50:50 -05:00
7c253991e8 DOCS: move the env command help text into a text file. 2019-05-28 20:36:12 -05:00
c5d608216a FEATURE: Repl commands.
Adds: #help and #del

Closes #46
2019-05-28 20:29:18 -05:00
879a8d2100 DEV: for the repl use case allow changed file reimports.
Closes #47
2019-05-28 19:55:35 -05:00
1589aaf7d7 Refactor: Use trait constraints instead of a trait object for our assets cache. 2019-05-28 18:24:02 -05:00
fc9595ab38 FEATURE: Show line numbers for ucg statements in the repl. 2019-05-28 18:06:23 -05:00
f81eb95e9a DOCS: Add info to the readme about the repl. 2019-05-26 16:25:28 -05:00
745b4cc8d9 MAINT: Bump version to v0.6.1 v0.6.1 2019-05-26 16:21:40 -05:00
9382563dfc DEV: Adds a Repl for ucg.
Uses a StatementAccumulator to handle the accumulation of lines
until a line terminated with a statement is encountered.

Fixes #41
2019-05-26 16:20:19 -05:00
6d16365af0
Merge pull request #44 from zaphar/ast_pretty_print
FEATURE: Adds an autoformatting command to the ucg compiler.
2019-05-24 15:56:34 -05:00
69eb7a398e DOC: Add new command to README doc. 2019-05-24 15:46:29 -05:00
John Franklin
53f34d1647 FIX: Added missing word and comma in docsite/site/content/reference/expressions.md. 2019-05-24 15:43:26 -05:00
3d3a0a397c FEATURE: Wire in the fmt command.
issue #43
2019-05-24 15:39:41 -05:00
685917876b DEV: A bunch of improvments
* move comments on the same line up to the previous line.
* All statements should have two new lines between them.
* Handle comments with indentation whitespace properly.
2019-05-24 15:26:11 -05:00
c9b2b9994f DEV: Handle some more expressions. 2019-05-23 20:10:18 -05:00
82d6ca9ecb DEV: Handle comments embedded in not, import or include expressions 2019-05-23 20:02:31 -05:00
ff2aafeb98 DEV: Handle grouped comments with embedded comments. 2019-05-23 19:57:51 -05:00
157f123355 DEV: Handle the functional operators with embedded comments. 2019-05-23 19:52:03 -05:00
f88955517e DEV: Handle TRACE, fail, and format expressions with embedded comments. 2019-05-22 19:05:48 -05:00
e6f6421ca6 DEV: Handle comments embedded in binary expressions and call expressions. 2019-05-22 18:52:10 -05:00