Thank you, Andy and Joseph!
On Thu, Sep 26, 2019 at 8:47 AM Andy Bach <andy_b...@wiwb.uscourts.gov> wrote: > > > Still, it's just "works for me": > > seq 1000000 | time perl6 -ne 'my $y += $_; END { print $y; }' > > I think that's still the wrong one - your missing the "Int" > $ seq 1000000 | perl6 -ne 'my Int $y += $_; END { print $y; }' > 500000500000 > > though that works here, admittedly, my p6 is sort old > This is Rakudo version 2018.03 built on MoarVM version 2018.03 > implementing Perl 6.c. > > I'm a little puzzled, I'd've thought the loop around the 'my Int $y' would > redeclare a local $y each time. Instead it behaves like: > $ time perl6 -e 'my Int $y = 0;for ( 1 .. 1000000) { $y += $_} ; say $y; ' > > (which is signficantly faster ;-) > 500000500000 > real 0m1.229s > user 0m1.254s > sys 0m0.040s > > ) > ________________________________ > From: Joseph Brenner <doom...@gmail.com> > Sent: Wednesday, September 25, 2019 11:13 PM > To: William Michels <w...@caa.columbia.edu> > Cc: Marc Chantreux <e...@phear.org>; Vittore Scolari > <vittore.scol...@gmail.com>; Elizabeth Mattijsen <l...@dijkmat.nl>; perl6 > <perl6-us...@perl.org> > Subject: Re: anything faster than say [+] lines? > > Oh, wait. I tried the wrong one-liner. Still, it's just "works for me": > > seq 1000000 | time perl6 -ne 'my $y += $_; END { print $y; }' > 50000050000029.29user 0.06system 0:28.41elapsed 103%CPU > (0avgtext+0avgdata 76196maxresident)k > 63328inputs+0outputs (32major+15588minor)pagefaults 0swaps > > > > On 9/25/19, Joseph Brenner <doom...@gmail.com> wrote: > > I just gave that one-liner a try, but I didn't see that error: > > > >> seq 1000000 | time perl6 -e 'say [+] lines' > > 500000500000 > > 28.70user 0.07system 0:28.29elapsed 101%CPU (0avgtext+0avgdata > > 74188maxresident)k > > 63424inputs+0outputs (32major+15409minor)pagefaults 0swaps > > > > > > perl6 --version > > This is Rakudo Star version 2019.03.1 built on MoarVM version 2019.03 > > implementing Perl 6.d. > > > > uname -a > > Linux fandango 4.9.0-8-686 #1 SMP Debian 4.9.144-3 (2019-02-02) i686 > > GNU/Linux > > > > > > > > On 9/24/19, William Michels via perl6-users <perl6-us...@perl.org> wrote: > >> I'm seeing a strange error. I started trying out Marc's original code, > >> then tried to adapt some Perl5-type solutions from SO to see how they > >> performed when re-written as Perl6. One thing I wanted to explicitly > >> test was how restricting to an "Int" type affected performance. > >> > >> However, I found a surprising result: a sequence of one-million Ints > >> throws an error, but a sequence of 999,999 Ints does not: > >> > >>> mbook:~ homedir$ seq 1000000 | time perl6 -e 'say [+] lines' > >>> 500000500000 > >>> 4.81 real 4.86 user 0.20 sys > >>> mbook:~ homedir$ seq 1000000 | time perl6 -ne 'my $y += $_; END { print > >>> $y; }' > >>> 500000500000 4.88 real 5.06 user 0.19 sys > >>> mbook:~ homedir$ seq 1000000 | time perl6 -ne 'my Int $y += $_; END { > >>> print $y; }' > >>> Type check failed in assignment to $y; expected Int but got Num > >>> (500000500000e0) > >>> in block <unit> at -e line 1 > >>> 499999500000 4.77 real 4.97 user 0.19 sys > >>> mbook:~ homedir$ seq 999999 | time perl6 -ne 'my Int $y += $_; END { > >>> print > >>> $y; }' > >>> 499999500000 4.86 real 5.05 user 0.19 sys > >>> mbook:~ homedir$ perl6 -v > >>> This is Rakudo version 2019.07.1 built on MoarVM version 2019.07.1 > >>> implementing Perl 6.d. > >>> mbook:~ homedir$ > >> > >> Any comments or explanation appreciated, > >> > >> Best Regards, Bill. > >> > >> > >> > >> > >> On Tue, Sep 24, 2019 at 1:59 AM Marc Chantreux <e...@phear.org> wrote: > >>> > >>> hello, > >>> > >>> > > > > nice ... but when x is ~ 75440 (not always), there is a problem > >>> > > > What is x here? > >>> > > sorry. x is the arg of seq (number of lines). > >>> > That never happens on my laptop > >>> > >>> well.. so it's a problem with my station. nevermind :) > >>> > >>> thanks again for helping > >>> marc > >> > >