Closed erezsh closed 11 months ago
@MegaIng @chanicpanic This change makes Earley approx 10% slower. (on a very simple benchmark)
Do you think the stability it provides is worth it? (let's assume it gives us 100% output stability)
Maybe have an option that can change it, but default to the slower, stable version?
Also, I didn't check that this actually hits all locations, I assume you just searched for references to set
.
I like the idea of having an option to enable/disable it.
Defaulting to the stable version would be more user-friendly. The slowdown is unfortunate, but it is consistent with Lark positioning Earley as the parser for power and LALR as the parser for speed.
On the other hand, in addition to performance, it could be argued that defaulting to the unstable version has the benefit of exposing undesirable ambiguity and forcing grammar authors to remove/resolve it.
Patch coverage: 92.98%
and project coverage change: +0.02%
:tada:
Comparison is base (
c2e44ea
) 89.23% compared to head (41c28d4
) 89.26%.
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
@MegaIng @chanicpanic take 2
Addresses issue #1325, and others