Re: [eigen] "plain": a new keyword for auto with implicit evaluation

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Hello,

I was thinking about:

Matrix M = ...;
SparseMatrix S = ....;
Array A = ....;

Ah, I see! I think something like this would be really great. The STL follows a similar 
approach by providing deduction guides for standard containers such that something
like

std::array {1, 2, 3, 4);

works now.

2. Using plain (using the implementation you provided) can have performance
penalties in the case of object slicing: Object slicing prevents copy elision!

If the following paper gets into C++20, then we could define "plain" as an alias template:


Regarding this C++20 approach or a C++17 approach, I think we should start discussing
how and to what extend Eigen wants to allow functionality provided by newer standards. 
Officially we support C++03 and to some limited extend C++11. If we add additional functionality
code and documentation get more and more complicated (this feature is available using C++11,
that one using C++14 and this one using C++20).

How about some sort of collection of features we would like to see in newer versions of Eigen?
Based on something like this we could then decide if, e.g., Eigen 4 supports C++11 and some
C++14/17/20 features.

Cheers,
DT


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/