in reply to Re^3: Moose type question
in thread Moose type question
It is not a union, it is an algebraic data type
I have no idea what that means. You described a type that could take one of two types of values, and that what ::Union does. I figured it would be a solution that falls within your mental model, and thus likely to work and to get promoted.
Your second "Simple demonstration" seems to be a bug
Filed as CPAN RT#58411
Funny, because this perfectly illustrates why I really don't like undef.
The problem has nothing to do with undef. The problem is sending control data in band. A value was reserved to mean "no coercion occurred". If the function had used zero instead of undef, it would suffer from the same bug.
Undef is only a problem if you think it's ok for you and only you to use undef despite a long and continuing history of usefully using undef in Perl.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^5: Moose type question
by stvn (Monsignor) on Jun 15, 2010 at 17:01 UTC | |
by ikegami (Patriarch) on Jun 15, 2010 at 18:00 UTC |