Skip to content

Latest commit

 

History

History
31 lines (23 loc) · 1.24 KB

README.md

File metadata and controls

31 lines (23 loc) · 1.24 KB

inqui

A flexible toolkit for building on-demand, memoizing query systems.

The key idea of "query systems" is to have queries that compute an information from the inputs. The program then uses queries, but only those that are needed for the specific task (demand-driven). The outputs of queries are cached so they are available without recomputation in the future, until the inputs they depend on change (memoization).

Credits

The API and a lot of implementation details was inspired from salsa framework, which has more features and documentation, a lot more thought was put into its design and a lot more effort was put into its implementation. Essentially the only reason for inqui's existence is the lack of support for dynamic queries, which is on their wishlist, although having a Far future milestone.

Documentation

... does not exist. But you should find some information and inspiration in examples (especially heavily-commented hello_world) or the integration tests.

License

Dual-licensed under MIT and UNLICENSE. Feel free to use it, contribute or spread the word.