designing a query system
Summary
This article provides a deep dive into Krabby's planned query system for a Rust-based compiler. It compares push-based versus pull-based architectures, and details concurrency, asynchrony, batching, streaming queries, caches, incremental compilation, and cycle detection. It offers practical design notes and potential optimizations to improve latency and developer productivity.