As much as I love relational databases, I have not actually ever ventured outside of SQL for describing queries. Its dominance is near-total. I've never even thought that there might exist something else. But of course, SQL didn't exist since time immemorial, and there must have been things before that.
Thanks for the link. I actually do like the syntax of SQUARE a little, and I'll definitely look into the predicate logic-based query languages like DSL ALPHA that came before that!
Edit: This is a treasure trove of literature that's gone me by. I'm very grateful for OP bringing it to my attention. Relational data and SQL are things that are basically part of my fabric of existence and I've never questioned them or investigated why they were invented in the first place. It's definitely enlightening to do so. Here's the background to why relational data in the first place: https://dl.acm.org/doi/pdf/10.1145/362384.362685
Second edit: I love the parallels you can draw to how one might query in-memory data in a general purpose language, ranging from iterative loops (low-level) through list comprehensions (predicate logic) into functional looping pipelines like LINQ or Java Streams (calculus-based).
Thanks for the link. I actually do like the syntax of SQUARE a little, and I'll definitely look into the predicate logic-based query languages like DSL ALPHA that came before that!
If anyone is interested in the Codd paper on predicate logic-based language: https://dl.acm.org/doi/pdf/10.1145/1734714.1734718
And more on SQUARE: https://dl.acm.org/doi/pdf/10.1145/361219.361221
Edit: This is a treasure trove of literature that's gone me by. I'm very grateful for OP bringing it to my attention. Relational data and SQL are things that are basically part of my fabric of existence and I've never questioned them or investigated why they were invented in the first place. It's definitely enlightening to do so. Here's the background to why relational data in the first place: https://dl.acm.org/doi/pdf/10.1145/362384.362685
Second edit: I love the parallels you can draw to how one might query in-memory data in a general purpose language, ranging from iterative loops (low-level) through list comprehensions (predicate logic) into functional looping pipelines like LINQ or Java Streams (calculus-based).