On Monday, 26 September 2016 at 12:05:46 UTC, Martin Tschierschke wrote:
On Friday, 23 September 2016 at 13:25:30 UTC, Ilya Yaroshenko wrote:
[...]

Sounds great!
During my time studying mathematics - in the last century, one Dr. of the mathematical department has developed a C++ library as glue to some fast C libs using the possibility of operator overloading, to make the formulation of matrix algorithms quite beautiful.

So would it be possible to get:

// Performs: c := alpha a x b + beta c
// glas is a pointer to a GlasContext
glas.gemm(alpha, a, b, beta, c);

transformed to something like:

Matrix A,B;
Real alpha,beta;
Vektor c;

c = alpha * A * B + beta * c;

Maybe not for performance but for readability purpose?

There was a recent thread about operator overloading but I didn't understood the problem.
(sorry, still a D newbie).

Regards mt.

Yes, this is possible. But, first we need a more low level interface. It will help to extend the Mir library and to write bindings for other languages (Julia, Python, R).

Reply via email to