
This could be a game changer. Great work Andrew!! -- Don andrew.appleyard:
I'd like to announce the first release of Salsa, an experimental Haskell library that allows Haskell programs to access .NET libraries.
Here's a taste:
type Hello.hs import Foreign.Salsa import Bindings
main = withCLR $ do _Console # _writeLine ("Hello .NET World!")
type Hello.imports System.Console: WriteLine
msbuild .\hello Hello .NET World!
Salsa operates by loading the .NET runtime into your Haskell process and using the FFI (and run-time code generation) to marshall calls between the .NET and Haskell runtimes. It includes a code generator and a type-level library (which uses type families) to provide type-safe access to .NET libraries in Haskell with C#-style method overload resolution and implicit conversions.
The adventurous can find version 0.1.0.1 of Salsa on Hackage [1], the darcs repository on code.haskell.org [2], and some (limited) documentation on the Haskell wiki [3].
The library is experimental and by no means complete (refer to the wiki page [3] for some of its limitations). Be prepared to end up with incomprehensible error messages and/or a broken compiler! :-)
At the moment you'll need Windows, GHC 6.8, and version 3.5 of the .NET Framework to use it.
Have fun!
[1] http://hackage.haskell.org/cgi-bin/hackage-scripts/package/Salsa [2] http://code.haskell.org/Salsa [3] http://haskell.org/haskellwiki/Salsa
-- Andrew _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe