52 Commits

Author SHA1 Message Date
James Eversole
a3282b794f 0.5.0 release commit 0.5.0 2025-01-06 09:14:04 -06:00
James Eversole
7b9a62462c Level Order Traversal demo 2025-01-03 12:00:06 -06:00
James Eversole
3eb28a2c62 Drop parseVarWithoutAssignment
Additionally sorts gitignore and adds attempted decoding of lists back
to the REPL
2025-01-03 10:31:35 -06:00
James Eversole
8c33e5ce66 Fix critical list evaluation bug and REPL updates 2025-01-02 19:08:14 -06:00
James Eversole
76487b15f9 Use better default output form in evaluator 2025-01-01 19:40:12 -06:00
James Eversole
18ff2d2e04 Clarify CLI options 2025-01-01 19:32:41 -06:00
James Eversole
fff29199d1 Support evaluation across multiple source files 2025-01-01 19:27:04 -06:00
James Eversole
a2c459b148 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
James Eversole
39be66a4d1 Fixes identifier lexing; support REPL file loading 2025-01-01 18:05:21 -06:00
James Eversole
bf58c9afbd Normalize CLI options and help display 2025-01-01 08:34:17 -06:00
James Eversole
7d38d99dcd 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
James Eversole
458d3c3b10 Latest --help in README 2024-12-31 10:09:36 -06:00
0048fed6b4 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
476c3912a4 Merge branch 'main' into feat/new-outputs 2024-12-31 16:04:32 +00:00
James Eversole
493ef51a6a 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
e22ff06bfe 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
James Eversole
5e2a4dff50 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
James Eversole
8622af9ad2 Initial ternary representation options
Both parsing and conversion from T to ternary representation supported
2024-12-30 08:30:40 -06:00
fe70aa72ac 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
James Eversole
2abeab9c04 Adds "compiler" and CLI argument handling 2024-12-29 21:49:57 -06:00
James Eversole
467e11edb3 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
38509724b1 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
James Eversole
a8f72290a2 Resolves issue with parsing comments 2024-12-29 21:02:38 -06:00
James Eversole
b86ff6e9b8 Additional tests 2024-12-29 12:22:24 -06:00
James Eversole
a7674d4635 README updates for run/build 2024-12-29 10:41:04 -06:00
James Eversole
14fdb741dc README clarifications 2024-12-29 10:37:37 -06:00
James Eversole
60a9e3c1ee 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
James Eversole
c30f17367f Rename from sapling to tricu 2024-12-29 08:29:25 -06:00
James Eversole
064bed26c5 Further README clarification 2024-12-28 22:20:43 -06:00
James Eversole
ff2952010f README updates 2024-12-28 21:58:52 -06:00
James Eversole
e376d13a93 Stop using to/of conventions backwards 2024-12-28 07:24:19 -06:00
James Eversole
2e539eb545 Support for single line comment syntax using -- 2024-12-28 07:15:34 -06:00
James Eversole
14b95f90b5 Update README and REPL formatting for list outputs 2024-12-27 20:54:30 -06:00
James Eversole
d804a114bb Update lambda handling; better default decode out 2024-12-27 20:46:30 -06:00
James Eversole
44e2169cdb Further library additions and REPL updates 2024-12-27 19:27:04 -06:00
James Eversole
c820eda816 Include equality testing in basic library 2024-12-27 16:30:32 -06:00
James Eversole
e835caabbc 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
James Eversole
0dd14a3aea 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
James Eversole
4495f8eba0 Tests and better default REPL behavior 2024-12-27 14:10:13 -06:00
James Eversole
dbb5227fbc 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
James Eversole
7fca4d38e8 Stop using lists to represent args 2024-12-27 08:17:06 -06:00
James Eversole
c5f1ccc4dc Drop useless comments 2024-12-20 13:00:06 -06:00
James Eversole
c16c48b22c 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
James Eversole
a61627f333 Reserve __result keyword 2024-12-19 21:13:57 -06:00
James Eversole
2399830366 Additional test coverage for lexing and parsing 2024-12-19 20:26:46 -06:00
James Eversole
51f3f8f21d Additional tests
Additional tests for both parsing and evaluation. 100% passing as of
commit.
2024-12-19 20:21:59 -06:00
James Eversole
d13b2f52e7 Additional test cases and bug fixes for subtle issues 2024-12-19 19:53:32 -06:00
James Eversole
602048dc53 Formatting
Clean up Main.hs formatting; clarify language in parsing branch
2024-12-19 19:08:56 -06:00
James Eversole
e5f3a53bcc 0.1.0 base collection of features
Implemented evaluation of tree calculus terms alongside referentially
transparent variable identifiers. Implemented evaluation of defined
functions into tree calculus.
2024-12-19 19:07:12 -06:00
James Eversole
fb04c9fffc Clean up 2024-12-18 19:41:12 -06:00