| > Do you run three ORMs, each with different APIs? Yes and you absolutely have to. That's not a disadvantage, it's just how it is. Because SQL is the absolute bare minimum. The lowest common standard. And not a great one. Null handling and typesystem for example are way inferior to those of good programming languages. So why would I leave those productivity gains on the table? Using EdgeQL simple means I have another programming language at hand. > EdgeDB has a robust type system that's most [sic] comprehensive that most ORMs Well yeah. And it is inferior to the programming language I use. Hence, this comes at a disadvantage to me. > We've also built a query builder for TypeScript Aha, so then... why not build a query builder for every language, just like with ORMs? Sorry, not convinced. We would be better off by improving on SQL itself. |
There is no mainstream programming language that I know off that offers what are table stakes for an RDBMS.
For example, even trivial SQL things like a constraint saying 'at least one of these two fields must be empty, but both can't be empty' is missing in the "advanced" type systems in mainstream languages.