Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translation from Core to Core.Stripped #1520

Closed
lukaszcz opened this issue Sep 6, 2022 · 0 comments · Fixed by #1665
Closed

Translation from Core to Core.Stripped #1520

lukaszcz opened this issue Sep 6, 2022 · 0 comments · Fixed by #1665
Assignees
Labels
core Related to JuvixCore enhancement New feature or request

Comments

@lukaszcz
Copy link
Collaborator

lukaszcz commented Sep 6, 2022

The final translation should be straightforward. It should first perform the necessary non-trivial transformations implemented in other PRs to bring Node/InfoTable into a state from which a straightforward recursive translation to Core.Stripped is feasible.

Dependencies

Starting point

  • Core.Translation.Stripped.FromCore contains a stub.
@lukaszcz lukaszcz added enhancement New feature or request pending-review core Related to JuvixCore labels Sep 6, 2022
@lukaszcz lukaszcz added this to the 0.3 milestone Sep 6, 2022
@lukaszcz lukaszcz linked a pull request Dec 13, 2022 that will close this issue
lukaszcz added a commit that referenced this issue Jan 9, 2023
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Related to JuvixCore enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants