*In fact you seem to be calculating all of the odd numbers rather than the prime numbers.*

Indeed, and in a very clumsy way, including the deprecated use of a map in void context...

**Update:** at the moment of this update this node has gained a reputation of -4. So far so fine. However this should imply that at least four persons did disagree with my claim. I must deduce that those persons think that

`@prime = (1,2);
map { push(@prime,$_) if (($_ % 2) != 0) } (2 .. 100);
`

is a very

*nice, clean and elegant* way to obtain the list of "primes" (in

l.frankline's arithmetic) as opposed to, say,

`my @prime=(1,2,grep $_%2, 2..100);
`

PS: from perldoc perlstyle:

**Avoid using grep() (or map()) or `backticks` in a void context, that is, when you just throw away their return values. Those functions all have return values, so use them. Otherwise use a foreach() loop or the system() function instead.**

Comment onRe: Answer: Easy way to list prime numbers 1 to 100SelectorDownloadCode