Subject: Re: [ublas] Patch/proposal for overloading operator * in ublas
Date: 2009-09-08 08:27:36
On Sep 8, 2009 2:41am, Rutger ter Borg <rutger_at_[hidden]> wrote:
> What would be nice is to be able to work with expression trees. In this
> I'm referring to Proto's semantic actions, or expression transformation.
> Eg, rewrite an expression to make use of BLAS calls (or, some other
> "backend"). Pattern matching on the expression, rewrite, and transparently
> an other expression is used. All in compile time.
It definitely would be nice. I have found that as soon as you start down
the path of generic and functional programming in C++, you start wishing
you could mix/match this stuff. For example, lambdas binding to specific
locations in vectors, auto-differentiation of vectors/matrices, etc. While
I am not a good enough programmer to understand the details (and hope I
never do...), it sure smells like having a consistent expression template
library would make this stuff fit together seamlessly.
That said, I fear that if we worry too much about the long-term goal, we
won't make the necessary patches to make ublas a good enough solution to
hold us over.
If the GLAS guys are watching this list, I would love to hear their
thoughts on the longterm vision and when they think we might be in a
position to evolve boost's matrix library to the next level. Based on my
experiences, it sure seems to me that GLAS is the right approach, but it is
a hell of a lot of work.