Boost.Python is for extending Python with C++, or embedding Python in
C++. This is especially useful because it allows you to use Python as an
extension language for a C++ program.
Presumably Boost.Haskell would be for integrating Haskell code with C++,
which would of course be useful, but the main use case (an embedded
extension language) that draws people to Boost.Python isn't as much of a
draw for Haskell because of the compilation phase.
On the other hand, I suppose you could always integrate a Haskell
interpreter like Hugs, or even go the HsPlugins route and dynamically
load a compiled module, but the fit doesn't seem as natural as it does
with a latently typed scripting language.
There are also technical problems that are hard to overcome. Extending
Python is mostly done in C, so a C++ library to add some nice sugar is a
good fit. Haskell, OTOH, embeds C programs via its FFI. There doesn't
seem to be any way to export functions and value from C++ to Haskell,
but instead the C++ code must import from Haskell. All the heavy lifting
is done on the Haskell side, so there isn't as much opportunity to write
a slick C++ library.
This could change if someone made a version of Hugs that can be linked
in as a library with a documented C API for evaluating Haskell code and
mucking with Haskell values. But I don't think its much of a priority
right now :)
--
Alan Falloon
Alexy Khrabrov wrote:
One of the great strengths of Python is Boost.Python. Practitioners say
it's a major advantage of Python over Ruby, for example. So the
question is not whether there's a Boost in Haskell -- C++ and Haskell
are too different for it to have much meaning -- but whether there's or
going to be a Boost.Haskell?
Cheers,
Alexy
On Feb 1, 2007, at 5:03 AM, John Ky wrote:
Does the Haskell community have an equivalent to C++ community's Boost
project with the aim of writing libraries for the eventual inclusion
into Haskell?
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe