fccee3e61c
Static linking part 2
Test, Build, and Release / test (push) Failing after 3h6m55s
Test, Build, and Release / build (push) Has been cancelled
0.18.1
2025-02-07 19:22:31 -06:00
ad1918aa6f
Statically link binaries
Test, Build, and Release / test (push) Failing after 50s
Test, Build, and Release / build (push) Has been skipped
0.18.0
2025-02-07 18:32:09 -06:00
0a505172b4
Adds several new REPL utilities
...
Also removes some broken list library functions
2025-02-07 18:25:11 -06:00
e6e18239a7
Smarter decoding of terms
...
This update includes an update to `decodeResult` that makes string
decoding far less aggressive. This also replaces the `!decode` REPL
command with `!output` to allow users to switch output format on the
fly. New tests are included for verifying decoding behavior; this group
needs to be fleshed out further.
2025-02-07 15:06:25 -06:00
871245b567
Lint cleanup and README updates
2025-02-07 12:37:27 -06:00
30b9505d5f
Clearer definition for apply
2025-02-06 08:32:17 -06:00
f4e50353ed
Support for list literals in Lambdas
Test, Build, and Release / test (push) Successful in 1m35s
Test, Build, and Release / build (push) Successful in 1m12s
0.16.0
2025-02-02 12:08:08 -06:00
f9864b8361
REPL namespaces; lib function for pattern matching
...
Test, Build, and Release / test (push) Successful in 1m52s
Test, Build, and Release / build (push) Successful in 1m20s
Adds support for REPL namespacing, primarily to avoid `main` collisions.
Also adds a library function for an ergonomic pattern matching function
that I've been noodling on. I might explore ways to make list syntax
less annoying specifically for pattern matching like this.
0.15.0
2025-02-02 10:56:40 -06:00
1a9a4494e0
Caller-relative imports; smart deduping in imports
Test, Build, and Release / test (push) Successful in 1m35s
Test, Build, and Release / build (push) Successful in 1m13s
0.14.0
2025-01-30 17:56:46 -06:00
a16a24a808
Replace placeholder xor? library function
2025-01-30 17:17:07 -06:00
7d1b6a741d
REPL import warning; version info in CLI
...
Test, Build, and Release / test (push) Successful in 1m18s
Test, Build, and Release / build (push) Successful in 1m13s
Adds the ability to toggle result decoding in REPL. Adds several more
useful functions to the base library.
0.13.1
2025-01-30 16:33:36 -06:00
bf1000d174
Rework module system
...
Test, Build, and Release / test (push) Successful in 1m37s
Test, Build, and Release / build (push) Successful in 1m14s
Don't require/allow naming a module, instead require that the importer
names it. Allow importing into the local scope with the name !Local.
Simplify namespacing logic. Updates all tests to reflect these changes.
0.13.0
2025-01-30 13:56:09 -06:00
09eedfb609
Better handling of interrupts in REPL
2025-01-27 16:46:41 -06:00
c6a7835a6f
Don't require available library to run REPL or decoder
2025-01-27 16:28:40 -06:00
20b114fe9b
Gracefully ignore no-op redefs
2025-01-27 16:19:59 -06:00
3e07a36444
README typo
2025-01-27 16:07:32 -06:00
4a4b09e898
# Modules
...
Basic implementation of a module system including tests.
2025-01-27 16:04:04 -06:00
72291c652d
Small dependency ordering optimizations
2025-01-26 16:08:34 -06:00
c9d0d04630
# File eval mode now relies on main function
...
To encourage organizing code in a way that helps in understanding, I
have implemented the common idiom of requiring a `main` function. In
tricu and other functional languages, it is usually placed near the top
of the module. The evaluator gracefully handles the situation of passing
multiple files where the intermediary "library" files do not have main functions.
2025-01-26 15:33:12 -06:00
425489a73f
Definition dependency analysis
...
tricu now allows defining terms in any order and will resolve
dependencies to ensure that they're evaluated in the right order.
Undefined terms are detected and throw errors during dependency
ordering.
For now we can't define top-level mutually recursive terms.
2025-01-26 14:50:39 -06:00
b0b0fb22b9
Allow lambda expressions without explicit paren
2025-01-26 08:52:28 -06:00
6713b05872
Add optimization cases for triage and composition
2025-01-25 15:12:28 -06:00
00cdeca280
Eval optimization! Tests for demos
2025-01-25 09:18:13 -06:00
3175132eec
Immutable definitions and documentation updates
2025-01-24 16:14:33 -06:00
88b1c71695
Add size demo
2025-01-23 18:57:59 -06:00
cbf23bc569
Remove Nix caching that can't work due to /nix/store permissions
2025-01-23 17:59:47 -06:00
8b0db2c935
Update README to reflect demo
2025-01-23 17:36:39 -06:00
9dbcde08ca
Minify and mark as pre-release
2025-01-23 17:23:02 -06:00
5216cc4e5b
Release 0.6.0
2025-01-23 16:44:14 -06:00
10c7cc367d
Some special characters in ids; new demos
...
Adds support for several special characters in identifiers. Adds a demo
for converting values to source code and another for checking equality.
Updates the existing demo and tests to reflect new names for functions
returning booleans.
2025-01-23 15:46:40 -06:00
118062d33c
All paths for caching cabal included :)
2025-01-21 17:00:20 -06:00
74bc9a47fc
Use runner 0.1.0
2025-01-21 16:49:15 -06:00
08c5b3a74e
Update Cabal caching path
2025-01-21 16:48:29 -06:00
3e3e5802fa
Drop unreachable cases of updateDepth
2025-01-21 16:16:04 -06:00
83dad2c56b
Add more explicit error handling for mismatched groupings
2025-01-21 16:06:10 -06:00
962a100f53
Inline pattern matching in Parser
2025-01-21 14:21:47 -06:00
56f0c2860a
CI/CD for tests and builds (broken caching)
2025-01-21 13:29:52 -06:00
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