<div>R: that may be too much to ask to install R as a 'library' :) however, similarly to boost, this may provide with more opportunities in the future</div><div><br></div><div>GSL: to my experience should work across major platforms (at least I remember compiling MixABEL for Win, and I am using MixABEL for Mac); using GSL in MixABEL worked rather straightforwardly</div>
<div><br></div><div>boost: no experience</div><div><br></div><div>So I would personally be more inclined towards GSL, but only because I had some experience with it. I have however heard that GSL is not-so-perfect library ... so it may appear that eventually you want to switch to boost - but for one function that should not be a big deal, right?</div>
<div><br></div><div>Thinking of the future, boost may indeed be the best option, but I would definitely do some testing on different platforms. If you give me clear instructions, I am willing to do testing for Mac. </div>
<div><br></div><div>Yurii</div><div><br></div>PS what is p.o.p. code?<br><br><div class="gmail_quote">On Fri, May 24, 2013 at 2:55 AM, L.C. Karssen <span dir="ltr"><<a href="mailto:lennart@karssen.org" target="_blank">lennart@karssen.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dear list,<br>
<br>
One of the long standing feature requests for ProbABEL (#2086 in the<br>
tracker) has been adding p-values to the output files (at least for the<br>
most-often used additive model based on dosage files).<br>
Maarten and I have discussed this a while ago and we'd like to implement<br>
this (Maarten actually already wrote a proof of principle).<br>
<br>
Before we go for a certain implementation I'd like to start a discussion<br>
on this list on how to deal with dependencies.<br>
For this specific example we have the following options:<br>
1) Implement p-value code ourselves (from scratch)<br>
2) Use the R math library<br>
3) Use the GNU Scientific Library<br>
4) Use the Boost library<br>
<br>
Option 1 is a bad one, because writing good code for extreme p-values is<br>
not trivial and this problem has already been solved (by at least the<br>
three other options in the list).<br>
<br>
As to options 2-4 I'd like to hear your opinion on the following:<br>
a) introducing dependencies on external libraries: with any of these<br>
solutions we introduce a dependency for the people running ProbABEL.<br>
Option 2 depends on R being present, 3 on the installation of the GSL<br>
and option 3 on Boost. Note that (for efficient matrix math we already<br>
recommend installing the Eigen headers, but that is only necessary when<br>
compiling, not when running).<br>
Personally I don't see this as a bad thing, especially since I can use<br>
the ./configure mechanism to disable the feature if the lib is not installed<br>
b) which lib would be best to use? Option 2 is easy (and we have<br>
Maarten's p.o.p. code based on that). Option 3 would have been my first<br>
choice and is also not difficult to program (also the GSL has been shown<br>
to have a stable implementation for low p-values [1]). Option 3 is more<br>
complex to program, but given the wide range of the Boost libs, we may<br>
be able to leverage some of its other features as well (e.g.<br>
reading/writing gzipped files).<br>
<br>
So in short:<br>
ad 2) easy, but large dependency on R (will probably also work on Windows)<br>
ad 3) easy, simple, but may be more difficult for Windows (needs to be<br>
checked)<br>
ad 4) more difficult, but more possibilities for the future<br>
<br>
<br>
Any thoughts/suggestions?<br>
<br>
Thanks,<br>
<br>
Lennart.<br>
<span class="HOEnZb"><font color="#888888">--<br>
-----------------------------------------------------------------<br>
L.C. Karssen<br>
Utrecht<br>
The Netherlands<br>
<br>
<a href="mailto:lennart@karssen.org">lennart@karssen.org</a><br>
<a href="http://blog.karssen.org" target="_blank">http://blog.karssen.org</a><br>
<br>
Stuur mij aub geen Word of Powerpoint bestanden!<br>
Zie <a href="http://www.gnu.org/philosophy/no-word-attachments.nl.html" target="_blank">http://www.gnu.org/philosophy/no-word-attachments.nl.html</a><br>
------------------------------------------------------------------<br>
<br>
</font></span><br>_______________________________________________<br>
genabel-devel mailing list<br>
<a href="mailto:genabel-devel@lists.r-forge.r-project.org">genabel-devel@lists.r-forge.r-project.org</a><br>
<a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/genabel-devel" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/genabel-devel</a><br></blockquote></div><br><br clear="all">
<div><br></div>-- <br>-----------------------------------------------------<br>Yurii S. Aulchenko<br><div><br></div><div>[ <a href="http://nl.linkedin.com/in/yuriiaulchenko" target="_blank">LinkedIn</a> ] [ <a href="http://twitter.com/YuriiAulchenko" target="_blank">Twitter</a> ] [ <a href="http://yurii-aulchenko.blogspot.nl/" target="_blank">Blog</a> ]</div>