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 http://sourceforge.net/projects/quanthas/.  The aim of the project is to produce a Haskell implementation of Quantlib (http://sourceforge.net/projects/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@sefer.org> 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