Commit Graph

1200 Commits

Author SHA1 Message Date
microproofs
8b3504e9a1 fix: expect _ = ... not including the cast from data logic if the type is data and right hand has a type annotation 2023-06-23 18:39:12 -04:00
microproofs
226556bdd6 fix: builtins using the incorrect data to type conversion when used as a function param. 2023-06-23 14:31:19 -04:00
microproofs
db369da96e feat: Make traces produced by expect dependent on
the value of the tracing flag.
2023-06-23 14:03:23 -04:00
microproofs
dbfa08a5a7 fix: issue with tuple clause
It was not consuming the next case if there was no condition being checked in the clause.
Now it properly always consumes the next clause unless last clause.
2023-06-23 12:36:15 -04:00
microproofs
626033ff9b fix: attempt to convert from opaque before doing monomorphization 2023-06-22 18:20:31 -04:00
microproofs
24f5c4de6b fix: the final clause of a when expecting another clause afterwards in nested list cases.
fix: all elements were being destructured in tuple clauses even if not used
2023-06-19 21:43:38 -04:00
microproofs
e1f788b628 chore: commit tests first 2023-06-19 21:43:38 -04:00
KtorZ
4252ee6373 Implement formatter for anon binop. 2023-06-17 08:44:59 +02:00
KtorZ
91f03abb7b Support all binary operator in the anonymous binop parser. 2023-06-17 08:44:45 +02:00
KtorZ
d0b4c1c3b5 Add remaining boolean comparison operator to anon binop parser.
Nothing to see here as they all have the same signature. Implementing
  arithmetic bin-operators and boolean logic operators will require some
  more logic.
2023-06-17 07:57:37 +02:00
KtorZ
ec94230294 Extend parser to accept anonymous binop as expressions.
This is simply a syntactic sugar which desugarize to a function call with two arguments mapped to the specified binary operator.
  Only works for '>' at this stage as a PoC, extending to all binop in the next commit.
2023-06-17 07:36:11 +02:00
KtorZ
ba911d48ea Refactor 'is_capture' field on function expressions.
Refactored into an enum to make it easier to extend with a new variant to support binary operators.
2023-06-17 07:26:46 +02:00
microproofs
93135cebbb fix: redeemers in the script context are sorted by redeemer ptr not data hash 2023-06-16 12:24:44 -04:00
microproofs
e72a9f8e0b chore: rearrange code gen test order 2023-06-14 13:12:49 -04:00
rvcas
85d82e5aec chore: Release 2023-06-13 21:24:41 -04:00
rvcas
06079fa57e fix: wow 2023-06-13 21:03:16 -04:00
microproofs
379c2fe2bf chore: Release 2023-06-13 20:32:22 -04:00
rvcas
878fd4de48 feat: include column number in location 2023-06-13 20:30:43 -04:00
rvcas
44e066f907 feat: add a panic hook, present issue link 2023-06-13 20:30:43 -04:00
microproofs
c3bb7b0f75 fix: tail list being expected on when it should be empty 2023-06-13 12:03:38 -04:00
microproofs
1e0f7ea0ab fix: foldl test 2023-06-13 12:03:38 -04:00
microproofs
af36b5ac77 fixes:
fix: Issue where using var pattern in a when was passing the constr index instead of the constr
fix: Issue where expecting on a list had unexpected behaviors based on list length
2023-06-13 12:03:38 -04:00
rvcas
aeaec6bcd8 fix: record format when module select
- instead of checking the container we need to check
  the FieldAccess label.

closes #601
2023-06-13 00:18:32 -04:00
microproofs
a5245fdc6b chore: couple more identity tests in optimize step 2023-06-10 00:01:54 -04:00
microproofs
c5af6e0be3 chore: Release 2023-06-08 19:34:51 -04:00
KtorZ
6bd8e94e17 Preserve numeric underscore and hexadecimal notation through formatting. 2023-06-08 16:37:20 +02:00
KtorZ
0b7682306f Refactor formatter to use new 'self.int' helper function. 2023-06-08 15:34:28 +02:00
KtorZ
79a2174f0a Extend parser to support int as hexadecimal and numeric underscore.
We only allow numeric underscore for decimal numbers as I am not sure how we can define it for non-decimal numbers?
2023-06-08 15:33:50 +02:00
KtorZ
0ea11a4d13 Introduce new test cases for hexadecimal and underscore parsing. 2023-06-08 13:26:22 +02:00
rvcas
3fc9c8e0db chore: re-add empty line handling by @KtorZ
Co-authored-by: KtorZ
2023-06-07 17:21:04 -04:00
rvcas
41a08e4a06 chore: re-add nix stuff from @waalge
Co-authored-by: waalge
2023-06-07 17:16:56 -04:00
rvcas
8d107b1293 fix(build): --uplc must use Program<Name> to pretty print 2023-06-07 16:25:59 -04:00
rvcas
1747090931 fix: fmt crashing with comment at end of file
closes #568
2023-06-07 15:59:54 -04:00
KtorZ
0afc3aba13 Fix operator precedences, in particular |>
Fixes #571.
2023-06-06 17:17:47 +02:00
microproofs
5faa925aea fix: error when using nested boolean checks in when conditions 2023-06-06 03:04:12 -04:00
microproofs
bfd2a50a6b fix: zero arg functions were grabbing extra dependencies they didn't need to
fix: Had the wrong conversion for constant maps to plutus data. Fixed to check for right conversion
2023-06-04 15:23:36 -04:00
rvcas
cf6d04e95b chore: some clippy warnings 2023-06-02 19:47:52 -04:00
microproofs
cdf8bd6548 fix: list items in when were not being added to scope
fix: tuple clause must preserve previous clause properties state
2023-06-02 18:38:21 -04:00
microproofs
8f0cf289b4 fixes:
fix: rearrange clauses and fill in gaps now handles nested patterns in a uniform way
fix: discards in records was being sorted incorrectly leading to type issues
chore: remove some filter maps in cases where None is impossible anyway
chore: some refactoring on a couple functions to clean up
2023-06-02 18:38:21 -04:00
rvcas
9c29f4f26b fix: blueprints gen failing on List
closes #569

* added new methods to Definitions
  it doesn't use expect
* lookup was failing for the special map/pair case
  when resolving list generics

Co-authored-by: Pi <pi@sundaeswap.finance>
2023-06-02 17:53:10 -04:00
microproofs
6609ab335c chore: add another test for field destructuring in a list 2023-06-02 13:00:09 -04:00
Pi Lanningham
fbec4a9385 Update docs.rs
The doc comment was long, leading to an incorrect description on the command line
2023-06-02 02:25:04 -04:00
rvcas
cb9a140601 chore: Release 2023-06-02 00:34:07 -04:00
rvcas
335cc0c8bc feat(cli): rework uplc subcommands
closes #553

* rename flat to encode
* rename unflat to decode
* alias both to their old names
* both only print to stdout
  use can pipe to file
* split cbor and hex flags
* hex flag works for either cbor or flat
* encode takes --to flag
  [name, named-debruijn, debruijn]
* decode takes --from flag
  [name, named-debruijn, debruijn]
2023-06-01 23:50:59 -04:00
rvcas
e5d9398625 fix: add module name to type mismatch error
* if expected and given are equal then we show
  the module
* we could do it in all cases it looks kinda nice
* format is `Type - ModuleName`
2023-06-01 20:00:36 -04:00
microproofs
6955f79035 chore: update changelog
fix: Minor improvement to record update to use empty list instead of the null list from a record fields list.
2023-06-01 12:22:42 -04:00
microproofs
deee50b77e fix: just change as_key
Co-authored-by: Lucas Rosa <x@rvcas.dev>
2023-05-31 00:27:31 -04:00
microproofs
a6807f0bfb fix: seems like definition lookups weren't working
Co-authored-by: Lucas Rosa <x@rvcas.dev>
2023-05-31 00:18:05 -04:00
microproofs
c710d488d6 fix: need to sort record update args so they match indices order 2023-05-30 20:23:12 -04:00
microproofs
52a51acc69 fix: fix record update so it actually works
Created multiple tests of varying record updates
2023-05-30 20:23:12 -04:00