Re: [eigen] Bugs in Mat::Random, reductions |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] Bugs in Mat::Random, reductions
- From: "Gael Guennebaud" <gael.guennebaud@xxxxxxxxx>
- Date: Sat, 25 Oct 2008 15:48:06 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=51O6Tt1a/xBu924oqtFwJhmaXR05vn38C2NaNTuTEfI=; b=mDj2dnC6PBmct763/ILr1ARt2aQY1Xi4tlvk0Bs2LYKexY/YKdxz7pfTem/Kezwlrb 5FZ3XqbTcXG/dWC10o42U82zgqx3JCGb46FUlxy3+EF2GDly9mcWmbfLIDwgVWeTESKr JTisWoP/MqzH38w+iJrpBCBRjs+L6mm0OzSLo=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=CGqqJsfZY6mZYRabL2N/85C9QSGR53HvRd/Tp9V997Bf7GWPktozr9lKIgXIHQ9Zww la9D0hcP+DWKDdMrGpgqrx2l8VLpsjkwzAvMMbZGLtuS85zqNfTAyZhy3jpope2ZDfqn NFfkEDCrAmaV1PulzRBh0L48FSRxW/bAuvILM=
On Thu, Oct 23, 2008 at 7:26 PM, Gael Guennebaud
<gael.guennebaud@xxxxxxxxx> wrote:
> So maybe we could mix the 2 approaches. In practice we can define the
> macro EIGEN_ARRAY_ONLY like that:
>
> #ifdef EIGEN_USING_ARRAY_MODULE
> #define EIGEN_ARRAY_ONLY
> #else
> #define you_must_include_array
> struct you_must_include_array{};
> #endif
>
> and declares all "array only" method with:
>
> void someArrayModuleFunc(EIGEN_ARRAY_ONLY);
>
> and for doxygen, we just have to tell it to expand the EIGEN_*_ONLY macros.
>
> then the user will get an explicit error message, and the prototype of
> our function remains clean.
>
> what do you think ? at least if we go for the EIGEN_USING_*_MODULE
> macros, I think the above trick the right way to go. So the question
> is whether everybody is ok with the EIGEN_USING_*_MODULE approach ?
>
Since no one complained, I guess nobody is against that solution. On
the other hand nobody seems to be excited by it, and actually, neither
do I. I mean, currently we have an intuitive mechanism to include
modules, but some weird link error messages if someone forgot to
include the right module. And the we would change for more intuitive
error messages but with an unintuitive inclusion mechanism. So
eventually that's probably not worth it. In both cases we have to
compensate some unintuitiveness by big warning in the documentation.
So let's keep the current state, and improve the doc. isn't it ?
gael.
---