<div>I&#39;m using ghci + hmatrix and a few other packages as a Haskell based replacement for Matlab, everything works well so far in terms of available functionality. However, I have encountered an issue when running in ghci on x86_64 systems - calls into functions that in turn call gsl functions will result in a bus error, e.g:</div>
<div><br></div><div><div><div><div>Prelude&gt; :m +Numeric.Container </div></div></div></div><div><div>Prelude Numeric.Container&gt; randomVector 10 Gaussian 10</div><div>fromList Bus error (core dumped)</div></div><div><br>
</div><div>I attached gdb and found the bus error was happening in gsl_rng_alloc() but some investigation indicate that the problem is probably due to this bug in ghci: <a href="http://hackage.haskell.org/trac/ghc/ticket/2912">http://hackage.haskell.org/trac/ghc/ticket/2912</a> which has been marked as a duplicate of <a href="http://hackage.haskell.org/trac/ghc/ticket/781">http://hackage.haskell.org/trac/ghc/ticket/781</a> and a recent update to 781 indicates that it won&#39;t be addressed until at least v 7.6.1 (781 also references <a href="http://hackage.haskell.org/trac/ghc/ticket/3658">http://hackage.haskell.org/trac/ghc/ticket/3658</a> and it seems that this is a pretty large piece of work - moving to fully dynamically linked ghci which has been around for a while and pushed back a few times). </div>
<div><br></div><div>Does anyone know of a workaround that would allow ghci to use wrapped gsl functionality on x86_64 systems in the meantime? Most linux boxes used by quants are x86_64 now, so this issue will impact many people who would like to use Haskell instead of Matlab. </div>
<div><br></div><div>Thanks</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div>