FFIでC言語を呼び出せたので、extern "C"でラップした.NET APIを呼び出せるか試しました。Windows FormsでGUIが表示できました。右がスクリーンショットで、以下がソースです。 https://gist.github.com/738961 gccではC++/CLIを扱えないため、DLLはVisual C++ 2010 Express Editionで作成しました。今回はテスト目的のためラッパーを自作しましたが、hs-dotnetという汎用ラッパーが存在します。 id:sirocco:20101026:1288085914 今回は使いませんが、HaskellとF#を連携させることもできそうです。 マーシャリング マネージオブジェクトはpinで止めないとポインタが取り出せません。面倒なのでオブジェクトを配列に入れて、インデックスをハンドルとして扱うことにしました。この