さて、今までは読み書き両用でみてきたが、
現実には、読み取り専用のプロパティや、
書き込み専用のプロパティもある。

property のインタフェースは、
プロパティ名、getter、setter の名前を渡すことだが、
読み取り専用や書き込み専用の場合どうするか。

1. getter、setter として、undef を渡せるようにする。

getter が undef の場合、読み取りはできない、
setter が undef の場合、書き込みはできない。
そのように実装することは可能だ。
property 側は undef かメソッド名か調べ、
undef であれば、croak すればいいというわけだ。