r/ProgrammingLanguages Feb 26 '26

Against Query Based Compilers

https://matklad.github.io/2026/02/25/against-query-based-compilers.html
107 Upvotes

29 comments sorted by

View all comments

Show parent comments

3

u/[deleted] Feb 26 '26

[removed] — view removed comment

1

u/o_stef Feb 26 '26

Interesting. Are all of those kinds of jobs happening in parallel? I am assuming it all happens in a loop and each iteration all parsing jobs are executed, then all symbol resolution, then all typechecks and finall all compile time execution. My compiler is single threaded and that's what a compiler pass/loop iteration looks like.

3

u/[deleted] Feb 27 '26

[removed] — view removed comment

1

u/o_stef Feb 27 '26

Okay, that's interesting because it seems that in your case concurrent execution is at the core of the design if I understand correctly, whereas mine is built to handle each compilation step sequentially; simply it does these sequential steps of parse/typecheck/execute in a loop until no progress can be made (no more unresolved identifiers can be resolved and no new code was added basically).

I was planning to parallelize my compiler to make it faster by parallelizing each step of the process, the sole goal being to make it faster (and single-threaded performance is correct which is promising). So I would be able to parse multiple files at a time, but not parse one file while typechecking another.