[eigen] two decisions to take

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


Hi List,

I need your advice for two decisions to take.

1) Global functions or member methods?
Global functions give more natural mathematical notation. For instance, for a 
cross product:
	double d = cross(vector1, vector2);
vs.
	double d = vector1.cross(vector2);
Moreover I don't think they really pollute the namespace (which can be the 
global one if the user did "using namespace Eigen") as C++ allows overloading 
and I'll make sure to write these functions as taking arguments of Eigen 
types only.

So are you OK if I implement many mathematical functions as global funcs and 
not as members? Or do you see a reason to prefer them to be only members, or 
both? 

2) LGPL v3 ?
The main reason why we didn't license Eigen 1 as LGPL was that v2 didn't make 
sense for a template library. v3 seems to have fixed that. Indeed, whereas v2 
talked about "linking", v3 talks about "combining or linking". So should we 
convert to LGPL v3?

Looking at the table here,
http://www.gnu.org/licenses/gpl-faq.html#AllCompatibility

if we license as LGPL v3, then GPL-v2-only projects can't use Eigen. That's a 
problem, but how big is it? Are there many GPL-v2-only projects out there?

What we gain in licensing as LGPL v3 is that we don't need an exception 
anymore, we can just use the plain vanilla LGPL v3. That's a big advantage.

Thanks,
Benoit

Attachment: signature.asc
Description: This is a digitally signed message part.



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