2006-05-31から1日間の記事一覧

Haskellコードで>>=を消し、doで統一する理由

端的にいうと、普通に普及してる手続きがた言語との対比がしやすいからである。>>=の利用コードは関数式としてみると識別子の表出順序の差が大きく(というか逆)、doの利用コードでは文列としてみたときのそれが小さい。そしてHaskellソースコードをすんなり…

JParsec

http://jparsec.codehaus.org/ Java5でのParsec実装のようだが、使いやすいのか?static import前提のようではある。chainl/chainrに相当するものがないように見えるが、buildExpressionParsersはあるので、内部で最適化しているようにも見える。 こうみると…

パターンマッチによるメソッド定義@Ruby

http://www.artima.com/rubycs/articles/patterns_sexp_dsls.html よりmultiというライブラリで class Example def initialize() multi(:method2, 0) { 0 } multi(:method2, Integer) {|x| @a + x } end def method1(x) return 0 if x == 0 return @a + x end…

コントラストの高いテーマに入れ替えてみた。