- Why?
- duplicate columns
- duplicate rows
- column order matters (it shouldn't)
- nulls
- verbose, irregular syntax
- using a sub-language and always having to wrap it in strings and ORMs (also causing those impedance mismatches)
- But why are you bothering - we already have mysql?
- When will Ra be ready?
- Can I test it, contribute or report bugs?
Ra is a relational data-based language designed to address fundamental issues with SQL.
These problems go beyond syntax, so simply patching SQL or transpiling to it won't solve them.
I believe that a clean, algebraic language, where relations are the primary data structure, will make building and maintaining applications easier.
I'm also convinced that fixing the major problems will lead to simpler, more powerful systems. For example, eliminating nulls and duplicates not only prevents whole classes of incorrect results but also simplifies query planning.
Some key issues that Ra aims to fix:
Yes, you do.
When it's ready. It may take a while.
Not just yet! Ra is still evolving, and I don't have the bandwidth to support early testers while the core design is in flux. Stay tuned.