its an exceptional behaviour, its a code smell,
good code, should try to make exceptions normal
its a very poor design
they don't have variable declaration, and they have
to go head over heels to provide acceptable behaviour
anyway, it is a bad thing in the language,
lets not defend it (i hope)
julia still have a lot to offer, i guess it can afford one design flaw