"Omid Mo'menzadeh" <omid.mnza...@gmail.com> writes:

> I'm just re-stating this to make sure I'm getting it right: Definitions are
> lazy, and the expression in front of # is lazy too, so it gets a chance to
> see the definition once it's done? Am I right?

It's not a definition but an assignment, and the assignment is not
"lazy" but executed as soon as it is complete.  Recognizing its
completeness may require examining the type of the next token, and the
type of $ depends on its value (which consequently needs to be evaluated
to figure out its type) while the type of # doesn't.

-- 
David Kastrup

Reply via email to