From: Dave Thomas Date: 2002-03-12T05:50:27+09:00 Subject: Re: painfully newbie question Damien Joly writes: > population = Array.new(5,Individual.new(1,0)) This line isn't doing what you think: it's initializing the array with five references to the same individual object. population[0]---\__ population[1]--\ \ population[2] -----> Invdividual.new() population[3]--/ __/ population[4]---/ Try population = [] 5.times { population << Individual.new(1,0) } or population = (1..5).collect { Individual.new(1,0) } Cheers Dave