Writing an autocomplete tool for IDEs is an interesting problem. Rust is using AST pruning, C# uses lazy compilation http://t.co/zabM0tsthH
miniblog.
Related Posts
The author of rust-analyzer discussing how language features help or hinder fast IDEs.
If you allow `from m import *` you can't analyse files in isolation, and it's even harder in Rust.
Really thoughtful critique of the Language Server Protocol, what IDEs need to express, and the design decisions made.
Writing a parser that is resilient to syntax errors, and why a parser should always return something: https://duriansoftware.com/joe/constructing-human-grade-parsers
(The latter property is important in e.g. IDEs and it's rarely discussed!)