globalrev wrote: > puts "Input sentence:" > sentence = gets.split() > puts > > temp = sentence > phrase = sentence > puts ":", temp, sentence, phrase > > phrase[0] = temp[1] > puts "oink", phrase, temp > > when changing phrase[0] this will change temp as well and even > sentence! makes no sense and very surprising. Well actually it makes perfect sense.. given what a Ruby variable actually is. See below. how do i do what i want > to do? > > so basically ami messing with pointers here or what? Yes you are. Variables in ruby are references to their underlying objects. Assignment assigns the references. Use the dup method to create copies. Ron.