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
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
cb9a140601
chore: Release
2023-06-02 00:34:07 -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
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
microproofs
a65821d5ab
fix: constrs that contain fields now work when passed as an arg to a function.
...
Convert acceptance test 22
Create test for passing constr as a function
2023-05-30 17:28:52 -04:00
rvcas
26a607eb00
fix: bad parsing of comments at end of file closes #551
2023-05-30 11:07:39 -04:00
rvcas
2860bac4c6
fix: bad parsing for module select type annotations closes #550
2023-05-30 10:39:49 -04:00
rvcas
7b3e1c6952
feat: adjust failing test syntax
...
* also add a formatter test
2023-05-25 18:21:12 -04:00
rvcas
a44b5e1a77
test: adjust formatter tests after latest tweaks
2023-05-25 17:37:53 -04:00
rvcas
151db8d4ae
fix: formatter weirdness relates to #542
2023-05-25 17:19:02 -04:00
rvcas
a124a16a61
feat(tests): implement a way to express that tests can fail
2023-05-25 16:54:53 -04:00
microproofs
8e60234562
chore: Release
2023-05-17 18:04:45 -04:00
microproofs
173154e406
fix: (code gen): expect type now properly tracks constructor dependency.
...
This was specific to code gen generated functions.
2023-05-17 17:56:01 -04:00
rvcas
f2d8c8938c
chore: Release
2023-05-14 21:25:29 -04:00
microproofs
4838ebd39e
feat: record modules are no longer unimplemented for no fields
...
refactor: remove some clones and use a ref instead
test: add acceptance test 81
2023-05-14 18:30:51 -04:00
microproofs
3356e2ecd0
fix: nested constrs with a single index was ignoring fields
2023-05-14 17:33:01 -04:00
rvcas
1fb31e246c
fix: better conditional comp for wasm
2023-05-11 16:59:54 -04:00
rvcas
e1a75391a1
chore: Release
2023-05-09 23:16:59 -04:00
microproofs
4b8fd1769a
chore: change pattern todos to have a better error message
2023-05-08 16:27:43 -04:00
microproofs
49898f7420
fix: to_data_builtin to operate on arg not func result
2023-05-08 16:15:09 -04:00
microproofs
b36cf1c029
chore: refactor default functions in uplc_code_gen.
...
feat: Add an identity optimization to remove functions that return the argument only.
2023-05-08 16:15:09 -04:00
microproofs
d2dbae1cbf
fix:
...
Negative numbers now show up as a constant instead of 0 - that number
Expect on constructors without field maps no longer panics
Expect on constructors with discard as assigned field names now no longer throws free unique
2023-04-30 14:44:54 -04:00
microproofs
b1728b57b8
chore: Release
2023-04-28 17:11:56 -04:00
microproofs
7201163b77
fix: better function hoisting for code gen functions
...
mainly code gen function dependencies won't be hoisted to the top.
2023-04-28 17:05:46 -04:00
rvcas
baa2cef6c4
feat(playground): impl clone for some errors
2023-04-24 17:13:20 -04:00
microproofs
ff87a4c60f
fix: "when bool is" was not properly assigning term to body when not a complex clause
...
Add some end to end tests to test uplc
2023-04-23 12:51:23 -04:00
microproofs
9bb1a88f23
fix: expect [] on a non-empty list now fails.
2023-04-21 17:39:21 -04:00
rvcas
c9a762a13c
fix: we weren't including the name unused var warning
2023-04-20 16:53:56 -04:00
microproofs
c2ee631d07
feat: new setup for the gen_uplc testing
...
* new test only module aiken_project::tests
* move TestProject to tests/mod.rs
* new tests go in gen_uplc.rs
2023-04-19 16:08:55 -04:00
microproofs
e4276d7f5a
move uplc tests to new location
2023-04-19 16:08:55 -04:00
microproofs
23a7e7e680
chore: convert acceptance test 5
...
Also constructors with no fields are now converted to a constant data term.
2023-04-19 16:08:55 -04:00
microproofs
7dd13f8d73
feat: add end to end tests to replace acceptance tests with strict uplc comparison.
...
Add acceptance tests 1,2, 6 as end to end tests
2023-04-19 16:08:55 -04:00
rvcas
3182dac908
chore: Release
2023-04-17 10:53:30 -04:00
rvcas
3b351d36fb
fix(aiken-lang): assignment as last expr in when and if
2023-04-16 19:55:47 -04:00
rvcas
3d0fa1a5f6
chore: Release
2023-04-16 16:49:08 -04:00
rvcas
98c61ca151
feat(aiken-lang): anonymous functions
...
@MartinSchere noticed a weird error
where an unknown variable wasn't being reported
the type checker was incorrectly scoping
arguments for anonymous function definitions.
Luckily his compilation failed due to a FreeUnique
error during code gen which is good. But this may
have been the source of other mysterious FreeUnique
errors.
I also noticed that anonymous function allowed
arguments with the same name to be defined.
`fn(arg, arg)`
This now returns an error.
2023-04-16 16:38:43 -04:00
rvcas
63ddef7efb
chore: Release
2023-04-13 13:37:12 -04:00