Commit Graph

2283 Commits

Author SHA1 Message Date
rvcas 135dbd8335 feat: handle pipe fn infer TODOs
This improves error messages for `a |> b(x)`.

We need to do a special check when looping over the args
and unifying. This information is within a function that does not belong
to pipe typer so I used a closure to forward along a way to add
metadata to the error when the first argument in the loop has a
unification error. Simply adding the metadata at the pipe typer
level is not good enough because then we may annotate regular
unification errors from the args.
2023-10-03 01:17:15 -04:00
microproofs fb6cbbec8b chore: Release 2023-09-29 22:08:09 -04:00
microproofs d131ec563b update changelog 2023-09-29 22:07:19 -04:00
microproofs add513790d hotfix: cyclic functions hoisted as a dependency used the wrong key to modify its own cyclic_calls 2023-09-29 22:01:43 -04:00
microproofs 82ceb5b696 chore: Release 2023-09-29 19:39:28 -04:00
microproofs 4aa5bda9eb update changelog 2023-09-29 19:37:44 -04:00
microproofs 83f0dd2cbe chore: fix blueprint validator tests 2023-09-29 17:47:39 -04:00
microproofs fb2ca0e3e0 inline is actually cheaper in a lot of cases 2023-09-29 17:47:39 -04:00
microproofs a2068ff062 fix: optmizer should never inline recursive functions
chore: some renames
2023-09-29 17:47:39 -04:00
microproofs 335560b81f Add placeholders for new terms in optimize
Update tests to check optimization is applied properly
2023-09-29 17:47:39 -04:00
microproofs 5e2a78173b optimization: increase the cases that inline_basic_reduce can handle 2023-09-29 17:47:39 -04:00
waalge 4c278e2f9d Use unknown when git dirty
Co-authored-by: Matthias Benkort <5680256+KtorZ@users.noreply.github.com>
2023-09-28 13:30:34 -04:00
waalge dbd4fe2aab fix rust version 2023-09-28 13:30:34 -04:00
waalge 14a6141046 shortRev 2023-09-28 13:30:34 -04:00
waalge 37ec2b121b rev 2023-09-28 13:30:34 -04:00
waalge f5fb84f104 try patch 2023-09-28 13:30:34 -04:00
waalge 3c11c95e01 insert into rust 2023-09-28 13:30:34 -04:00
waalge b4837c7ee6 add rev 2023-09-28 13:30:34 -04:00
microproofs 3fc469b7c7 update changelog 2023-09-28 01:05:05 -04:00
microproofs 47596f0324 feat: Remove tuple_index and record_access in favor of faster more direct functions for
accessing an item in a tuple or a field in a record
2023-09-28 01:05:05 -04:00
microproofs 1bcc9e8524 fix: expect on tuples from data now checks for no more items after the last 2023-09-26 12:49:50 -04:00
microproofs 8e75007a5f changelog: remove accidental duplicated Fixed 2023-09-25 21:16:19 -04:00
microproofs 38d15c677f Update changelog 2023-09-25 21:16:19 -04:00
microproofs 1ca3499128 chore: rename type 2023-09-25 21:16:19 -04:00
microproofs eb0b4dd6d8 update lock files 2023-09-25 21:16:19 -04:00
microproofs b8737a1021 add one more test for unbound generics 2023-09-25 21:16:19 -04:00
microproofs 534eb62a07 fix: There was a stack overflow due to passing unbound types to a function 2023-09-25 21:16:19 -04:00
microproofs 1cab479b81 fix: dependency hoisting for cyclic functions
Add more tests
2023-09-25 21:16:19 -04:00
microproofs 2f80d07132 fix: minor stuff including fixing the var name used in modify_cyclic_calls
and carefully controling the functions we add to sorted dependencies
2023-09-25 21:16:19 -04:00
microproofs f4310bcf33 feat: finished up mutual recursion
Now we "handle" vars that call the cyclic function.
That includes vars in the cyclic function as well as in other functions
"handle" meaning we modify the var to be a call that takes in more arguments.
2023-09-25 21:16:19 -04:00
microproofs ae3053522e feat: Update cyclic functions to be aware of being in a cycle.
Finish the creation of cyclic functions
The last part is to update vars that call into a function in the cycle
2023-09-25 21:16:19 -04:00
microproofs 794fc93084 remove unused structs 2023-09-25 21:16:19 -04:00
microproofs 0b38855ce4 add new enum for hoistablefunctions 2023-09-25 21:16:19 -04:00
microproofs ced818c455 checkpoint commit 2023-09-25 21:16:19 -04:00
microproofs 0fb9837ddf chore: change UserFunction to HoistableFunction to prepare for mututal recursion 2023-09-25 21:16:19 -04:00
KtorZ 984237075a Add new acceptance test scenario: 066
Mutua recursion.
2023-09-25 21:16:19 -04:00
microproofs 74b8ab62b2 chore: add comments 2023-09-25 21:16:19 -04:00
microproofs a4aa51ed2d WIP: first part of mutual recursion is done.
This involves creating the function definition and detecting cycles.
The remaining part is to "fix" the call sites
of the mutually recursive functions
2023-09-25 21:16:19 -04:00
Chris Gianelloni ecc5769c64 fix: restore static binary builds
Signed-off-by: Chris Gianelloni <cgianelloni@applause.com>
2023-09-20 16:25:45 -04:00
microproofs 5b018b7c07 test: add a test around a tuple of constructors when with many conditions 2023-09-20 16:20:42 -04:00
rvcas 4ca8681ca0
chore: commit example lock files 2023-09-20 13:26:49 -04:00
rvcas 1ecdf38842
fix: release 2023-09-20 13:03:38 -04:00
KtorZ ee4001d2c8
chore: Release 2023-09-20 18:03:46 +02:00
KtorZ 91d4cb9b12
Fix a date in the CHANGELOG for 0.17.0 2023-09-20 18:02:39 +02:00
microproofs 4650c64f6b update changelog 2023-09-20 11:51:01 -04:00
KtorZ f379039efc
Fix record shorthand causing parsing ambiguity in if/else expressions.
Fixes #735.
2023-09-15 09:41:00 +02:00
rvcas 1dea348a2e
chore: rust rover error 2023-09-13 21:29:05 -04:00
rvcas 7b915b7dcf
chore: allow clippy::arc_with_non_send_sync in tests 2023-09-13 19:07:45 -04:00
rvcas d808197507
chore: clippy fix 2023-09-13 18:17:59 -04:00
rvcas bc0824f4eb
chore: new aiken.lock files for examples 2023-09-13 18:17:40 -04:00