From: Tom Sawyer Date: 2003-02-04T01:29:10+09:00 Subject: Re: Local variables & blocks On Monday 03 February 2003 09:14 am, ahoward wrote: > summary : > > nil -> a non-initialized pointer (non assigned to) > defined? -> detects a non-existent pointer (not declared and defined) i understand. thank you for the deep explination. still: puts x #--> undefined local variable or method 'x' for.... why not return 'nack'? then #defined? is not needed for trivial cases. use of nack for most things would raise an error. which is an important distinction to nil. nil, i feel, needs more methods, like .to_f returning 0.0, etc. while something like nack would respond to nearly nothing. nil is sort of playing double roll of sometimes "nothing" and sometimes "non-applicable". likewise we have to do special method checks like defined? and respond_to? to compensate. yes, i've gotten off the main of the topic. sorry. i do see your point though. uninitialized dosen't exactly apply. -- tom sawyer, aka transami transami@transami.net