{"categories":["Perl"],"version":"1.0","title":"Type as State, Coercion as Hook","author_url":"https://blog.hatena.ne.jp/gfx/","type":"rich","description":"Moose\u306eTypeConstraint\u306f\uff0c\u578b\u3068\u3044\u3046\u3088\u308a\u306f\u3042\u308b\u30c7\u30fc\u30bf\u306e\u6027\u8cea\u3092\u8868\u73fe\u3057\u305f\u3082\u306e\u3060\u3068\u8003\u3048\u3089\u308c\u308b\u3002\u307e\u305f\uff0cTypeCoercion\u306f\uff0c\u3042\u308b\u578b\uff08\uff1d\u3042\u308b\u30c7\u30fc\u30bf\u306e\u6027\u8cea\uff09\u306b\u5bfe\u3057\u3066\u30d5\u30c3\u30af\u3092\u639b\u3051\u308b\u30e1\u30ab\u30cb\u30ba\u30e0\u3068\u8003\u3048\u3089\u308c\u308b\u3002 \u3053\u306e\u3088\u3046\u306b\u8003\u3048\u308b\u3068\uff0cCoercion\u3092\u5229\u7528\u3057\u3066\u3044\u308d\u3044\u308d\u3068\u9762\u767d\u3044\u3053\u3068\u304c\u3067\u304d\u308b\u306e\u3067\u306f\u306a\u3044\u304b\u3068\u601d\u3046\u3002\u305f\u3068\u3048\u3070\uff0c\u4ee5\u4e0b\u306e\u3088\u3046\u306bCoercion\u3092\u5229\u7528\u3057\u3066\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u63a8\u6e2c\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b*1\u3002 #!perl package E; use Any::Moose; use Any::Moose '::Util::TypeConstraints'; use Encode qw(encode de\u2026","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fgfx.hatenadiary.org%2Fentry%2F20091029%2F1256797398\" title=\"Type as State, Coercion as Hook - Islands in the byte stream (legacy)\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","author_name":"gfx","height":"190","image_url":null,"blog_url":"https://gfx.hatenadiary.org/","width":"100%","url":"https://gfx.hatenadiary.org/entry/20091029/1256797398","provider_url":"https://hatena.blog","blog_title":"Islands in the byte stream (legacy)","published":"2009-10-29 15:23:18","provider_name":"Hatena Blog"}