2020-05-03から1日間の記事一覧

inject が Enumerator を返さない(Ruby)

例えば true/false の配列をビット列に変換したいとして、こうしたかった。 cond = [true, false, false, true, false, true] cond.inject(0).with_index {|(acc, c), i| c ? acc | 1 << i : acc} #=>TypeError (0 is not a symbol nor a string) injectはブ…

Ruby で同値(必要十分)関係

Ruby で「p と q が同値」あるいは「必要十分」、つまり の関係を表すにはどうしたらよいでしょうか。これはp == qのことでも、p.equal?(q) のことでもありません。ではなくて、 p が T ならば q も T、p が F ならば q も F ということです。T とか F は何…