1
1
mirror of https://github.com/anoma/juvix.git synced 2024-12-13 19:49:20 +03:00
juvix/test
Łukasz Czajka f2298bd674
JuvixCore to JuvixAsm translation (#1665)
An implementation of the translation from JuvixCore to JuvixAsm. After
merging this PR, the only remaining step to complete the basic
compilation pipeline (#1556) is the compilation of complex pattern
matching (#1531).

* Fixes several bugs in lambda-lifting.
* Fixes several bugs in the RemoveTypeArgs transformation.
* Fixes several bugs in the TopEtaExpand transformation.
* Adds the ConvertBuiltinTypes transformation which converts the builtin
bool inductive type to Core primitive bool.
* Adds the `juvix dev core strip` command.
* Adds the `juvix dev core asm` command.
* Adds the `juvix dev core compile` command.
* Adds two groups of tests: 
- JuvixCore to JuvixAsm translation: translate JuvixCore tests to
JuvixAsm and run the results with the JuvixAsm interpreter,
- JuvixCore compilation: compile JuvixCore tests to native code and WASM
and execute the results.
* Closes #1520 
* Closes #1549
2023-01-09 18:21:30 +01:00
..
Arity Support basic dependencies (#1622) 2022-12-20 13:05:40 +01:00
Asm JuvixCore to JuvixAsm translation (#1665) 2023-01-09 18:21:30 +01:00
BackendC Automatized benchmarks (#1673) 2023-01-05 17:48:26 +01:00
Core JuvixCore to JuvixAsm translation (#1665) 2023-01-09 18:21:30 +01:00
Internal Add printString and printBool support to legacy C backend (#1698) 2023-01-04 18:02:02 +01:00
Parsing Support basic dependencies (#1622) 2022-12-20 13:05:40 +01:00
Reachability Support basic dependencies (#1622) 2022-12-20 13:05:40 +01:00
Runtime Automatized benchmarks (#1673) 2023-01-05 17:48:26 +01:00
Scope Compiler output (#1705) 2023-01-06 17:54:13 +01:00
Termination Change syntax for ind. data types and forbid the empty data type (#1684) 2023-01-03 13:49:04 +01:00
Typecheck Support basic dependencies (#1622) 2022-12-20 13:05:40 +01:00
Arity.hs Support implicit arguments (#144) 2022-06-13 14:25:22 +02:00
Asm.hs Translation from JuvixAsm to C (#1619) 2022-12-06 11:33:20 +01:00
BackendC.hs Support partial application and closure passing in C backend (#190) 2022-06-28 10:25:43 +02:00
Base.hs Automatized benchmarks (#1673) 2023-01-05 17:48:26 +01:00
Core.hs JuvixCore to JuvixAsm translation (#1665) 2023-01-09 18:21:30 +01:00
Internal.hs Add translation from Internal to Core (#1567) 2022-11-07 14:47:56 +01:00
Main.hs Add translation from Internal to Core (#1567) 2022-11-07 14:47:56 +01:00
Parsing.hs Disallow tab characters as spaces (#1523) 2022-09-07 13:59:41 +02:00
Reachability.hs Compute name dependency graph and filter unreachable definitions (#1408) 2022-07-25 18:38:44 +02:00
Runtime.hs Juvix C runtime (#1580) 2022-11-03 09:38:09 +01:00
Scope.hs [ CI ] New jobs: ormolu and hlint 2022-04-05 19:57:21 +02:00
Termination.hs Add the termination checker to the pipeline (#111) 2022-05-30 13:40:52 +02:00
Typecheck.hs Add lambda expressions to internal and add typechecking support (#1538) 2022-09-23 15:43:18 +02:00