[Dbix-class] Operator Overloads in DBIC?

Paul Bennett paul.w.bennett at gmail.com
Mon Mar 7 12:25:38 GMT 2016


Hi, DBICers,

I have most of a spec (and a tiny bit of pseudocode) prepared for
adding operator overloads to Result Sets, to make it easier to write &
reuse pieces of queries in a style more like Relational Algebra &
Tuple-Relational Calculus. For instance, '/' for relational division,
'*' for fiber product, 'x' for explicit cross join, '|' for left
semijoin, '||' for left outer join, '.' for full outer join, '>' for
left antijoin, '+' for union, '&' for intersection, '-' for "except",
and so on.

The path of least resistance seems to be to subclass ResultSet and
some other classes.

However, if I subclass, then I (or someone) would end up writing
Dancer2::Plugin::DBIC::Algebra (or whatever the naming ends up being),
and so on for everything else that turns DBIC into a plugin (and I
understand this set to be non-trivial).

So. What's the best way to proceed? Just get coding and submit a
patchset? Is there a more-established way to get on-board? Some kind
of pre-approval process?


Thanks,


--
Paul W Bennett
P/PW/PWBENNETT



More information about the DBIx-Class mailing list