John J. Camilleri
fe15aa0c00
Use canonical GF in LPGF compiler
...
Still contains some hardcoded values, missing cases.
I notice now that LPGF and Canonical GF are almost identical, so maybe we don't need a new LPGF format,
just a linearization-only runtime which works on canonical grammars.
The argument for keeping LGPF is that it would be optimized for size and speed.
2021-02-01 12:28:06 +01:00
Thomas Hallgren
9d3badd8b2
GrammarToCanonical: bug fix: add missing case for Empty
2019-09-10 12:41:16 +02:00
Thomas Hallgren
a55c7c7889
GF.Compile.GrammarToCanonical: keep unreachable rows in tables
...
since unreachable rows can become reachable after grammar transformation.
Also export smart constructors for projection and selection.
2019-03-22 15:38:02 +01:00
Thomas Hallgren
2979864752
GF.Compile.GrammarToCanonical: allow + in reg exps in pre { }
2019-03-14 16:52:37 +01:00
Thomas Hallgren
b11d7d93dc
GF.Grammar.Canonical: some Functor/Foldable/Traversable instances
2019-03-13 01:51:26 +01:00
Thomas Hallgren
5b401f3880
Expose GF.Grammar.Canonical + some refactoring
...
to make it available in other tools by depending on the gf package and
importing it
2019-03-07 17:41:16 +01:00
Thomas Hallgren
b783299b73
Rename module GF.Compile.ConcreteToCanonical to GF.Compile.GrammarToCanonical
2019-03-07 14:47:37 +01:00