On 2015-09-11 21:40, Martin Nowak wrote:
I find the reasons for turining down my ER a bit moot.

[Issue 14593 – operator overloading can't be used with expression
templates](https://issues.dlang.org/show_bug.cgi?id=14593)

AFAIK expression templates are the primary choice tom implement SIMD and
matrix libraries.
And I still have [this idea](http://dpaste.dzfl.pl/cd375ac594cf) of
implementing a nice query language for ORMs.

I would really like this.

The short circuit operators && and || have a special semantic and can't
be easily, but there is & and | so it's not really required.

Not sure if this would be a problem in D but there's a library in Ruby that does exactly this. Due to the operator precedence you end up needing to wrap everything in parentheses:

Person.where{ |p| (p.age > 21) & (p.name == "Peter") | (p.name == "Foo") }

Does anyone have a different idea how to make a nice query language?
db.get!Person.where!(p => p.age > 21 && p.name == "Peter")

AST macros ;)

--
/Jacob Carlborg

Reply via email to