3 ms·
This is close to something I've wanted to see for a long time: a language where relational models are first class citizens and the engine for data storage is ab
by api 2y ago
This is close to something I've wanted to see for a long time: a language where relational models are first class citizens and the engine for data storage is abstracted away.
Tables, joins, etc. should all be representable within the language's type system and standard libraries. Connectivity to a database should be handled by plugins/implementations of storage engines. If no storage engine is used, the relational data just lives in RAM like any other variable, collection, etc.
It's kind of the opposite of an ORM. An ORM tries to bolt a relational database into an OOP or other language model. This wraps the language around relational database concepts, fixing the impedance mismatch in the language rather than with a translation layer.
It also means one does not have to reinvent relational concepts (badly) in every application with a complex data model even if that application is not backed by a database.