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

Streaming parser #81

Open
fstirlitz opened this issue Jan 12, 2020 · 0 comments
Open

Streaming parser #81

fstirlitz opened this issue Jan 12, 2020 · 0 comments
Labels
compat hazard Resolving this issue may create backwards compatibility problems enhancement Request for functionality covering an entirely new use case
Milestone

Comments

@fstirlitz
Copy link
Owner

Right now this parser can only generate an AST when the entire input has been put in a single string value; only lexing seems to be possible in a streaming manner (although I have not tested if it works reliably). It would be useful to have a streaming parser which can process a Lua script without holding it in memory in its entirety.

If this feature is added, it will definitely only going to be in a major, backwards-incompatible release. I dare even say that this is the kind of feature for the sake of which I might drop my curmudgeonly attitude towards new language features, because a natural way to achieve it would be via asynchronous generators, only available since ECMA-262 9th Ed.; there's no way I'd be dealing with the callback extra-hell that would otherwise result.

@fstirlitz fstirlitz added enhancement Request for functionality covering an entirely new use case compat hazard Resolving this issue may create backwards compatibility problems labels Jan 12, 2020
@fstirlitz fstirlitz changed the title Streaming parsing Streaming parser Jan 12, 2020
@fstirlitz fstirlitz added this to the 0.5 milestone Jun 4, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compat hazard Resolving this issue may create backwards compatibility problems enhancement Request for functionality covering an entirely new use case
Projects
None yet
Development

No branches or pull requests

1 participant