関数プログラミングのアプローチ (22)

参考文献

前回で、行番号を付加するプログラムを題材にした、入出力を関数的に表現する方法についての議論は終わりです。次のテーマに進む前に、これまでの内容に関するところで参考文献をあげておきたいと思います。

IOモナドは、プログラミング言語 Haskellで入出力の仕組みとして採用されている機構です。Haskellは、Haskell98という標準が策定されています。

IOモナドについては、次の論文が詳しいと思います。IOモナドの基本的な仕組みと実装方法、他の入出力の機構との比較、IOモナドの拡張について説明されています。一意型を用いてIOモナドを実装する方法についても、この論文が参考になります。

モナドを利用して協調的スレッドや例外を実装する方法については、次の論文が参考になります。

一意型は、プログラミング言語 Cleanで入出力の仕組みとして採用されている機構です。一意型は言語報告の第9章に説明されています。