依存型を持つ純粋関数型言語 Idris
Idris http://idris-lang.org/ は依存型を持つ純粋関数型言語。C言語経由でネイティブコードを生成する他、JavaScriptコードの生成もできるようだ。*1
cabalを使ってインストールする。
cabal update; cabal install idris
ハローワールドのソースコード。IdrisはHaskell風の文法を持っている。型注釈は必要。
module Main main : IO () main = putStrLn "Hello world"
コンパイルして実行してみる。
prog_idris$ idris hello.idr -o hello prog_idris$ ./hello Hello world prog_idris$ idris hello.idr -o hello.js --target javascript prog_idris$ node hello.js Hello world prog_idris$
後で色々やってみるかも。
*1:コンパイルされたコードは人が読めるようなものではないです。