haskell / haskell/happy

Consider a recusive ascent/descent backend

Open
#167 12 comments 5 reactions 0 assignees View on GitHub
Dominant language
Haskell
Stars
322
Forks
86
PR merge metrics
No merged PRs in 30d

Description

See https://github.com/djspiewak/scala-bison, its [tool paper](https://www.sciencedirect.com/science/article/pii/S1571066110001118) and [the original paper on recursive ascent/descent](https://link.springer.com/chapter/10.1007/3-540-53669-8_70).

There's also the [Typed LR](https://www.cs.ox.ac.uk/ralf.hinze/publications/TypedLR.pdf) paper, which maybe is a preferrable embedding compared to plain recursive ascent-descent.

I expect that with a bit of tuning, such a parser can outperform happy's current table-driven backend because GHC will be able to inline functions.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.