
プライベートでもお仕事でもお世話になっています。
基本的にはHASH or HASH_REF の形での値の引き渡しができることは知ってるのだが、withを使った拡張によっていくつか応用が効くみたいであり、それをイマイチ把握してなかったので今回は適当なスクリプトを書いてそれらを確認してみた。
他にも
SmartSequenced ...順序付きスタイルと名前付きスタイルを混合させることが出来る(ハイブリットっぽくて便利だけどこんがらがりそう)
# mixed style(recommend)
smart_seq( 'foo', { val => 'bar' }, { o1 => 'yes' } );
smart_seq( 'foo', { val => 'bar' } );
StrictSequenced ...名前付きスタイルは使えない(より厳密)
seq( 'bar' ); # seq() will get { foo => 'bar' }
seq({ foo => 'bar' }); # named style are NOT available!
などある様子。