On Jul 08, 2006, at 8:37 pm, Damaris Fuentes wrote: > def LotteryTicket.new_random > new( rand( 25 ) + 1, rand( 25 ) + 1, rand( 25 ) + 1 ) > rescue ArgumentError > redo > end > > end > > ticket = LotteryTicket.new_random() > ***************************************** > When the 3 random numbers created in this last line are not equal, > everything goes right. However, when two or three are identical, the > second argument error is raised and, theoretically, the method > "new_random" should be run automatically again. However, an exception > cames out: > > in `new_random': unexpected redo (LocalJumpError) > > This exception should not be launched... (I thought). Suggestions? He must have meant to type "retry" instead of "redo". redo is for loops only AFAIK Ashley