in reply to foreach loop

You may want to try something like this:
@monks = ('Suaveant', 'iakobski', 'merlyn', 'boo_radley'); foreach (@monks) { chop; print; }
The line while(<>) simply accepts input from STDIN until nothing else is received, so I don't see why you really want to use that. Secondly, the print should really be within the loop. The foreach loop will loop over each element in the array @monks and perform whatever operations you have within that block on that element. In this case, I think you want to do a chop and then a print - by putting it into the loop, you'll get this effect on every element of the array.

By running this snippet, I was able to produce the output you wanted: Suaveantiakobskimerlynboo_radle.

Hopefully, this makes a little more sense to you. You can go here for more information on foreach loops.

Good luck,
- Sherlock