>>>>> "M" == Mathieu Bouchard <matju / sympatico.ca> writes: M> def ~; $_ =~ self; end When you write this, the first *local* variable is $_. This mean, in this case, that $_ is always initialised with nil in 'def ~' $_ is a local and thread-local variable. Guy Decoux