simonpj による STM 解説記事
Simon Peyton Jones という Haskell のほうの偉いひとが、何かの本に STM の解説記事を書くことになったということで、コメントを求めています。http://haskell.org/haskellwiki/Talk:SantaClausProblemV2
でまぁコメントはいっぱい集まっているんですがそれはともかく、リンク先からさらにリンクされているこの論文はとても良いのでおすすめ。本の想定読者は Haskeller に限らないため、論文でも Haskell の基本から説明をはじめて、 STM (Software Transactional Memory) を使った並列プログラミングの解説をしています。
内容もいいんだけど、非常に(おれの耳に)心地良いのは次の一文。
>Haskell is, first and foremost, a functional language.Nevertheless, I think that is is also the world’s most beautifulimperative language. Considered as an imperative language,Haskell’s unusual features are that
>Haskell は、まず第一には関数型の言語である。そうであるが、私は Haskell は世界でもっとも美しい命令型言語でもあると思う。命令型言語として考えると、 Haskell の珍しい特徴は、
>ほんとそうだと思うんですよね。「アクション」というのはいわばコード片みたいなもので、それを変数に代入したり、リストにしたり、関数の引数にしたり、もちろん好きなように組み合わせて新しいアクションを作ったり……ということができるようになっているわけです。これが面白い。
あ、でも、内容はいいかもしれないけど、本当に Haskell を何も知らないプログラマが読んで理解できるかどうかはまた別ね。念のため。