HOP3章終了。
"0e0"の使いどころがなかなか。
論理演算
$ "0e0" || 1
0e0
$ 0 || 1
1
真と判定、で演算してみる。
$ "0e0" * 5
0
$ "0e0" + 5
5
$ "0e0" - 5
-5
数値だ
$ "0e0" == 0
1
$ "0e0" eq 0
論理演算で真を返すのに0
で、これがどう便利かというと
$cached{$key} ||= make_cache($key)
キャッシュに0が入ってる場合偽と判定されてしまい、キャッシュがあるのに再計算してしまうのだけど"0e0"を入れておくときちんとキャッシュが効くと。
Higher-order Perl: A Guide To Program Transformation
Mark Jason Dominus
Morgan Kaufmann Pub / ¥ 7,678 (2005-05-30)
通常24時間以内に発送
Mark Jason Dominus
Morgan Kaufmann Pub / ¥ 7,678 (2005-05-30)
通常24時間以内に発送
HOPではOrcish maneuverに絡めてあって、3章はこの部分が一番面白かった。4章はイテレータ、この章に100p近く割いてある。