new haskell project (Was Re: [Haskell-cafe] Subtype polymorphism in Haskell)

Daniel Cook danielkcook at
Fri Jul 9 12:15:50 EDT 2010

Hi Simon,

I'm interested in this as well (you might have seen my other posts
about getting QuickFIX interfaced with Haskell).

One question (Yitzchak raises a valid point):

Why port QuantLib's structure rather than directly build an idiomatic
Haskell quantitative finance library? Especially given that the task
lends itself so nicely to functional programmming (cf the canonical
Functional Pearl by SPJ on composing financial contracts).  Just
curious about your rationale...

- Dan

On Tue, Jul 6, 2010 at 7:26 PM, Simon Courtenage <courtenage at> wrote:
> Hi,
> Just to add some details about the project I'm working on in case anyone is
> interested.  The project is called Quanthas and is being hosted on
> sourceforge at  The aim of the
> project is to produce a Haskell implementation of Quantlib
> ( an open source library for
> quantitative finance written in C++.  Haskell is starting to be used
> seriously in quantitative finance and risk modelling circles within the
> investment banking and finance community, so I thought there would be some
> value in producing such a version.
> If anyone is interested in helping out, we would be more than happy to hear
> from you, since the project has just started and there's a great deal to do
> (and learn!).
> Best regards
> Simon Courtenage
> On Tue, Jul 6, 2010 at 2:32 PM, Yitzchak Gale <gale at> wrote:
>> Hi Simon,
>> Did you intentionally not reply to the list?
>> Simon Courtenage wrote:
>> > This is for a project to port an open-source C++ library to haskell.
>> Great! We'd love to give you whatever support you need
>> for your efforts.
>> > My initial plan is to more or less preserve the way the
>> > library works in the first draft of the port and see how
>> > far we can get like that
>> That's fine, as long as you truly mean the way it works,
>> and not the way the code is structured. Haskell is a post-OO
>> language. Its abstractions are very different than class
>> structures in C++. There is no direct translation - any given
>> C++ class structure could correspond to many totally different
>> kinds of Haskell programs, depending on what the program
>> is trying to do.
>> If you are trying to find a method to transliterate a strongly
>> OO-style C++ program more or less word for word into
>> Haskell in a way that the class structure of the C++ will
>> still be apparent in the result, you are likely in for a frustrating
>> experience. You will spend a lot more time than you expected,
>> and the results will be very unsatisfying. Many others have
>> ended up that way.
>> On the other hand, if you are willing to be a little more flexible
>> in your thinking, you'll probably find the task much easier than
>> you thought, enjoy it, and reap many benefits from the process
>> that you never imagined.
>> In any case, please keep us in the loop, we'd like to hear
>> how it's going. And, uh... would you be willing to share a
>> few more details about what it is that you're trying to port? ;)
>> Thanks,
>> Yitz
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at

More information about the Haskell-Cafe mailing list