57 Commits

Author SHA1 Message Date
aac10d031d Actually readable Level Order Traversal 2025-01-20 20:10:14 -06:00
ec0a6b7b16 Allow multiline expressions 2025-01-20 19:20:29 -06:00
eeaf9e0289 Eliminate redundant eager calls of elimLambda 2025-01-20 16:05:06 -06:00
b385349197 Reduce duplication of elimLambda calls 2025-01-20 15:16:27 -06:00
e6e05b607a General refactor for legibility
Priming to update all source to lhs and document extensively
2025-01-19 14:41:25 -06:00
63aa977efd 0.5.0 release commit 2025-01-06 09:14:04 -06:00
3fec1e0c68 Level Order Traversal demo 2025-01-03 12:00:06 -06:00
66cc5fdd27 Drop parseVarWithoutAssignment
Additionally sorts gitignore and adds attempted decoding of lists back
to the REPL
2025-01-03 10:31:35 -06:00
7d97b85f74 Fix critical list evaluation bug and REPL updates 2025-01-02 19:08:14 -06:00
5523d5acde Use better default output form in evaluator 2025-01-01 19:40:12 -06:00
f478a7d091 Clarify CLI options 2025-01-01 19:32:41 -06:00
03cbadcc54 Support evaluation across multiple source files 2025-01-01 19:27:04 -06:00
8b0b24e7dc Provide "library" via tricu file directly
Allows easier loading of other files and drops the list of Haskell
strings containing the basic tools included
2025-01-01 18:53:56 -06:00
1c8457733e Fixes identifier lexing; support REPL file loading 2025-01-01 18:05:21 -06:00
57f7389c4d Normalize CLI options and help display 2025-01-01 08:34:17 -06:00
3ab9b58194 Rename "compiler" functionality to Evaluator
Allows for stdin input for evaluation when no input file is provided.
2025-01-01 08:23:53 -06:00
bc9064b058 Latest --help in README 2024-12-31 10:09:36 -06:00
d51af676d5 Merge pull request 'Add "SimpleT" t output form' (#9) from feat/new-outputs into main
Reviewed-on: #9
2024-12-31 16:05:38 +00:00
6cec61b98d Merge branch 'main' into feat/new-outputs 2024-12-31 16:04:32 +00:00
4aa8e19ff4 Add "SimpleT" t output form
This new output form allows easy piping to the decode function of the
tricu executable. Includes a new test for roundtrip evaluation of map,
compilation to tree calculus terms, and decoding back to a human
readable string.
2024-12-31 10:00:52 -06:00
13edaa9d5e Merge pull request 'Expands CLI support with output forms and decoding' (#7) from feat/ternary-representation into main
Reviewed-on: #7
2024-12-30 20:24:27 +00:00
7abc7061d9 Expands CLI support with output forms and decoding
Adds CLI options for compiling to a Tree Calculus, AST, Ternary, and
ASCII tree view. Adds CLI command for attempted decoding of a compiled
result to Number/String/List.
2024-12-30 14:22:37 -06:00
78dd2f4d8f Initial ternary representation options
Both parsing and conversion from T to ternary representation supported
2024-12-30 08:30:40 -06:00
9bc0410846 Merge pull request 'Adds "compiler" and CLI argument handling' (#3) from feature/compiler-CLI into main
Reviewed-on: #3
2024-12-30 03:51:59 +00:00
95b1e07dd9 Adds "compiler" and CLI argument handling 2024-12-29 21:49:57 -06:00
c578d780e9 Updates to tests
Uncomments a test for comment parsing behavior and removes a test for
incomplete function definitions.
2024-12-29 21:09:02 -06:00
31106aa285 Merge pull request 'Resolves issue with parsing comments' (#2) from fix/comments-0001 into main
Reviewed-on: #2
2024-12-30 03:03:39 +00:00
bde89125ba Resolves issue with parsing comments 2024-12-29 21:02:38 -06:00
8a2dc2dfcf Additional tests 2024-12-29 12:22:24 -06:00
dbe9cbd6c1 README updates for run/build 2024-12-29 10:41:04 -06:00
4bd2257441 README clarifications 2024-12-29 10:37:37 -06:00
f41c92fa9d Expansion of testing suite to cover incl. library
Expands the testing suite to verify behavior of provided library
functions. Updates the README further for clarification on important
concepts.
2024-12-29 10:28:32 -06:00
7a7ee6886a Rename from sapling to tricu 2024-12-29 08:29:25 -06:00
1e23465bc3 Further README clarification 2024-12-28 22:20:43 -06:00
8b326e8dcf README updates 2024-12-28 21:58:52 -06:00
30c04a84d6 Stop using to/of conventions backwards 2024-12-28 07:24:19 -06:00
a9432777e5 Support for single line comment syntax using -- 2024-12-28 07:15:34 -06:00
fe62e63c22 Update README and REPL formatting for list outputs 2024-12-27 20:54:30 -06:00
decf912be7 Update lambda handling; better default decode out 2024-12-27 20:46:30 -06:00
8c1243580f Further library additions and REPL updates 2024-12-27 19:27:04 -06:00
c718684963 Include equality testing in basic library 2024-12-27 16:30:32 -06:00
2c75f58e42 Minor fix to REPL output for numbers
Uses # instead of text output. Adds several basic library functions.
2024-12-27 16:09:54 -06:00
1224961c62 Automatic decoding of supported literals in REPL
Automatic decoding & display of string, number, and list types in REPL.
General updates to README, style, and comments.
2024-12-27 15:40:50 -06:00
9c1c916fc9 Tests and better default REPL behavior 2024-12-27 14:10:13 -06:00
c3c6646cb2 Somewhat working lambdas
Architectural changes to lambda evaluation and parsing to allow
for correct expression evaluation. Contains several failing AI-generated
tests and we're still failing tests for erroring incomplete definitions
2024-12-27 13:21:30 -06:00
5e574d2ca1 Stop using lists to represent args 2024-12-27 08:17:06 -06:00
37be4aac0a Drop useless comments 2024-12-20 13:00:06 -06:00
b3583c796e 0.2.0
Includes better error handling, additional tests, parsing and lexing
fixes to match the desired behavior defined by the new tests, and a very
basic REPL implementation.
2024-12-20 12:58:06 -06:00
2a63942cdb Reserve __result keyword 2024-12-19 21:13:57 -06:00
8fb8ab2741 Additional test coverage for lexing and parsing 2024-12-19 20:26:46 -06:00