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

Pattern matching compilation #1874

Merged
merged 36 commits into from
Mar 27, 2023
Merged

Pattern matching compilation #1874

merged 36 commits into from
Mar 27, 2023

Conversation

lukaszcz
Copy link
Collaborator

@lukaszcz lukaszcz commented Mar 2, 2023

This implements a basic version of the algorithm from: Luc Maranget, Compiling pattern matching to good decision trees. No heuristics are used - the first column is always chosen.

@lukaszcz lukaszcz added pattern-matching core Related to JuvixCore labels Mar 2, 2023
@lukaszcz lukaszcz added this to the 0.4 - Geb integration milestone Mar 2, 2023
@lukaszcz lukaszcz self-assigned this Mar 2, 2023
@lukaszcz lukaszcz added the enhancement New feature or request label Mar 2, 2023
@lukaszcz lukaszcz force-pushed the pattern-matching-compilation branch 2 times, most recently from 4de1bc0 to a2be800 Compare March 9, 2023 16:15
@lukaszcz lukaszcz force-pushed the pattern-matching-compilation branch 7 times, most recently from 1c5cc37 to d1f239f Compare March 21, 2023 15:26
@lukaszcz lukaszcz marked this pull request as ready for review March 21, 2023 15:45
@lukaszcz lukaszcz force-pushed the pattern-matching-compilation branch 2 times, most recently from 47efbca to 4774c20 Compare March 22, 2023 09:05
@paulcadman paulcadman force-pushed the pattern-matching-compilation branch from 4774c20 to 2ea4d64 Compare March 23, 2023 08:58
@lukaszcz lukaszcz force-pushed the pattern-matching-compilation branch 2 times, most recently from 86528ac to 9f673bb Compare March 23, 2023 14:06
Copy link
Collaborator

@janmasrovira janmasrovira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few minor style comments

app/Commands/Dev/Core/Compile/Base.hs Outdated Show resolved Hide resolved
app/Commands/Extra/Paths.hs Show resolved Hide resolved
src/Juvix/Compiler/Backend.hs Outdated Show resolved Hide resolved
src/Juvix/Compiler/Core/Transformation/MatchToCase.hs Outdated Show resolved Hide resolved
src/Juvix/Compiler/Core/Transformation/MatchToCase.hs Outdated Show resolved Hide resolved
src/Juvix/Compiler/Core/Transformation/MatchToCase.hs Outdated Show resolved Hide resolved
src/Juvix/Compiler/Core/Transformation/MatchToCase.hs Outdated Show resolved Hide resolved
src/Juvix/Compiler/Core/Transformation/MatchToCase.hs Outdated Show resolved Hide resolved
src/Juvix/Compiler/Core/Transformation/MatchToCase.hs Outdated Show resolved Hide resolved
@lukaszcz lukaszcz force-pushed the pattern-matching-compilation branch from e146b60 to a1903aa Compare March 23, 2023 18:08
@lukaszcz lukaszcz requested a review from janmasrovira March 23, 2023 18:08
@lukaszcz lukaszcz temporarily deployed to github-pages March 23, 2023 18:49 — with GitHub Actions Inactive
@paulcadman paulcadman force-pushed the pattern-matching-compilation branch from a1903aa to 1d8c0d6 Compare March 23, 2023 19:52
@lukaszcz lukaszcz force-pushed the pattern-matching-compilation branch from 1d8c0d6 to 3b98184 Compare March 24, 2023 09:05
@lukaszcz lukaszcz force-pushed the pattern-matching-compilation branch from 0ca20d1 to 8d267dd Compare March 24, 2023 09:51
@lukaszcz lukaszcz temporarily deployed to github-pages March 24, 2023 09:58 — with GitHub Actions Inactive
@lukaszcz lukaszcz temporarily deployed to github-pages March 24, 2023 14:46 — with GitHub Actions Inactive
@lukaszcz lukaszcz temporarily deployed to github-pages March 24, 2023 15:01 — with GitHub Actions Inactive
@lukaszcz lukaszcz merged commit c9b8cdd into main Mar 27, 2023
@lukaszcz lukaszcz deleted the pattern-matching-compilation branch March 27, 2023 08:42
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 pattern-matching
Projects
None yet
2 participants