Lexical::Types by VPIT

Vincent Pit氏のLexical::Typesがなんだかすごい。
SYNOPSISより:

{
  package Str;
  sub TYPEDSCALAR { Some::String::Implementation->new }
}
use Lexical::Types;
my Str $x; # $x is now a Some::String::Implementation object

もともとPerlには"my Class $x"という構文があり,昔は擬似ハッシュのために使われていたが,現在は形が残されているだけで意味のない構文だった。その使われていない型宣言構文を再利用したのがこのモジュールである。これは純粋なPL_check Hackであり,ソースフィルタは一切用いていない。PL_check Hackもここまでくると芸術的だ。