Gordon Henriksen schreef:

> I find it useful to distinguish between unassigned and undefined
> (null).

I am not sure that you need this distinction, but it should be no
problem to have it, just like 'tainted' and 'NaN' and 'zero/empty' and
'error'.


> I find null propagation frustrating; it's more useful that my code
> keep data rather than to throw it away on the theory that "undef
> means maybe, and anything combined in any fashion with maybe results
> in more maybe". I just wind up writing defined(expr)?expr:0 over and
> over to avoid throwing away the other part of the expression.

It should be a lexical mode, so that you can choose when to have it and
when not.
I prefer the "anal retentive 99 + undef -> die" mode for almost
everything.


> An unassigned variable is very different, and is a compile-time
> concept. Static flow control can find accesses of not definitely
> assigned local variables

AFAIK that is not possible in Perl. (eval etc.)

-- 
Grtz, Ruud

Reply via email to