Boost logo

Proto :

Subject: Re: [proto] Defining the result domain of a proto operator
From: Eric Niebler (eric_at_[hidden])
Date: 2011-08-26 11:18:38


On 8/26/2011 10:56 AM, Joel Falcou wrote:
> On 26/08/2011 16:45, Eric Niebler wrote:
>> Before I answer, can you tell me why you've decided to put vector and
>> matrix operations into separate domains? This seems like an artificial
>> and unnecessary separation to me.
>
> We have a system of specialisation where being able to make this
> distinction allowed us to replace sub proto tree by a pregenerated call
> to some BLAS functions or to apply some other Linear Algebra math based
> simplification.
>
> We also have a covector domain which allow us to know that : covector *
> vector is a dot product while vector * covector generate a matrix. In
> the same way, covector * matrix and matrix * vector can be recognized
> and handled in a proper way.

Why can't you use a grammar to recognize patterns like these and take
appropriate action?

-- 
Eric Niebler
BoostPro Computing
http://www.boostpro.com

Proto list run by eric at boostpro.com