Commit Graph

2015 Commits

Author SHA1 Message Date
Matthias Benkort
cb6fd59dbd Fix minor typo in error label 2024-01-20 09:58:36 +01:00
rvcas
25a837ab3f feat: parser and check fixes
- do not erase sequences if the sole expression is an assignment
- emit parse error if an assignment is assigned to an assignment
- do not allow assignments in logical op chains
2024-01-19 14:32:21 -05:00
KtorZ
8a90e9eda0 Improve behavior and reporting of tests expected to fail
Fixes #786.
2024-01-19 18:20:58 +01:00
KtorZ
2b4137dc24 Revert "minor refactor"
This reverts commit 21f0b3a6220fdafb8f6aad6855de89d8cdde0e1b.

  Rationale:

  The absence of clause guard was here done *on purpose*. Indeed,
  introducing a clause guard here forces either duplication or the use
  of a wildcard which is not "future proof".

  Should we make a change to that one day (e.g. add a new variant to
  TraceLevel), we won't get any compiler warning and we'll very likely
  forget to update that particular section of the code.

  So as much as possible, enforce complete pattern-match on variants
  make for code that is easier to maintain in the long-run.
2024-01-19 14:31:09 +01:00
microproofs
af90b38bf8 minor refactor 2024-01-19 14:31:04 +01:00
KtorZ
6fa272bd34 Remove compiler-generated helper 'global' traces in compact mode.
Since there's no line number to show here, we don't have much choice. And the alternative of showing shorter traces as code is just ugly as hell.
2024-01-19 14:30:44 +01:00
KtorZ
42fdecf41f Fix coloring output of multi-line traces. 2024-01-19 14:30:44 +01:00
KtorZ
3d131a5d09 Fix CLI docs for traces. 2024-01-19 14:30:16 +01:00
KtorZ
59c784778e Convert span's start to line number + col
This requires to make line numbers a first-class citizen in the module
  hierarchy but it is fortunately not _too involved_.
2024-01-19 14:30:15 +01:00
KtorZ
e67d5863a1 Introduce 'compact' trace level verbosity
For now, it only shows the span start. We'll change that in the next commit to show a line number and a column.
2024-01-19 14:30:15 +01:00
KtorZ
627c6b576e Move line_numbers under 'aiken-lang'
And add some unit tests to ensure things are working properly.
2024-01-19 14:30:15 +01:00
microproofs
f79b37d551 Replace 'bool' with 'TraceLevel' in codegen
Co-authored-by: KtorZ <matthias.benkort@gmail.com>
2024-01-19 14:30:15 +01:00
KtorZ
d27ea98a8f Rework tracing arguments to --keep-traces & --trace-level
This allows for a more fine-grained control over how the traces are showed. Now users can instrument the compiler to preserve only their user-defined traces, or the only the compiler, or all, or none. We also want to add another trace level on top of that: 'compact' to only show line numbers; which will work for both user-defined and/or compiler-generated traces.
2024-01-19 14:30:15 +01:00
microproofs
86146ae7f4 adding codegen traces 2024-01-19 14:30:14 +01:00
Matthias Benkort
81e29539c8 Merge pull request #803 from aiken-lang/780-possible-bug-with-test-github-action-version-generated-by-aiken-new
fix: aiken new github action version
2024-01-19 14:27:38 +01:00
KtorZ
0e2b8ae251 Bump pallas dependencies to include flat bigint patch
Fixes #796.
2024-01-18 18:26:21 +01:00
microproofs
1796147264 fix: aiken new github action version 2024-01-18 12:10:06 -05:00
microproofs
06672fce05 add new test 2024-01-13 19:29:34 -05:00
microproofs
d26524048e fix: headlist builtin on assoc lists
implement chooseunit for 0 args
2024-01-13 19:29:34 -05:00
microproofs
c7af27a6ba fix: generic edge case with tuples that allowed 2 tuples and 3 tuples to use the same monomorphized function.
Also massively reduced the space taken up by generics in scripts when using generics with list and tuples
2024-01-13 17:46:32 -05:00
Niels Mündler
f934e87b1d Reuse "convert_tag_to_constr" 2024-01-13 13:23:58 -05:00
Niels Mündler
cda1716d47 Unify construction of PlutusData objects from int + fields 2024-01-13 13:23:58 -05:00
Niels Mündler
742a728d53 Fix conformance test to make a point 2024-01-13 13:23:58 -05:00
Niels Mündler
316842876d Fix PlutusData Constr test case 2024-01-13 13:23:58 -05:00
Niels Mündler
4bd8ab890a Add reverse mapping for PlutusData constr 2024-01-13 13:23:58 -05:00
Niels Mündler
0ae631a1fe Fix parsing Constr PlutusData 2024-01-13 13:23:58 -05:00
microproofs
4a8fecb70a fix: satisfy clippy's demands 2024-01-11 14:53:02 -05:00
rvcas
8b62873ef5 fix(format): post trace sequences getting wrapped in curlies closes #781 2024-01-09 22:39:55 -05:00
microproofs
ff462fa8ea don't need clippy macro anymore :) 2024-01-08 18:08:50 -05:00
microproofs
f722af1149 fix: accidentally put quotes around tail_name 2024-01-08 18:08:50 -05:00
microproofs
2216f387c3 refactor: change codegen uplc to have more type safety
Also refactor list_access_to_uplc
2024-01-08 18:08:50 -05:00
Mitchell Turner
7992a50bec Make foreign Language type publicly available (#793)
* Make foreign type public available

* Fix formatting
2024-01-08 13:31:21 -08:00
KtorZ
30a6b77116 Get rid of 'VoidMsg' in favor of an 'Option'. 2024-01-04 16:03:51 -05:00
microproofs
c50a9cb5bd refactor: convert msgs to use AirMsg type instead of AirTree 2024-01-04 16:03:51 -05:00
microproofs
394cac86b8 feat: expect on a type now can take in a msg when in trace mode 2024-01-04 16:03:51 -05:00
microproofs
4fc65cc600 feat: change expect from data on constrs to take in a message term 2024-01-04 16:03:51 -05:00
microproofs
43e84d7af7 fixing gen_uplc tets 2024-01-04 16:03:51 -05:00
microproofs
c7a1ff0959 refactor how tracing is popped off to be in one location in uplc_gen 2024-01-04 16:03:51 -05:00
microproofs
355e38d6e2 feat: expects now print the line of code that failed 2024-01-04 16:03:51 -05:00
microproofs
412945af3a update aiken code gen test 2024-01-04 16:03:51 -05:00
microproofs
aa51ce3e3e feat: add code messages when using expects on constrs 2024-01-04 16:03:51 -05:00
microproofs
71cfb6f6af feat: Add specific messages for using expect with booleans
TODO: fill out the rest of the expects with messages
2024-01-04 16:03:51 -05:00
Niels Mündler
7b452c21f0 Fix formatting 2023-12-29 22:57:10 -05:00
Niels Mündler
4c60be368e Add command line option to shrink uplc 2023-12-29 22:57:10 -05:00
Niels Mündler
b6acdde552 Use to_i64 for clarity 2023-12-19 12:20:10 -05:00
Niels Mündler
d06f2f6008 Formatting 2023-12-19 12:20:10 -05:00
Niels Mündler
eefd26c6fa Add acceptance tests for this tricky case 2023-12-19 12:20:10 -05:00
Niels Mündler
fb56700bde Fix and re-enable pretty print test for bigint 2023-12-19 12:20:10 -05:00
Niels Mündler
89e518f878 Deduplicate code 2023-12-19 12:20:10 -05:00
Niels Mündler
ba76c1d2cf Adjust acceptance tests and fix IData and UData 2023-12-19 12:20:10 -05:00