in reply to Re^3: Problem emulating built-ins like map and grep.
in thread Problem emulating built-ins like map and grep.

Surprisingly, building a list from 1 (or 0 or any integer) using the x op seems to be appreciably (about 25%) faster than using undef?

(1)x10000 is slightly faster 1 .. 10000, 4% or so. Presumably the need for an extra incr operator between stores, though on some architectures that have an auto-increment , the cost of a store would be the same as a incr-and-store.

I can't detect any difference in the memory size. 408k for a list of 100,000 on my machine, which translates to 4 bytes per value plus a little overhead.


Examine what is said, not who speaks.

The 7th Rule of perl club is -- pearl clubs are easily damaged. Use a diamond club instead.

  • Comment on Re: Re^3: Problem emulating built-ins like map and grep.

Replies are listed 'Best First'.
Re^5: Problem emulating built-ins like map and grep.
by Aristotle (Chancellor) on Jan 23, 2003 at 07:40 UTC
    Interesting - goes to show you should never rely on intuition, always on benchmarks, I guess. You will find a difference, memory wise, if you store the list in an array. (For me, 2MB vs 2.4MB with ()x1_000_000 - not a gigantic difference, but certainly noteworthy.)

    Makeshifts last the longest.