PerlのAttributeについてのお勉強 このエントリの内容は結構適当です。 今更ですがCatalystなどで使われているattributeに興味を持ったので調べてみた。 やや日本人向けははてな勉強会の資料などにもあります。 今回は、関数のattributeについて。SCALARとかARRAYとかHASHはスルーです。 あと、モジュールなperlではやってません。超シンプルです。 今のPerlでは sub foo : baz {}のように記述出来ますが、通常ではエラーになってしまうのです。 デフォルトで対応しているattributesは(lvalue|method|locked|unique|shared)のみらしいので、bazは対応してないのでエラーが出ます。 perldocを見るとMODIFY_CODE_ATTRIBUTESって関数でattributesの処理をしているそうなので、