From: James Edward Gray II Date: 2005-06-18T00:00:23+09:00 Subject: Re: stubborn program using readline On Jun 17, 2005, at 9:28 AM, Wybo Dekker wrote: > What I need is a translation of this simple Perl example into Ruby - > I think Ruby can't do this: [snip code] I think it can: #!/usr/local/bin/ruby -w require "readline" include Readline lines = ARGF.readlines puts "#{lines.size} lines." loop do line = readline("Line number: ", true) if line !~ /^\d+$/ puts "Please enter a positive integer." else number = line.to_i case number when 0 break when 1..lines.size puts "Line #{number}: #{lines[number - 1]}" else puts "No such line." end end end __END__ My run: $ ruby showlines.rb showlines.rb 25 lines. Line number: 1 Line 1: #!/usr/local/bin/ruby -w Line number: 16 Line 16: case number Line number: 17 Line 17: when 0 Line number: 18 Line 18: break Line number: 1003 No such line. Line number: darn Please enter a positive integer. Line number: 0 Hope that helps. James Edward Gray II