KtorZ
47a15cf8b2
Fix formatting of long multiline if/is expressions.
2024-09-15 14:59:47 +02:00
KtorZ
12c0d0bc04
Fix formatter adding extra unnecessary newlines after literal lists clause values or assignments.
2024-09-15 14:40:40 +02:00
microproofs
7047c7720e
chore: Release
2024-09-13 16:52:20 -04:00
KtorZ
a9a7a4f977
Fix few formatter annoyances.
2024-09-13 18:53:26 +02:00
KtorZ
799546b654
Show strings as UTF-8 text string during type reification
...
Instead of defaulting to hex-encoded bytearrays.
2024-09-13 18:34:54 +02:00
KtorZ
9cf908d07f
Fix type reification of Data
2024-09-13 18:34:54 +02:00
KtorZ
4fb13af49f
Fix type reification of PRNG.
2024-09-13 18:34:53 +02:00
microproofs
16e222e997
Clippy fixes
2024-09-12 19:34:40 -04:00
microproofs
3f2de2665d
Clippy fixes
2024-09-12 19:13:31 -04:00
microproofs
362ca2544f
Fixed remaining issue when all parameters passed in to a recursive function were static.
...
Also fixed issue where modifying the calls in the airtree lead to an out of bounds index.
2024-09-12 17:03:48 -04:00
microproofs
30e66be568
Fix soft casting case
2024-09-12 17:03:48 -04:00
microproofs
49ef3a740c
Cargo tests now pass
2024-09-12 17:03:48 -04:00
microproofs
7c52094b15
Making progress on using interning in gen_uplc
...
Done interning for uniqueness. Now to fix the static optimization
Remove unused function
Fixing issues. Have a few remaining tests
2024-09-12 17:03:36 -04:00
KtorZ
0905146140
chore: Release
2024-09-10 13:25:04 +02:00
KtorZ
7741be64f8
Fix validator's fallback handler generation
...
Fixes #1015 .
2024-09-10 10:48:06 +02:00
KtorZ
616dec8f03
Fix formatter getting rid of curly braces around multi-line constants.
2024-09-08 16:23:41 +02:00
KtorZ
0c0369ad61
Fix needed parentheses under trace-if-false disappearing when formatting.
2024-09-08 16:21:45 +02:00
KtorZ
b6d99142f9
Fix formatting of multi-line alternative patterns.
2024-09-08 13:11:53 +02:00
KtorZ
943d90a99e
Fix invalid interpolation in error message.
2024-09-07 18:23:35 +02:00
KtorZ
b7ea6ea391
Fix list-pattern formatting
2024-09-07 14:50:47 +02:00
KtorZ
19e30b10f9
Fix #1013
2024-09-06 12:28:12 +02:00
KtorZ
888b7e34c6
Drop debug line that stayed in source code x_x
2024-09-06 12:15:55 +02:00
rvcas
be31a7ce38
chore: Release
2024-09-03 17:01:41 -04:00
rvcas
20ac89fc33
chore: reset version
2024-09-03 17:01:24 -04:00
KtorZ
6a438bc8cd
Fix missing locations from generated handler code.
2024-09-03 16:21:53 -04:00
microproofs
a6bc0f7157
Fix positioning on unwrap_void
2024-09-03 16:21:53 -04:00
microproofs
2be76d7cda
Use Delay error directly when casting from data without traces
2024-09-03 16:21:53 -04:00
KtorZ
f60df16bc2
Preserve type-aliases during blueprint generation.
2024-09-03 16:39:50 +02:00
KtorZ
7bfc01413b
Add missing parser snapshots.
2024-09-01 18:12:46 +02:00
KtorZ
53af366b59
Ensure uniqueness of intermediate variables in expect_type_assign
...
For recursive structures like Tuples, the span itself isn't enough to
ensure uniqueness of elements (in particular tuples) holding elements
of the same type.
2024-09-01 18:10:15 +02:00
KtorZ
6d0fe560e2
Provide UPLC machine error as trace context on test failure
2024-08-31 00:01:54 +02:00
KtorZ
fed464278d
Allow field access on 'else'.
2024-08-31 00:01:46 +02:00
KtorZ
7aefa85de1
Handle importing validator handler into test module.
2024-08-30 22:43:10 +02:00
KtorZ
5dfa3e7cca
Add label annotation where missing in type-checker errors.
2024-08-30 18:41:25 +02:00
KtorZ
75c059bf65
Fix module constant usage warnings.
2024-08-30 18:24:35 +02:00
KtorZ
a06383d333
Use const instead of zero-arg functions in few code-gen tests.
2024-08-30 14:47:22 +02:00
KtorZ
ef89691331
Ensure code-gen's Program version/semantic matches Plutus version
2024-08-30 14:45:02 +02:00
microproofs
e772ff1787
Missed some zero parameter check
2024-08-29 16:30:30 +02:00
KtorZ
6c2e3272da
Re-implement and extend docs formatter for constants
2024-08-29 16:25:35 +02:00
KtorZ
71f90ad49f
Fix constant definition parser.
...
Wouldn't allow a proper sequence of results. Now it does.
2024-08-29 16:25:12 +02:00
KtorZ
9063549f2e
Re-use expr formatter for constants.
2024-08-29 16:25:12 +02:00
microproofs
f35afe8d65
Implement SimpleExpr logic for configuration parsing
...
We can now use boolean, lists & all in configuration.
2024-08-29 16:25:10 +02:00
microproofs
f674f9ee97
hoist functions to super constants too
2024-08-29 16:24:14 +02:00
KtorZ
cd0a9440e8
Allow any expression as constants
...
This is only a start. It compiles, but with a few TODOs left open. In particular, it doesn't currently handle constants depending on other constants or functions; nor does it hoist constants.
2024-08-29 16:24:12 +02:00
KtorZ
79cf0b8d97
Fix test_framework tests trying to implement function on foreign type.
2024-08-29 13:49:09 +02:00
KtorZ
c21466831c
Bump versions to 1.1.0, in anticipation.
2024-08-29 09:12:37 +02:00
KtorZ
e31c6de04e
Adjust module organization to facilitate resurrection of the playground.
...
The playground doesn't / cannot depend on aiken-project because that becomes a gigantic pain. So instead, we try to keep essential stuff inside aiken-lang when possible.
2024-08-29 09:12:37 +02:00
rvcas
d337e601cb
chore: add a test for by name with params
2024-08-27 18:10:46 -04:00
KtorZ
efeda9a998
Prevent non-default fallback on exhaustive validator
...
Technically, we always need a fallback just because the way the UPLC
is going to work. The last case in the handler pattern matching is
always going to be else ...
We could optimize that away and when the validator is exhaustive, make
the last handler the fallback. Yet, it's really a micro optimization
that saves us one extra if/else. So the sake of getting things
working, we always assume that there's a fallback but, with the extra
condition that when the validator is exhaustive (i.e. there's a
handler covering all purposes), the fallback HAS TO BE the default
fallback (i.e. (_) => fail).
This allows us to gracefully format it out, and also raise an error in
case where there's an extraneous custom fallback.
2024-08-27 20:16:45 +02:00
KtorZ
4003343444
Fix default annotation for spend's optional datum and mint argument.
...
When there's no type annotation in a validator handler signature, we
provide default annotation to help the type-checker. However, for
spend's datum and mint policy_id, those annotations mustn't be `Data`,
but rather Option<Data> and Bytearray.
Without that, when no annotation are provided, the compiler infer
invalid types and fails with incongruous errors.
2024-08-27 18:42:10 +02:00