Elixir
Scry
One query language, composed from small packages: a core grammar compiler, one package per query kind, and a real engine per backend.
Intention
scry_core carries the lexical structure, type system and the EP1/EP2 extension points every kind library composes against. Kind packages — relational, graph, document, time-series, search, logic, olap and composites — contribute their own grammar. Engine packages implement the same behaviour over PostgreSQL, ClickHouse, SQLite, DuckDB, MySQL, Neo4j, MongoDB, CouchDB, Couchbase, ArangoDB, Elasticsearch, RediSearch, RedisTimeSeries, InfluxDB, Loki, ETS and plain memory.