18. Running GHC on Win32 systems — Glasgow Haskell Compiler 8.6.4 User's Guideを参考にやってみました。Haskellで書いたフィボナッチ関数をDLLにして、それをRubyのWin32APIを使って呼びます。Haskellのコードは必然的にIOになります。 ファイル名: fib.hs module Fib where foreign export stdcall fib :: Int -> IO Int fib :: Int -> IO Int fib = return . fib' where fib' 0 = 0 fib' 1 = 1 fib' n = fib' (n - 2) + fib' (n - 1) ファイル名: main.c #include <Windows.h> #include "HsFFI.h