On Jan 5, 2009, at 1:17 AM, Tomasz Krakowski wrote: > >> I don't see an obvious problem with the code, so I suggest we start >> by >> validating ParsePING(). Without using HighLine at all, can you just >> manually call it with a few different parameters and make sure it is >> doing what you expect? >> >> James Edward Gray II > Parseping is working well, here is it: OK, if you trust it, we will take it out of our consideration. > I think there may be something with HighLine...:( Let's try to rule that out then. Here is pretty much your original code, minus ParsePING() and your ip variable: #!/usr/bin/env ruby -wKU require "rubygems" require "highline/import" MENU = { :one => lambda { puts "You chose 'one.'" }, :two => lambda { puts "You chose 'two.'" } } choose do |menu| menu.prompt = "Please choose your test: " MENU.each do |name, code| menu.choice(name, "Help for #{name}") do code.call end end end __END__ That works as I expect it to. Is it the same for you? That leaves the ip variable as our most likely candidate of problems. Did you perhaps accidentally load it with code similar to the following? #!/usr/bin/env ruby -wKU ip = Array.new(2, Array.new) p ip ip[0][0] = "Double" p ip __END__ Anyway, I recommend making sure that variable holds what you think it does. James Edward Gray II