Logan Capaldo wrote: > On Jan 20, 2006, at 3:05 PM, Tom Allison wrote: > >> my $super_ids; >> ... >> print $super_id,"\n"; > > In ruby... > > super_ids = nil # assign to declare > ... > print super_id, "\n" > > If you run this you'll get > NameError: undefined local variable or method `super_id' for main:Object Which basically means that in this "language" there is NO WAY to declare a variable. No way to say, "hey dude, I want a new (censored) x in here". All you get is a RUNTIME error if you print (or compute with or...) a variable sooner than you assign to it. Which is pretty useless. And which means that if I do a coll.each { |i| blah blah blah} there is no telling whether it will use a new local i or some i "declared" outside. And there is no way to make sure it does one or the other. And whenever I need to loop through something I have to make sure i use a different variable than any that could ever be "declared" in the same scope. Don't you think it's a bit stupid? You probably don't, you program in Ruby. -- Posted via http://www.ruby-forum.com/.