imaqtkatt
7cae4f5535
Add no optimization tests
2024-04-03 09:35:45 -03:00
imaqtkatt
3635d6da71
Add store fail and load fail tests
2024-04-03 08:28:55 -03:00
imaqtkatt
5ca0186b06
Add tests using HVM.store and HVM.load
2024-04-02 16:30:37 -03:00
imaqtkatt
8ec8fcc9bb
Call inline after pre reduce
2024-04-02 12:02:51 -03:00
imaqtkatt
88c9a7d1cf
Readd missing cli inline test
2024-04-02 10:14:28 -03:00
imaqtkatt
5f435033b8
Add inlining test for simple node types
2024-04-02 10:00:44 -03:00
imaqtkatt
e9d61dd37a
Update desugar inline to compile inline
2024-04-02 08:50:01 -03:00
imaqtkatt
2cf3b8c4ba
Remove simplify ref passes and use inet level inlining
2024-04-02 08:43:40 -03:00
imaqtkatt
3126eba2ba
Readd oall eta tests
2024-04-01 11:26:53 -03:00
imaqtkatt
b8a9632f5c
Use inet level eta reduction pass
2024-04-01 11:24:39 -03:00
Nicolas Abril
d60935d3de
[sc-517] Remove snapshots of removed tests
2024-03-29 11:06:22 +01:00
Nicolas Abril
b18df385a2
[sc-517] Update docs, fix not checking fn arity, refactor match def checks
2024-03-29 10:50:16 +01:00
Nicolas Abril
58f1f53a7d
[sc-517] Update tests after rebase
2024-03-29 10:50:16 +01:00
Nicolas Abril
7611eaadb0
[sc-517] Use kind2-like pattern matching terms, remove nested lets and adt lets
2024-03-29 10:49:36 +01:00
imaqtkatt
30d7888d23
Update combinators test and improve docs
2024-03-28 19:10:49 -03:00
imaqtkatt
c695bbcf2c
Update float children lambda case and docs
2024-03-28 16:59:03 -03:00
imaqtkatt
1f273c4fc4
Refactor float combinator logic and implement float iterator
2024-03-28 15:34:42 -03:00
imaqtkatt
bd8fb66b8c
Refactor float combinators
2024-03-28 09:10:10 -03:00
imaqtkatt
ec24ae2a80
Update float combinators doc and combinators test
2024-03-27 16:41:30 -03:00
imaqtkatt
bcbcdc5442
Refactor float combinators and add combinators test
2024-03-27 15:51:59 -03:00
imaqtkatt
b4a79fee1b
Add deref loop test and remove unnecessary clone
2024-03-27 11:22:12 -03:00
imaqtkatt
92aa4b3d4a
Refactor float combinators to extract unsafe terms
2024-03-27 11:18:37 -03:00
imaqtkatt
4bdf93e5c1
Refactor add merge separator constant
2024-03-25 15:52:34 -03:00
imaqtkatt
3ccd408a26
Improve cycle display for merged definitions
2024-03-25 14:21:47 -03:00
imaqtkatt
175a6f6d5c
Merge pull request #242 from HigherOrderCO/feature/sc-526/improve-deref-loop-warning-in-strict-evaluation
...
[sc-526] Improve deref loop warning in strict evaluation
2024-03-22 14:32:13 +00:00
imaqtkatt
76d26d61b0
Update tests snapshots
2024-03-22 10:52:09 -03:00
imaqtkatt
a8dc4ac4b8
Remove generated functions from error message
2024-03-22 10:49:20 -03:00
imaqtkatt
ad4f1bba95
Update recursion error message and update docs
2024-03-22 10:21:48 -03:00
imaqtkatt
f97b7c1379
Update recursion error message and update docs
2024-03-22 09:35:44 -03:00
imaqtkatt
e90644d706
Update mutual recursion error message
2024-03-21 20:13:26 -03:00
tjjfvi
b9ef2a0f9d
update snapshots
2024-03-21 08:11:16 -04:00
tjjfvi
d9b5a80c65
upgrade hvmc version
2024-03-21 08:09:01 -04:00
imaqtkatt
a010f4faef
Improve mutual recursion error message
2024-03-20 16:50:22 -03:00
imaqtkatt
26da3d3284
Merge pull request #241 from HigherOrderCO/feature/sc-519/add-syntax-sugar-for-nats
...
[sc-519] Add syntax sugar for Nats
2024-03-19 19:43:02 +00:00
imaqtkatt
3da5db0c01
Change swap_remove to shift_remove
2024-03-19 14:37:30 -03:00
imaqtkatt
6b7cbeb7be
Update cspell and add nat resugar test
2024-03-19 13:59:17 -03:00
FranchuFranchu
8dc9ec79fc
Remove irrelevant tests.
2024-03-19 10:43:23 -03:00
FranchuFranchu
5690bee2fc
Update hvm-lang to make it compatible with hvm-core n-ary nodes.
2024-03-19 10:43:21 -03:00
imaqtkatt
cf69b99e5a
Add builtin and syntax sugar for Nats
2024-03-18 16:37:56 -03:00
imaqtkatt
13f08ea26b
Merge pull request #239 from HigherOrderCO/feature/sc-518/add-non-duping-use-expressions
...
[sc-518] Add non-duping use expressions
2024-03-18 17:56:01 +00:00
FranchuFranchu
45720629a7
Update tests.
2024-03-15 15:58:52 -03:00
imaqtkatt
8cc2e54683
Add use expression
2024-03-15 15:35:41 -03:00
imaqtkatt
148a0e2e03
Change to use substitutions instead of creating let terms
2024-03-14 15:47:13 -03:00
Nicolas Abril
41a526ec0f
[sc-504] Fix wrong variable being used on match binds with same name
2024-03-13 17:30:54 +01:00
Nicolas Abril
3ff0a6047e
[sc-508] Improve standard test pipeline, apply fmt and clippy suggestions to test
2024-03-12 20:59:30 +01:00
Nicolas Abril
ae5b0b642d
[sc-508] Fix hang run test
2024-03-12 20:45:31 +01:00
Nicolas Abril
227b723377
Merge pull request #234 from HigherOrderCO/fix-debug-mode-panic
...
Remove expand in debug hook
2024-03-12 19:30:33 +00:00
imaqtkatt
85c5c45fb7
Add debug flag cli test
2024-03-12 16:21:44 -03:00
Nicolas Abril
6b5581972e
[sc-507] Update generated name of floated combinators
2024-03-12 20:17:05 +01:00
Nicolas Abril
69fc8423cc
Remove unreviewed test snapshot
2024-03-12 19:57:24 +01:00
Nicolas Abril
3cc5a7a242
[sc-503] Refactor error passing
2024-03-12 19:26:05 +01:00
imaqtkatt
58ee6c732b
Update cycle error message
2024-03-12 13:43:52 -03:00
imaqtkatt
0271739d9f
Fix typo
2024-03-12 12:43:13 -03:00
imaqtkatt
4645b3231b
Update cycle error message
2024-03-12 12:41:08 -03:00
imaqtkatt
4e7c204697
Add mutual recursion check for strict mode
2024-03-12 10:10:43 -03:00
imaqtkatt
5fd3865f18
[sc-505] Include strict and lazy results
2024-03-08 15:28:43 -03:00
imaqtkatt
482403ae63
Remove commented code
2024-03-07 17:51:29 -03:00
imaqtkatt
52c64b71a7
Show HVM_log output in run_file tests
2024-03-07 17:41:37 -03:00
LunaAmora
518a513707
Update test snap
2024-03-07 14:38:51 -03:00
LunaAmora
6375099cf4
Fix typo, update tests snaps
2024-03-07 14:25:46 -03:00
LunaAmora
b2d783c1d7
Update how warns are displayed, add repeated bind warning
2024-03-07 14:25:46 -03:00
imaqtkatt
12f4806b82
Merge pull request #224 from HigherOrderCO/feature/sc-496/add-cli-tests-for-hvm-lang
...
[sc-496] Add CLI tests for hvm-lang
2024-03-07 08:26:09 -03:00
Nicolas Abril
3eff3e28cd
[sc-489] Use the AST iterators in more places, fixing some bugs
2024-03-06 19:56:20 +01:00
Nicolas Abril
0cc4399e20
Remove unnecessary unstable feature
2024-03-06 18:43:32 +01:00
imaqtkatt
b29ced1bb2
Include cli tests stderr output
2024-03-06 11:54:24 -03:00
imaqtkatt
68882962f3
Add more optargs cli tests
2024-03-06 10:58:53 -03:00
imaqtkatt
831eb07ede
Add tests using cli
2024-03-06 09:41:58 -03:00
Nicolas Abril
ecb213e91b
[sc-495][sc-494] Update for new hvmc num ops and pre_reduce
2024-03-05 20:37:20 +01:00
Nicolas Abril
319b2464ac
Merge pull request #219 from HigherOrderCO/feature/sc-479/update-encodings-to-make-use-of-hvmc-n-ary
...
[sc-479] Update encodings to make use of hvmc n-ary nodes. Add n-ary tups/dups
2024-03-04 15:15:10 +01:00
imaqtkatt
cfb054c3d1
Merge pull request #220 from HigherOrderCO/feature/sc-490/remove-restriction-of-types-not-sharing-names
...
[sc-490] Remove restriction of types not sharing names with constructors
2024-03-04 10:35:52 -03:00
imaqtkatt
e39c66fbbf
Add duplicated data with defname test
2024-03-04 10:29:57 -03:00
imaqtkatt
a179e1042f
Allow constructors share names with data types
2024-03-04 09:05:32 -03:00
Nicolas Abril
68afe6afa3
Add crlf test
2024-03-02 00:39:31 +01:00
Nicolas Abril
c85d01a817
Merge remote-tracking branch 'origin/main' into feature/sc-479/update-encodings-to-make-use-of-hvmc-n-ary
2024-03-01 22:11:22 +01:00
Nicolas Abril
54af9f1a5b
Merge remote-tracking branch 'origin/main' into feature/sc-479/update-encodings-to-make-use-of-hvmc-n-ary
2024-03-01 22:00:46 +01:00
Nicolas Abril
b5fd2e2af7
[sc-479] Update encodings for better performance, add n-ary dup/tup
2024-03-01 21:22:10 +01:00
imaqtkatt
8425bf0ae8
Change write macro to writeln
2024-03-01 14:32:14 -03:00
imaqtkatt
2e9b3d3949
Merge pull request #217 from HigherOrderCO/feature/sc-483/add-an-option-to-pass-arguments-to-hvm-lang
...
[sc-483] Add an option to pass arguments to hvm-lang programs
2024-03-01 11:42:49 -03:00
imaqtkatt
5cf5d24086
Refactor cli arguments
2024-03-01 09:25:56 -03:00
imaqtkatt
5870f0d6e5
Remove static arguments compilation
2024-02-29 14:39:30 -03:00
imaqtkatt
d2ab89fb31
Apply cli arguments at lambda level
2024-02-29 13:38:55 -03:00
imaqtkatt
98bf2f708f
Update golden tests file
2024-02-29 13:38:55 -03:00
imaqtkatt
0185d8f0e5
WIP add arguments option
2024-02-29 13:37:36 -03:00
LunaAmora
216175a7f2
Impl clone for Term, remove unecessary clones
2024-02-29 13:19:45 -03:00
tjjfvi
1880c8c8f2
fix test memory sizes
2024-02-29 10:45:26 -05:00
Nicolas Abril
fb8f3fefc7
[sc-441] Fix encoding of string patterns
2024-02-28 13:09:00 +01:00
Nicolas Abril
0fc957ea6e
[sc-441] Add string patterns
2024-02-27 21:58:03 +01:00
Nicolas Abril
0c509b4367
[sc-301] Some small improvements on mathing code
2024-02-27 19:35:19 +01:00
Nicolas Abril
5f2d835a77
[sc-441] Add char patterns
2024-02-27 18:16:16 +01:00
Nicolas Abril
39ffe05d72
[sc-301] Add pattern matching on non-zero numbers
2024-02-27 18:16:16 +01:00
LunaAmora
5548cff89b
Rename pass, add flag docs
2024-02-27 10:00:02 -03:00
LunaAmora
65fd779598
Revert linearize_extra to an linearize_matches
argument
2024-02-26 15:43:04 -03:00
LunaAmora
e903af152f
Refactor lift_combinaotors to work with linearize_matches change
2024-02-26 13:42:29 -03:00
LunaAmora
19181598da
Make supercombinators work with non-linear match arms
2024-02-26 12:43:01 -03:00
FranchuFranchu
c03b1d233b
Add HVM.print
[sc-469] ( #206 )
2024-02-26 10:01:55 -03:00
imaqtkatt
59239ea822
Add escaped backtick
2024-02-26 08:44:12 -03:00
imaqtkatt
9efd21cdc5
Add single quote normalization
2024-02-26 08:06:18 -03:00
imaqtkatt
3b32ee6660
WIP add missing CR, null and quote escape sequences
2024-02-23 17:51:29 -03:00
imaqtkatt
2fbfa5c3aa
Fix pre reduce inert redexes
2024-02-23 15:27:23 -03:00
Nicolas Abril
751af02f49
Add broken black box pre-reduce test
2024-02-23 14:04:00 +01:00
Nicolas Abril
45447b4d51
[sc-403] Change pat-match algorithm, add multi-arg matches
2024-02-22 20:38:00 +01:00
LunaAmora
79ee00125e
Fix parser hanging with large generated file
2024-02-22 15:38:14 -03:00
LunaAmora
2667e58b17
Add cargo.lock, remove unused snap
2024-02-22 15:15:19 -03:00
FranchuFranchu
f51e4eb22e
Make hvm lang compatible with ptr refactor [sc-362]
...
Add `HVM.log` and `HVM.black_box`, together with their documentation.
Add basic CLI support for limiting rewrites.
Trimming names and adapting them for hvm-core is not necessary anymore.
Update `pre_reduce`. `pre_reduce` can now reduce unrelated redexes in defs that use builtin defs. This is done by making builtin defs "inert" on pre-reduction, and then adding back their interactions to the reduced net. `pre_reduce_refs` is redundant now and has been removed.
Make `Ctx` and `compile_book` take a mutable borrow of `Book`.
Sister PR: https://github.com/HigherOrderCO/hvm-core/pull/60
2024-02-22 15:00:29 -03:00
imaqtkatt
23d12f8ca6
Add used_once_names test
2024-02-22 10:36:04 -03:00
imaqtkatt
a264cd16bb
Change dup name when is used once
2024-02-22 10:31:44 -03:00
Luna
068d25fe10
Merge pull request #197 from HigherOrderCO/chore/sc-450/refactor-error-handling-to-handle-multiple
...
[sc-450] Refactor error handling
2024-02-21 14:12:53 -03:00
LunaAmora
e69a2c2a79
Add '.' to the end of all errors
2024-02-21 11:59:22 -03:00
LunaAmora
6210455866
Improve ExhaustivenessErr limit hint
2024-02-21 11:40:42 -03:00
LunaAmora
71c4a4e4ec
Add limit for exhaustiveness errors, and use verbose flag to remove it
2024-02-21 10:54:13 -03:00
LunaAmora
589d47a5db
Merge errors from the same definition
2024-02-21 09:46:03 -03:00
imaqtkatt
9a03279a0c
Update str_backtick test
2024-02-21 09:30:16 -03:00
imaqtkatt
7c2a2be24a
Add string backtick support
2024-02-21 09:07:14 -03:00
LunaAmora
2171a3ae6d
Fix linearize with erased patterns let
2024-02-20 17:01:00 -03:00
LunaAmora
5f5467109f
Improve API to return Info
instead of String
as the error type
2024-02-20 14:39:10 -03:00
LunaAmora
3846d7c75f
Improve entrypoint related functions to use the book.entrypoint field
2024-02-20 12:50:10 -03:00
LunaAmora
b41abe8edb
Refactor error handling
2024-02-20 10:30:40 -03:00
imaqtkatt
a24772f6f4
Merge pull request #196 from HigherOrderCO/chore/sc-446/separate-the-different-match-expression-transformations
...
[sc-446] Separate the different match expression transformations
2024-02-20 10:04:50 -03:00
imaqtkatt
d1d874489f
Refactor cleanup and update tests
2024-02-19 15:55:52 -03:00
LunaAmora
fe057eab51
Refactor var-use counting when linearizing
2024-02-16 15:31:46 -03:00
LunaAmora
7dc78cac6f
Remove Missing Parenthesis parser error
2024-02-16 10:06:50 -03:00
LunaAmora
0776b48781
Revert to using soft_keyword instead of Token::Data
2024-02-16 09:29:03 -03:00
LunaAmora
cfd6e10888
Parser adjustments to accept Data as non-top-level names
2024-02-15 14:48:02 -03:00
LunaAmora
c56693eb23
Fix some parser error diagnostics
2024-02-15 11:54:38 -03:00
imaqtkatt
a9d1d22f3b
Add id_undescore test
2024-02-14 08:37:02 -03:00
imaqtkatt
727ad370c9
Fix nam token priority
2024-02-14 08:22:58 -03:00
Nicolas Abril
b2e6d0410e
Change Name into Arc<str>
2024-02-13 14:50:30 +01:00
Nicolas Abril
222637ab71
[sc-443] Rename builtin constructors
2024-02-12 18:09:40 +01:00
Nicolas Abril
33344c69db
Merge pull request #189 from HigherOrderCO/chore/sc-440/update-rust-toolchain-version-for-hvml
...
[sc-440] Update rust toolchain, solve new deprecation warnings
2024-02-12 18:07:29 +01:00
Nicolas Abril
343c38d5ae
[sc-440] Apply new clippy lints
2024-02-12 15:23:13 +01:00
imaqtkatt
a57343f85f
Refactor rename old match field occurrences
2024-02-12 10:50:21 -03:00
Nicolas Abril
89471c2032
[sc-438] Simplify user vs builtin logic
2024-02-09 18:08:35 +01:00
Nicolas Abril
daf34d3784
[sc-437] Implement fmt::Display for more things
2024-02-09 14:58:18 +01:00
Nicolas Abril
25a6926ab1
[sc-436] Separate adt and builtin resugaring into separate passes
2024-02-09 13:04:45 +01:00
Nicolas Abril
3e9b3d7e58
[sc-410] Add untagged scott encoding option for ADTs
2024-02-09 12:50:59 +01:00
imaqtkatt
e32af0e447
Add tests for custom entrypoint
2024-02-08 16:14:46 -03:00
imaqtkatt
7a38b42645
Add custom entrypoint option
2024-02-08 15:32:04 -03:00
imaqtkatt
999b3d789a
Update tests snapshots
2024-02-07 14:02:41 -03:00
imaqtkatt
0ff494397e
Move long_name test to compile_file
2024-02-07 13:58:22 -03:00
imaqtkatt
483388d495
Change inline criteria to only small nodes
2024-02-07 13:58:22 -03:00
imaqtkatt
c8ab1b31f6
Minor adjustments and update tests snapshots
2024-02-07 13:55:18 -03:00
Nicolas Abril
b8c25e50df
[sc-407] Refactor how names are stored and defs are referenced
2024-02-07 15:52:38 +01:00
LunaAmora
05651707ef
Fix escaped char inside strings literals
2024-02-06 08:27:30 -03:00
Luna
422876c503
Merge pull request #176 from HigherOrderCO/feature/sc-433/fix-unreachable-on-invalid-op2-op2-interaction
...
[sc-433] Add Term::Invalid for invalid readbacks
2024-02-05 14:54:46 -03:00
imaqtkatt
9b7719d7f0
Dont desugar snil in errors
2024-02-05 14:43:27 -03:00
LunaAmora
a492a7f683
Update Term default , update tests
2024-02-05 14:15:53 -03:00
LunaAmora
0bcabe93bc
Add Term::Invalid for invalid readbacks
2024-02-05 12:53:27 -03:00
imaqtkatt
38b479d731
Implement simpler resugar for string and list
2024-02-05 11:52:29 -03:00
imaqtkatt
0a00d27144
Fix list app resugar
2024-02-05 08:12:42 -03:00
LunaAmora
6a500bcf1e
Revert unlabeled dups/sups being 0
2024-02-02 19:11:20 -03:00