Появился пакет, который позволяет вызывать Хаскель из .Net и наоборот:
haskell.forkio.com/dotnet Пример оттуда:
module FileDialog where
import NET
selectFile :: IO String
selectFile = do
obj <- new "System.Windows.Forms.FolderBrowserDialog"
(obj :: Object ()) # invoke_ "ShowDialog" ()
obj # getField "SelectedPath" ()
Выглядит очень интересно.