in reply to Re^4: strange list operator
in thread [Resolved] strange list operator

That's because you used literals, so the range operator is expanded at compile time. If you used
my $max = 2e7; my @aa = 1 .. $max; my @bb = 1 .. $max;

You'd get no error, as the lists are expanded at runtime and immediately thrown away.

لսႽ† ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ

Replies are listed 'Best First'.
Re^6: strange list operator
by xiaoyafeng (Deacon) on Oct 09, 2015 at 09:17 UTC
    Thanks!! your replies perfectly answer my question. I can't still believe perl list assignment has the flaw/bug like this though. I will use list assignment at runtime at most.




    I am trying to improve my English skills, if you see a mistake please feel free to reply or /msg me a correction

      "I cannot fit all of my belongings in my car, I need to rent a moving van. That is a bug with my car."

      I am not understanding why memory exhaustion would be a considered a bug or flaw.

      --MidLifeXis

        "...a bug with my car"
        karls-mac-mini:~ karl$ perl -E "my @aa = 1..20_000_000; my @bb = 1..20 +_000_000;" karls-mac-mini:~ karl$

        My prompt is back after some seconds and nothing weird happened. I guess that means i got a big car.

        Best regards, Karl

        «The Crux of the Biscuit is the Apostrophe»