Okay, I am trying to clarify the use of nil in Ruby.

When you set a variable to nil, Ruby seems to make the variable a nil
object.

Now, is there a way to actually delete the variable from memory?

Something similar to the difference in Perl from doing:
    $test = undef;   #equivalent to ruby's test=nil
    undef $test;     #this removes test from namespace. how to in
ruby?


Also, is there any simple construct to find if a variable is defined?

In Perl, there exists the function called "defined" that will return
true or false based on whether the variable is defined (ie. has been
created AND is not nil).
This is useful to build simple constructs, such as:
    @name = defined name? name : "unknown"
and is very useful for doing on the fly constructs (ie. have a program
write code that is later evaluated).