2011-07-29 (Fri) [長年日記]
_ Rubyの聖地でHaskellを語る
オープンソースサロンで山本和彦さんの「Rubyの聖地でHaskellを語る」という講演を聴いた。
Haskellはずっと気になっているのだけど、何となくプログラムを書いてみるところまで至っていない。何か敷居が高いんだよね。
静的型付けの利点には共感するところが多いんだけど、本格的な関数型言語なところが自分にとってはネックなのだ。mapとかは使うけど、普通にループで書けるところを再帰で書くのはちょっと、というレベルなので。木構造を探索するときとかは再帰で気持ち良く書けるんだけど。ちゃんと取り組んだら逆にRubyが中途半端に思えるのかな。
ということで質問では、「静的型付言語は好きなんですが、関数型言語よりオブジェクト指向言語がいい人はどうするべきなんでしょうね」という質問をして、「そういう人にはScalaをお薦めします」という回答を得た。 たしかにScalaくらいだったらちょっと触ってみようかなという気がするのだが、オブジェクト指向言語で型推論をするのは難しいらしく、山本さんもおっしゃっていたがScalaの型推論は不完全(というか、Hindley/Milnerの型推論システムではない?)らしい。
結局、オブジェクト指向にはRubyのような動的型付言語の方が合っているということになってしまうのかなあ。
追記:
講演資料が公開されたので興味のある方はどうぞ。
関数型言語の定義が素敵。