Commit Graph

69 Commits

Author SHA1 Message Date
Nicolas Abril
ecb213e91b [sc-495][sc-494] Update for new hvmc num ops and pre_reduce 2024-03-05 20:37:20 +01: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
0185d8f0e5 WIP add arguments option 2024-02-29 13:37:36 -03:00
LunaAmora
b9edd06eae Fix drop impl, remove crate 2024-02-29 13:19:45 -03:00
LunaAmora
7ab53c8a05 Add remove_trait_impls drop version 2024-02-29 13:19:45 -03:00
LunaAmora
6263b642bb Wip stacker and drop impl 2024-02-29 13:19:45 -03:00
tjjfvi
94c3b449f5 bump hvmc 2024-02-29 10:39:40 -05: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
LunaAmora
c56693eb23 Fix some parser error diagnostics 2024-02-15 11:54:38 -03:00
Nicolas Abril
b76a8fdf5c [sc-440] Update rust toolchain, solve new deprecation warnings 2024-02-12 14:58:34 +01:00
Nicolas Abril
3e9b3d7e58 [sc-410] Add untagged scott encoding option for ADTs 2024-02-09 12:50:59 +01:00
LunaAmora
6a500bcf1e Revert unlabeled dups/sups being 0 2024-02-02 19:11:20 -03:00
LunaAmora
9c3aa73b75 Fix sup/dup behavior when not using lazy mode 2024-02-02 13:43:14 -03:00
LunaAmora
9be542b0c2 Improve lazy mode diagnostics and usability with the rebase
And update tests
2024-02-02 10:59:44 -03:00
LunaAmora
d42e4e9735 Update all dups to be tag 0 2024-02-02 10:58:46 -03:00
LunaAmora
8771b9ae0e Re-add unlabeled sup/dup compiling to tag 0 2024-02-02 10:58:46 -03:00
LunaAmora
17b74c6fe0 Add lazy mode 2024-02-02 10:58:46 -03:00
imaqtkatt
6e93dbc316 Add location and highlight on parser errors 2024-01-31 13:50:10 -03:00
LunaAmora
1e0ef9d7c3 Update hvmc version, fix pre-reduce 2024-01-15 16:37:52 -03:00
imaqtkatt
c1d651aceb Add tup-wildcard in split rule 2024-01-12 17:22:48 -03:00
LunaAmora
47a267b001 Fix readback of rules that reconstructs tups/sups 2024-01-12 14:19:14 -04:00
FranchuFranchu
1dc237f203 Add "fusing functions" tutorial. 2024-01-11 15:32:41 -03:00
LunaAmora
6f9110d42f Update deps to remove zerocopy unsoundness 2024-01-08 08:18:34 -04:00
Nicolas Abril
23b8af1806 Update hvml to new hvmc op1 node, remove restriction on pre-reduction 2023-12-08 13:56:26 +01:00
Nicolas Abril
e7a6aa7937 [sc-287] Improve prereduction pass, with new optimization level cli option 2023-12-06 19:43:54 +01:00
imaqtkatt
656dad5ba9 Add 60 bit numbers support 2023-11-29 16:45:05 -03:00
LunaAmora
e993812881 Update hvm-core verion 2023-11-24 10:36:55 -04:00
LunaAmora
cfdf387e58 Update hvm-core git dep 2023-11-21 07:41:33 -04:00
imaqtkatt
e5a0119d3e WIP opx term to net 2023-11-21 07:09:12 -04:00
LunaAmora
50b27e3d04 Start hvmc version update 2023-11-21 07:05:50 -04:00
LunaAmora
930b3593ea Remove pretty_assertions dev-dependency 2023-11-13 08:38:21 -04:00
LunaAmora
e12433c19c Migrate tests to cargo-insta 2023-11-13 08:38:21 -04:00
Nicolas Abril
e8e81f331d [sc-119] Remove anyhow dependency 2023-11-10 18:54:35 +01:00
Nicolas Abril
73f9f8c3b8 [sc-119] Remove bimap dependency 2023-11-10 18:54:35 +01:00
Nicolas Abril
27ff188477 Remove derive_more and thiserror dependencies 2023-11-10 18:54:35 +01:00
Nicolas Abril
4894c8b64c [sc-119] Remove miette dependency 2023-11-10 18:54:35 +01:00
Nicolas Abril
b1488439cf [sc-119] Remove byte-unit dependency 2023-11-10 18:54:00 +01:00
imaqtkatt
b617dc0dbd WIP generate scott adts 2023-11-10 14:49:38 -03:00
Nicolas Abril
88b5068d5a [sc-155] Add pattern matching syntax WIP 2023-10-31 16:07:51 -04:00
LunaAmora
8edda5cdb3 Update hvm-core version 2023-10-30 10:14:13 -04:00
Nicolas Abril
12a1a0b0cd Small cleanups 2023-10-17 10:29:52 +02:00
imaqtkatt
f04396f820 Refactor to use latest hvm-core 2023-10-13 13:43:35 -03:00
Nicolas Abril
03a589dcb2 Replace If expression with Match expression 2023-10-13 17:46:43 +02:00
Nicolas Abril
67b9fceaa6 Move variable sanitization into the new file structure and break it into the different steps 2023-10-12 19:15:50 +02:00
Nicolas Abril
95ea8fca50 Remove ast::core.rs in favor of hvmc::LBook 2023-10-12 18:20:22 +02:00
imaqtkatt
67616abf11 Fix wrong error outputs by using miette 2023-10-09 18:33:12 -03:00
Nicolas Abril
bc280b750f Update to latest hvm-core version, add numbers back, breaks readback 2023-10-09 20:07:48 +02:00