Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-12-12

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:00 tgt Hi. Is there a built-in way to iterate over an array $n elements at a time?
00:00 tgt I know I can use for @a -> $a, $b { }, but then I have to know how many elements I want at a time when I write the code.
00:00 tgt Is there a non-destructive version of munch or can I do something like for @a -> @b[$n] { }?
00:01 timotimo there's always while +@array { my @things = @array.shift for ^$how-many-elements; say @things }
00:03 timotimo oh, and if you want to non-destructively slice the first $n elements, you can @array[^$n]
00:03 timotimo and if you *do* want to slice them off destructively, you can also @array[^$n]:delete
00:04 tgt True, thanks. I was hoping there was somethings a little more concise.
00:04 timotimo @array[^$n]:delete is pretty concise, IMO
00:04 FROGGS joined #perl6
00:05 tgt I meant more concise than the first bit of code you posted.
00:05 timotimo oh
00:05 timotimo i understand now :)
00:05 tgt Oh wait, that didn't do what I want.
00:06 timotimo oh, i'm not sure if @array[...]:delete will punch holes or remove from the beginning
00:06 timotimo lizmats advent post should enlighten us :)
00:08 lizmat it will, close to publishing
00:08 lizmat spoiler: :delete on arrays does *not* remove elemennts, merely assigns Nil to them
00:08 lue .oO(You know your regex library is terrible if the user would've gotten the job done faster without it.)
00:08 tgt An example would be I have @a = ^12 and I want to break it into chunks of length 2 or 3 or 4 or 6 or whatever.
00:09 lue r: my @a = ^12; for @a { next unless $_ %% 2; say $_ }
00:09 tgt say @a.munch($n) while @a; does what I want, but destructively.
00:09 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«0␤2␤4␤6␤8␤10␤»
00:10 lue r: my @a = ^12; for +^@a { next unless $_ %% 2; say @a[$_] }
00:10 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: ( no output )
00:10 lue r: my @a = ^12; for ^+@a { next unless $_ %% 2; say @a[$_] }
00:10 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«0␤2␤4␤6␤8␤10␤»
00:10 tgt r: my @a = ^12; say @a.munch(4) while @a;
00:10 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«0 1 2 3␤4 5 6 7␤8 9 10 11␤»
00:18 timotimo we could build a questhub stencil "port a perl6 module to the new S11 meta.info thingie" :D
00:18 lizmat only 20 minutes late: http://perl6advent.wordpress.com/2013/12/12​/day-12-slicing-with-adverbs-the-only-way/
00:19 diakopter lizmat++ # deliverables
00:19 timotimo yay
00:19 woolfy lizmat++ for writing something that I can understand
00:20 woolfy s/I/even I/
00:22 woolfy " First of all, the “key” of an element in an array, is its index."  Wow, I never realised that.  Nice.
00:23 timotimo wait
00:23 timotimo r: my %h = a=>1, b=>2; say %h<a>:!exists
00:23 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«False␤»
00:23 timotimo there's a True in the blogpost there
00:24 * lizmat checks
00:24 lizmat aha, I realize now
00:24 lizmat there *was* a <b> there, that got eaten
00:24 lizmat TimToady pointed out there was something missing there
00:24 lizmat and I assumed it was <a>
00:24 lizmat but it was <b>
00:25 lizmat or was it <c>
00:25 lizmat whatever, fixing
00:25 lizmat fixed, timotimo++ for noticing
00:25 timotimo :)
00:26 timotimo here it says that the syntax for hash and array slicing are the same
00:26 timotimo but they use {} and [] respectively
00:26 timotimo is that a mistake or just poorly worded?
00:26 lizmat ah, good point
00:26 lizmat poorly worded
00:27 timotimo tgt: in the post you can see that :delete on a list will just assign Nil and leave a hole, so you wouldn't want to do it that wayd
00:27 timotimo of course you could then do @array
00:27 timotimo er
00:28 timotimo @array[]:k[^$n], but you probably can't :delete on the second piece there :\
00:29 tgt I don't think I explained what I want very well (or I'm misunderstanding you)
00:29 tgt I've just found List::MoreUtils' natatime, which does what I want, but is for Perl 5.
00:29 lizmat timotimo++  should be better worded now
00:31 lizmat and now off to bed: tomorrow a long day with fitness and emergency social with MJD and Stevan Little
00:31 lizmat life is hard  :-)
00:32 timotimo gnite :)
00:37 lue r: my @a = 1,2,3; say @a.perl; @a[1]=Nil; say @a.perl
00:37 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«Array.new(1, 2, 3)␤Array.new(1, Any, 3)␤»
00:38 lizmat r: my @a = 1,2,3; say @a.perl; @a[1]=Nil; say @a[]:exists
00:38 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«Array.new(1, 2, 3)␤True True True␤»
00:38 lizmat hmmm
00:39 lizmat r: my @a is default(42) = 1,2,3; say @a.perl; @a[1]=Nil; say @a.perl
00:39 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«Array.new(1, 2, 3)␤Array.new(1, 42, 3)␤»
00:39 lizmat there are always two more bugs
00:40 lizmat :-(
00:40 lizmat really sleep&
00:40 TimToady though, negating :k is kinda useless, as examples go...
01:02 BenGoldberg joined #perl6
01:11 dalek nqp: 35b9de2 | (Timo Paulssen)++ | src/QRegex/P6Regex/Actions.nqp:
01:11 dalek nqp: only use charrange for a single, contiguous range
01:11 dalek nqp:
01:11 dalek nqp: before this patch, it used to ignore single characters,
01:11 dalek nqp: cclasses and erroneously do a range check for ignorecase.
01:11 dalek nqp: review: https://github.com/perl6/nqp/commit/35b9de27e7
01:33 [Coke] lizmat - no, I'm fine. (it's for the new GC member)
01:37 [Coke] and It's already later
01:37 [Coke] ww
02:45 Mouq joined #perl6
02:46 _ilbot joined #perl6
02:46 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
02:55 btyler joined #perl6
03:12 raiph joined #perl6
03:20 logie_ joined #perl6
03:20 [particle]1 joined #perl6
03:21 eternaleye joined #perl6
03:21 FROGGS joined #perl6
03:22 camelia joined #perl6
03:22 PZt joined #perl6
03:26 kaleem joined #perl6
03:30 Vlavv_ joined #perl6
03:35 woosley joined #perl6
03:36 dayangkun joined #perl6
03:44 xinming joined #perl6
03:59 lue TimToady: do you think my S15ish as it stands is good enough to enter the specs/ repo. or does it need some touchups first?
04:09 preflex joined #perl6
04:45 MikeFair joined #perl6
04:53 MikeFair joined #perl6
04:58 Alina-malina joined #perl6
05:50 TimToady lue: my standards for initial synopses is much lower than you suppose :)
05:50 TimToady I only care how they end up
05:52 lue :)
06:01 FROGGS joined #perl6
06:23 wooden joined #perl6
06:26 [Sno] joined #perl6
06:31 moritz \o good morning
06:31 moritz \o/ 3 new HPMoR chapters!
06:33 DrEeevil noooo
06:33 DrEeevil stop destroying my productivity :)
06:34 moritz don't worry, one is very short.
06:35 DrEeevil lalala can't hear you ;)
06:41 SamuraiJack_ joined #perl6
06:53 lue moritz: is the script that generates the HTML forms of the synopses in the mu/ repo?
06:53 lue Eh, docs/feather/script/update-syn seems to be it.
06:55 * lue wonders where S26 is handled.
06:56 moritz S26 is handled manually, if at all.
06:58 lue Interesting.
07:02 dalek specs: 9c555ea | lue++ | S15-unicode.pod:
07:02 dalek specs: The addition of S15!
07:02 dalek specs:
07:02 dalek specs: This has been worked on for a few days now, and it would seem at this
07:02 dalek specs: point it's better to let everyone have edit access than to keep the
07:02 dalek specs: control to myself.
07:02 dalek specs:
07:02 dalek specs: Original gist, which contains a slight bit of revision history for the
07:02 dalek specs: file: https://gist.github.com/lue/7761244
07:02 dalek specs:
07:02 dalek specs: Of note is that this spec is in Pod6, because that's the version of Pod
07:02 dalek specs: I'm familiar with, I can't be bothered to convert to a far less familiar
07:02 dalek specs: POD at the moment, and frankly the specs should be in Pod6 in the first
07:02 dalek specs: place :) .
07:02 dalek specs: review: https://github.com/perl6/specs/commit/9c555ea63f
07:07 dalek mu: 85f3e0c | lue++ | docs/feather/syn_index.html:
07:07 dalek mu: [feather] Add S15 links to the Synopses index.
07:07 dalek mu:
07:07 dalek mu: Note that the HTML-ified synopsis link is not guaranteed to work at the
07:07 dalek mu: moment, it's just placed there for completeness' sake.
07:07 dalek mu: review: https://github.com/perl6/mu/commit/85f3e0cdb3
07:10 lue It's getting a bit late to write a blog post about this :/ . I think I'll save that for tomorrow.
07:10 lue ♘ all o/
07:13 kaleem joined #perl6
07:23 ponbiki joined #perl6
07:28 dmol joined #perl6
07:37 dmol joined #perl6
07:45 xenoterracide joined #perl6
07:54 kst` joined #perl6
07:54 FROGGS joined #perl6
07:54 baest joined #perl6
07:55 robinsmidsrod joined #perl6
07:59 dmol joined #perl6
08:01 denisboyun joined #perl6
08:03 dmol joined #perl6
08:18 zakharyas joined #perl6
08:38 lizmat good *, #perl6
08:40 FROGGS morning lizmat
08:40 lizmat FROGGS o/
08:41 FROGGS lizmat++ # nice post :o)
08:43 lizmat thank you, although a bit factual incorrect wrt to Nil assignment
08:44 FROGGS O.o
08:47 lizmat p: my @a=^5; @a[3]:delete; @a[4]=Nil; say @a[]:exists   # expecting True True True False False
08:47 camelia rakudo-parrot 0bf3de: OUTPUT«True True True False True␤»
08:47 FROGGS : my @a=^5; @a[3]:delete; @a[4]=Nil; say @a[]
08:47 FROGGS p: my @a=^5; @a[3]:delete; @a[4]=Nil; say @a[]
08:47 camelia rakudo-parrot 0bf3de: OUTPUT«0 1 2 (Any) (Any)␤»
08:48 lizmat the issue there is that assigning Nil to a container, deep in the bowels of Rakudo, assigns the default value
08:48 lizmat whereas :delete binds the element to nqp::null
08:48 FROGGS ahh, I remember
08:49 lizmat on reading the element, the nqp::null case obtains the default value from the container description
08:49 lizmat whereas in the Nil case, it's already in the container
08:49 lizmat both have pros and cons
08:49 lizmat I'm not sure why assigning Nil would not also just bind to nqp::null, other than lack of tuits
08:50 lizmat and the fact that assigning Nil is handled in VM specific C-code, and :delete lives in Perl 6 land
08:50 FROGGS *nod*
08:54 lizmat the blog post did make me realize we need at least one more (internal) adverb: :VOID
08:54 sqirrel_ joined #perl6
08:54 lizmat in combination with :delete
08:54 lizmat or maybe :SINK would be better
08:55 lizmat if a slice :delete is done in sink context, it wouldn't need to make the return value(s)
08:55 lizmat an optimizer could add the :SINK adverb in such a case
08:56 lizmat and add a warning if any of the other adverbs were specified (which wouldn't make sense then)
09:02 FROGGS yeah
09:03 hoelzro good morning #perl6
09:04 FROGGS hi hoelzro
09:04 hoelzro ahoy FROGGS
09:08 tadzik hey hey
09:08 tadzik hoelzro: did you get your Jolla phone already?
09:10 nnunley joined #perl6
09:12 hoelzro tadzik: not yet =(
09:14 zakharyas joined #perl6
09:16 tadzik and SteamOS will come out tomorrow
09:16 hoelzro omg
09:16 tadzik exciting times
09:16 hoelzro don't remind me
09:16 hoelzro I'm just sad I didn't get into the beta
09:16 tadzik yeah :/
09:16 hoelzro are you playing Starbound with timotimo at all?
09:16 tadzik the chance was infinitesimal anyway
09:17 lizmat joined #perl6
09:17 tadzik don't have Starbound, no
09:17 hoelzro I was thinking of giving it a try
09:17 hoelzro looks cool
09:18 tadzik hm, I never gave more than 7€ for a game :)
09:18 tadzik like, any game, ever :P
09:19 hoelzro heh
09:19 hoelzro 15 *does* seem a bit steep
09:19 * moritz has spent lots of money on non-computer games
09:19 hoelzro we could always do L4D2
09:19 tadzik I hope that SteamOS release will also mark releases of some long-wanted volvo games
09:19 tadzik like Portal 2, esp. since it was in the controller presentations
09:19 tadzik we should do L4D2 anyway :)
09:20 hoelzro this weekend?
09:20 hoelzro f yes
09:20 tadzik I'm free any evening but on saturday, basically
09:20 DrEeevil SteamOS will be fun to reverse-engineer
09:20 tadzik I don't think there'll be anything interesting about it
09:20 tadzik maybe aside from some miracle gamepad driver that's not completely broken
09:20 moritz just a linux distro with some custom UI
09:21 tadzik hoelzro: well, 15 is "Early Access"
09:21 tadzik every "indie" game these days is Early Access though
09:21 DrEeevil moritz: so take out the interesting parts and integrate it in other distros properly
09:21 DrEeevil much more fun :)
09:22 tadzik something else than a steam client and grub theme? :P
09:23 tadzik well, maybe
09:23 tadzik we'll know soon enough
09:23 tadzik moritz: I don't have problems with spending money on physical copies of stuff, like board games
09:24 tadzik but buying something on steam, with all the DRM is just paying for a right to play a game, with no way to lend it to a friend or whatnot
09:24 hoelzro hmm
09:24 hoelzro tadzik: Friday *might* work
09:24 hoelzro I have to get L4D2 working on my laptop again =/
09:25 hoelzro that, or boot into Windows =(
09:25 tadzik it works really well on mine
09:25 DrEeevil I have no windows, so that's no longer an option
09:25 tadzik and it's an intel gpu :)
09:25 hoelzro hmm
09:25 tadzik (and linux, yep)
09:25 hoelzro I've been using my nvidia card (I have an optimus card)
09:25 hoelzro I've been seeing odd behavior the last week
09:25 hoelzro complaining about OpenGL not working
09:26 tadzik hrm
09:26 hoelzro unfortunately, I've been out of the house all week, and today I have Russian class =/
09:26 hoelzro so tomorrow evening I'll try to fix it
09:26 tadzik no hurry
09:29 hoelzro well, next week I go home to the US for Christmas, so time zones will make things difficult =P
09:29 tadzik and latency :)
09:30 tadzik we can do sunday maybe, if you can't make it by friday
09:31 hoelzro that's true
09:38 xinming joined #perl6
09:43 fhelmberger joined #perl6
09:49 xinming joined #perl6
10:18 tgt joined #perl6
10:42 rindolf joined #perl6
11:10 timotimo ohai
11:10 * Ulti updated his module to be 11 compliant :P
11:10 timotimo \o/
11:16 nwc10 is eleven called eleven because it's named after the date of the advent post?
11:16 tadzik that and S11 :)
11:16 nwc10 aha
11:16 nwc10 perl 6 numerology
11:19 FROGGS Ulti++
11:19 tadzik I should do that with mine :)
11:19 tadzik and this is the point at which we may want a META.info helper, so one does not have to list all those things manually
11:19 tadzik maybe I should update Module::Starter
11:22 timotimo hehe
11:22 timotimo good idea
11:22 timotimo can Module::Starter also update existing META.info files?
11:23 tadzik no reason to not make it so :)
11:23 tadzik although it wouldn't be a starter then
11:24 timotimo well, a car, for example, is started many times
11:25 tadzik true :)
11:27 * timotimo tests specs
11:31 timotimo it's always painful to see the spectests succeed on clean nom and random failures interspersed on your own branch \:
11:45 xinming joined #perl6
11:48 timotimo how do i cause the segfault o_O
11:52 xinming joined #perl6
11:53 timotimo jnthn: i just spotted :foo turns into callmethod("new", var(lexical, "Pair"), ...); would it make sense to inspect lexical Var's in the optimizer to turn them into WVal if they are classes like that? maybe by inspecting if they are readonly or something?
11:55 moritz timotimo: will that behave the same if somebody lexically overrides class Pair?
11:55 moritz timotimo: and will it actually be any faster?
11:56 tadzik will :foo create the lexically overrode Pair?
11:57 tadzik r: my class Pair { method new { die } }; my $a = :foo; say 'alive'
11:57 camelia rakudo-jvm 0bf3de: OUTPUT«␤  in block  at /tmp/X2gPTs2ABN:1␤  in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤  in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤  in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1196␤  in any command_eval at src/Perl6/Compiler.nqp:17␤␤»
11:57 camelia ..rakudo-parrot 0bf3de: OUTPUT«␤  in method new at /tmp/rI32d856nL:1␤  in block  at /tmp/rI32d856nL:1␤  in any  at /tmp/rI32d856nL:1␤  in any  at gen/parrot/stage2/NQPHLL.nqp:1146␤  in any eval at gen/parrot/stage2/NQPHLL.nqp:1133␤  in any evalfiles at gen/parrot/stage2/NQ…»
11:57 moritz r: class MyPair is Pair { }; say (:foo).^name
11:57 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«Pair␤»
11:58 timotimo moritz: yeah, lexical overrides will easily be spotted by the optimizer
11:58 moritz r: constant MyPair = Pair; my class Pair is MyPair { method special { say "look, I'm special } }); (:foo).special
11:58 camelia rakudo-jvm 0bf3de: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/cTznO_wOd0â�¤Unable to parse expression in double quotes; couldn't find final '"' â�¤at /tmp/cTznO_wOd0:1â�¤------> [32m "look, I'm special } }); (:foo).special[33mâ��[31m<EOL>[0mâ�¤    expecting…»
11:58 camelia ..rakudo-parrot 0bf3de: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/SBulbTjIEzâ�¤Unable to parse expression in double quotes; couldn't find final '"' â�¤at /tmp/SBulbTjIEz:1â�¤------> [32m "look, I'm special } }); (:foo).special[33mâ��[31m<EOL>[0mâ�¤    expect…»
11:59 moritz r: constant MyPair = Pair; my class Pair is MyPair { method special { say "look, I'm special" } }); (:foo).special
11:59 camelia rakudo-jvm 0bf3de: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/7hUSv83wLa�Unexpected closing bracket�at /tmp/7hUSv83wLa:1�------> [32mod special { say "look, I'm special" } }[33m�[31m); (:foo).special[0m�»
11:59 camelia ..rakudo-parrot 0bf3de: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/AwUqyXuufv�Unexpected closing bracket�at /tmp/AwUqyXuufv:1�------> [32mod special { say "look, I'm special" } }[33m�[31m); (:foo).special[0m�»
11:59 tadzik );
11:59 moritz r: constant MyPair = Pair; my class Pair is MyPair { method special { say "look, I'm special" } }; (:foo).special
11:59 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«look, I'm special␤»
11:59 moritz rakudo++ # much better error messages than a year ago
12:00 FROGGS yeah, rakudo grows up :o)
12:02 moritz I could also say  Ronja++ # much better error messages than a year ago :-)
12:05 xinming joined #perl6
12:06 tadzik haha
12:13 FROGGS Ronja++ # :o)
12:14 hoelzro hmm
12:14 hoelzro I expected this to *not* print anything:
12:14 FROGGS there is nothing after the colon^^
12:14 hoelzro my %h = :foo(1), :bar(2); say 'hi' if all(%h<foo bar baz>:exists)
12:14 hoelzro why is 'hi' printed?
12:15 timotimo r: my %h = :foo(1), :bar(2); say all(%h<foo bar baz>:exists)
12:15 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«all(True True False)␤»
12:15 timotimo r: my %h = :foo(1), :bar(2); say so all(%h<foo bar baz>:exists)
12:15 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«True␤»
12:15 timotimo r: my %h = :foo(1), :bar(2); say so all(|%h<foo bar baz>:exists)
12:15 camelia rakudo-parrot 0bf3de, rakudo-jvm 0bf3de: OUTPUT«False␤»
12:15 timotimo the all has a single argument, which is a parcel of three values
12:15 timotimo so :exists doesn't return a proper list
12:16 FROGGS p: my %h = :foo(1), :bar(2); say [&&] %h<foo bar baz>:exists
12:16 camelia rakudo-parrot 0bf3de: OUTPUT«True True False␤»
12:16 FROGGS p: my %h = :foo(1), :bar(2); say [&&] @(%h<foo bar baz>:exists)
12:16 camelia rakudo-parrot 0bf3de: OUTPUT«False␤»
12:16 hoelzro I see
12:23 sftp joined #perl6
12:30 xinming joined #perl6
12:38 darutoko joined #perl6
12:54 denis_boyun joined #perl6
12:55 lizmat :exists is specced to return a Parcel
12:55 lizmat if more than one key is requested or not known at compile time
13:00 atroxaper joined #perl6
13:03 mtk joined #perl6
13:04 salv0 joined #perl6
13:10 dalek rakudo/nom: 02af63a | (Elizabeth Mattijsen)++ | src/core/ (3 files):
13:10 dalek rakudo/nom: Implement (hidden) :SINK attribute on slices
13:10 dalek rakudo/nom:
13:10 dalek rakudo/nom: The idea being that te optimizer will add this when it sees a :delete being done
13:10 dalek rakudo/nom: in sink context.
13:10 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/02af63a311
13:10 lizmat commute to Emergency Social &
13:18 kivutar joined #perl6
13:26 shinobicl left #perl6
13:26 shinobicl joined #perl6
13:30 nnunley joined #perl6
13:31 shinobicl left #perl6
13:36 shinobicl joined #perl6
13:39 shinobicl left #perl6
13:41 darutoko joined #perl6
13:41 ajr joined #perl6
13:42 robinsmidsrod joined #perl6
13:44 denis_boyun_ joined #perl6
13:54 xinming joined #perl6
13:57 shinobicl joined #perl6
14:03 sqirrel_ joined #perl6
14:13 kbaker joined #perl6
14:16 PacoAir joined #perl6
14:25 Piers joined #perl6
14:28 hummeleB1 joined #perl6
14:31 xenoterracide joined #perl6
14:38 bluescreen10 joined #perl6
14:40 kaleem joined #perl6
14:43 kaare__ joined #perl6
14:48 btyler joined #perl6
14:57 raiph joined #perl6
14:57 btyler joined #perl6
15:02 atroxaper joined #perl6
15:08 thou joined #perl6
15:08 [particle] joined #perl6
15:16 dmol joined #perl6
15:17 araujo joined #perl6
15:23 denisboyun joined #perl6
15:27 PZt joined #perl6
15:35 lizmat_ joined #perl6
15:38 liztormato Arrived at the Old Bell
15:39 xenoterracide joined #perl6
15:43 * [Coke] has a sick kid pickup from school, which morphs my day into a "burn a personal day before they expire", which means I have the day to work on my article. serendipity, thanks to a puking kid.
15:45 colomon errr… puking++ ?
15:46 kivutar joined #perl6
15:46 ajr joined #perl6
15:47 [Coke] thankfully, she seems fine now.
15:47 hoelzro liztormato: the old bell? like the one downstairs?
15:47 liztormato Yes
15:47 hoelzro nice =)
15:47 robinsmidsrod joined #perl6
15:48 * moritz wishes [Coke]'s kid a quick recovery
15:48 liztormato Emergency social in honor of stevan little and hopefully MJD
15:49 moritz woah
15:49 * moritz would love to meet both of them
15:49 liztormato [Coke]: Best wishes for a speedy recovery
15:50 liztormato moritz: So do we ;-)
15:51 hoelzro moar recovery wishes for [Coke]'s child!
15:52 robinsmidsrod joined #perl6
15:54 rindolf joined #perl6
15:57 robinsmidsrod joined #perl6
15:59 robinsmidsrod joined #perl6
16:02 robinsmidsrod joined #perl6
16:02 rurban1 joined #perl6
16:03 zakharyas joined #perl6
16:13 Sqirrel_ joined #perl6
16:13 robinsmidsrod joined #perl6
16:15 [Coke] Thanks, folks.
16:18 FROGGS[mobile] joined #perl6
16:18 lizmat_ joined #perl6
16:21 lizmat_ Socializing&
16:24 robinsmidsrod joined #perl6
16:38 rindolf joined #perl6
16:39 [Coke] colomon: any pointers/docs on your daily ecosystem tests?
16:39 [Coke] japhb: any pointers/docs on your benchmark tests?
16:39 [Coke] (or anyone else.)
16:41 colomon [Coke]: not really.  we should probably get a real URL for them at some point, instead of just pointing to the current IP of my cable modem.
16:44 [Coke] If I ever get my modified smoke server up and running, using it for the module tests would be reasonable.
16:45 rurban joined #perl6
16:48 spider-mario joined #perl6
16:49 fhelmberger_ joined #perl6
17:01 [Coke] brain dump of notes gets me 750 words for upcoming post.
17:03 * jnthn wonders if the 750 words fell out in sentences, or just 750 random words :)
17:04 TimToady if we were still moderns, we wouldn't care :)
17:04 sahadev joined #perl6
17:05 jnthn bah, I read that as "still modems" first time...
17:05 * jnthn will have some tuits at the weekend o/
17:05 jnthn And Wed/Thu next week, it seems :)
17:06 japhb jnthn: \o/
17:06 japhb [Coke]: What are you looking for, exactly?
17:08 [Coke] anyone have  pointer to pmichaud's note about how the spec is really roast, moreso than the syn?
17:08 [Coke] japhb: anything I can use to add a sentence to my upcoming blog post.
17:09 japhb [Coke]: Well, what's the subject?
17:09 japhb (Of your post)
17:09 TimK1 joined #perl6
17:12 jnthn dinner &
17:14 * japhb is looking at the traffic jam outside and estimating the chance that he will make it through before the breakfast joints close ... rather poor, it appears.
17:14 timotimo roasting perl6
17:14 moritz huh, the irclog search doesn't seem to find recent pmichaud statements
17:14 moritz maybe there's something wrong with the indexer
17:14 timotimo conspiracy!
17:14 TimToady shh!
17:15 japhb timotimo: Were you answering for [Coke] ?
17:15 * moritz runs the cron jobs manually
17:15 timotimo yes
17:16 moritz huh, http://irclog.perlgeek.de/perl6/​search/?nick=japhb&amp;q=traffic finds the utterance from a few minutes ago
17:17 timotimo moritz: could you supply me a compressed tarball of all the days in #perl6 where my nick appears? :3
17:17 japhb timotimo, thnaks.
17:17 timotimo your wlecome
17:18 japhb .oO( Oh no!  We're being chased by a herd of thnaks! )
17:19 moritz timotimo: not trivially through the IR clogs, but should be pretty easy by grepping my irrsi's logs
17:19 timotimo moritz: can't you grep the html files?
17:19 japhb [Coke]: I'd say just point to the github repo.  The machine that has the presentation on it is at home, so I can't grab it for you.  :-(
17:19 sqirrel_ joined #perl6
17:19 moritz timotimo: there are no html files :-)
17:19 moritz timotimo: the pages are generated on-th-fly
17:20 japhb Also note that several other users appear to be using it (every so often someone asks me about it, or wants to know if I accept PR's -- YES, btw.)
17:20 timotimo oh
17:21 japhb I would really like to see more benchmarks added, and I have a backlog of features I'd like to add.
17:21 [Coke] japhb: url for lazycoke?
17:22 jnap joined #perl6
17:22 japhb I'm just spending all of my Perl 6 time on p6-pb lately, as I'd really like to push that to completion
17:22 pat_js joined #perl6
17:22 japhb [Coke]: https://github.com/japhb/perl6-bench
17:26 [Coke] 950 words...
17:27 japhb [Coke]: Go for an even 2 ** 10.  :-)
17:28 rurban1 joined #perl6
17:28 [Coke] anyone have a link to patrick saying that the spec tests are the spec?
17:42 [Sno] joined #perl6
17:43 integral joined #perl6
17:43 integral joined #perl6
17:46 ajr joined #perl6
17:50 [Coke] https://gist.github.com/coke/7932300 - prepost of the 13th article.
17:50 [Coke] feedback definitely welcome.
17:50 timotimo hahaha, epic line break
17:50 timotimo "When is Perl 6 going to be Ready? We get this question a lot in the Perl 6 community, and the answer is never"
17:51 timotimo "as simple as we or the inquirers would like."
17:51 [Coke] AHAHAHAH
17:51 YaTimK left #perl6
17:52 retupmoca huh, planetsix.perl.org gives a 503 error
17:52 TimToady r: say so all( (True,True,False) );  # should say False because a parcel flattens in list context
17:52 [Coke] I will let it percolate for a bit and come back in a while to do more edits.
17:52 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«False␤»
17:52 [Coke] planetsix is dying, yes.
17:53 [Coke] I thought I'd have a little more time before they pulled the plug.
17:53 PerlJam [Coke]: reading ...
17:53 timotimo TimToady: someone should write a spectest for that! :)
17:53 fhelmberger joined #perl6
17:54 TimToady r: my %h = :foo(1), :bar(2); say so all(%h<foo bar baz>:exists)
17:54 [Coke] use http://planeteria.org/perl6/
17:54 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«True␤»
17:54 timotimo [Coke]: can you make a direct link to the line of the daily runs that shows when rakudo/jvm surpassed rakudo/parrot?
17:54 retupmoca are they actually pulling the plug on planetsix? Why?
17:54 [Coke] timotimo yes, but it'l only be good for one day :)
17:54 TimToady r: my %h = :foo(1), :bar(2); say (%h<foo bar baz>:exists).WHAT
17:54 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«(Parcel)␤»
17:54 timotimo [Coke]: oh! you're right of course
17:54 TimToady so why isn't that flattening?
17:54 TimK1 joined #perl6
17:54 [Coke] retupmoca: it's been coming for over a year.
17:55 timotimo well, you could link the commit when you added that line, that makes it a bit more sensible, i think
17:55 [Coke] there are plenty of other places to host such a beast and the admins only have so many resources
17:55 TimToady r: my %h = :foo(1), :bar(2); say so all %h<foo bar baz>:exists
17:55 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«True␤»
17:55 retupmoca fair enough
17:55 retupmoca it just surprised me
17:56 TimToady r: my %h = :foo(1), :bar(2); say so all (%h<foo bar baz>:exists,)
17:56 [Coke] (you can tell it was old news because the other link was already out there. ;)
17:56 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«True␤»
17:56 timotimo [Coke]++ # good advent calendar post
17:56 [Coke] *kermit arm flail*
17:58 timotimo d'aaw :)
17:58 PerlJam [Coke]++ what timotimo said.  :-)
17:58 TimToady r: my %h = :foo(1), :bar(2); say so all (%h<foo bar baz>:exists).list
17:58 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«False␤»
17:59 TimToady so, yeah, rakudobug
17:59 TimToady lizmat: ^^
17:59 PerlJam [Coke]: you might want to add an aside about why it's called "roast"
17:59 PerlJam (anticipating questions from the non-#perl6ers)
18:00 timotimo oh yeah, good point
18:00 timotimo it's because it's there to torture the implementors, right?
18:00 timotimo like, they roast in spec hell?
18:02 TimToady ooh, yeah, terrible linebreak on the first line :)
18:03 TimToady "the answer is never"
18:03 timotimo i vote we introduce a linebreak in the advent calendar markup, so that it stays that way
18:03 [Coke] I feel like I should add "TL;DR - we like testing, but are too cheap/lazy to have CI"
18:03 timotimo that's just too funny not to keep
18:04 [Coke] I assumed roast was related to smolder and smoke
18:05 TimToady people who use hyphens instead of dashes...
18:05 timotimo ah, ok
18:05 timotimo so where do smolder and smoke come from? that's some traditional perl thing? :)
18:06 TimToady ancient hardware testing slang
18:06 TimToady "smoke test"
18:06 TimToady as in "let the magic smoke out when the voltage melts your circuit"
18:06 timotimo ooooh, yeah, that makes a whole lot of sense
18:08 jnap timotimo:  you must be young, doing the smoke test at full power after you do all the wiring and checking is time honored tradition :)
18:09 fhelmberger joined #perl6
18:09 timotimo yeah, i am kind of young
18:09 timotimo i didn't get into electronics properly until a pretty late age
18:09 TimToady [Coke]: wants some graphs :)
18:09 timotimo and even now i'm not that into it
18:10 TimToady yes "smoke test" means full-up testing
18:10 jnap I used to do stereo repair on old stuff, always want to make time to get back to it, but software is my work so…  maybe when I get to retire :)
18:10 TimToady we just put the whole thing together, and now we're going to assume everything will work as designed :)
18:12 [Coke] (graphs) can I store images in wordpress, or do I have to host them externally?
18:12 timotimo i think there's an "upload image" button in the edit form?
18:13 timotimo yeah, "add media" allows you to upload stuff
18:14 estrabd joined #perl6
18:17 TimToady Repo Of All Spec Tests was the first gloss, though of course other backronyms are allowed
18:17 estrabd joined #perl6
18:18 timotimo aaw. i ran a pvmove that did nothing at all ...
18:18 timotimo except take time
18:19 timotimo r: say "took {2 * 100 / 60) minutes of my precious, precious, otherwise wasted time"
18:19 camelia rakudo-jvm 02af63: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/RUZQ5nw8uBâ�¤Unable to parse expression in block; couldn't find final '}' â�¤at /tmp/RUZQ5nw8uB:1â�¤------> [32msay "took {2 * 100 / 60[33mâ��[31m) minutes of my precious, precious, othe[0mâ�¤   …»
18:19 camelia ..rakudo-parrot 02af63: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/dKD4vaXa1_�Unable to parse expression in block; couldn't find final '}' �at /tmp/dKD4vaXa1_:1�------> [32msay "took {2 * 100 / 60[33m�[31m) minutes of my precious, precious, othe[0m�…»
18:19 timotimo p: say "took {2 * 100 / 60} minutes of my precious, precious, otherwise wasted time"
18:19 camelia rakudo-parrot 02af63: OUTPUT«took 3.333333 minutes of my precious, precious, otherwise wasted time␤»
18:19 timotimo that doesn't seem right
18:19 moritz why not?
18:20 timotimo because it took a lot longer than that
18:20 timotimo ~4 minutes gave me ~12 percent
18:20 timotimo oh well. this time it'll be faster, because i only move a part of the partition earlier
18:20 timotimo oh, actually, i could do this much smarter
18:27 raiph do i read right that jnthn recently landed changes that sped the spectest up by a whopping 10% for lizmat on at least one backend?
18:28 timotimo i think that's accurate, yeah
18:29 timotimo was that the invokedynamic changes?
18:29 dmol joined #perl6
18:35 raiph timotimo: thx. (and if it's the jvm then that maybe masks a much bigger improvement if one eliminates startup time)
18:36 dmol joined #perl6
18:38 raiph (hmm. maybe spectesting is done in a way that avoids restarts?)
18:44 [Coke] raiph - yes.
18:44 [Coke] make spectest uses the eval server.
18:44 raiph [Coke]: thx
18:44 [Coke] .. assuming that works for you. may not, mine kept running out of memory.
18:46 TimK1 I posted the slides for the talk I gave this week at Boston.PM: Benchmarking Perl 6: How Ready for Prime Time Is It? http://j.mp/1cDRj5d (Thanks to japhb for his benchmarking framework.)
18:46 TimK1 Sorry wrong link. Ugh.
18:47 TimK1 I posted the slides for the talk I gave this week at Boston.PM: Benchmarking Perl 6: How Ready for Prime Time Is It? http://j.mp/1fnGOmN (Thanks to japhb for his benchmarking framework.)
18:48 raiph TimK1: r u sure that's the right link?
18:48 raiph heh
18:49 timotimo raiph: we already skip a lot of startup time on the spectests for jvm by using the evalserver
18:49 timotimo hey TimK1 :)
18:49 timotimo i've been spamming your blog with comments :)
18:50 timotimo have you considered trying out niecza? it fits your "i just need a subset of perl6 to be productive with" mentality pretty well and usually outperforms rakudo by a *large* margin
18:50 dmol joined #perl6
18:52 dwarring joined #perl6
18:52 dmol joined #perl6
18:53 tgt joined #perl6
18:55 moritz TimK1++
18:57 dmol joined #perl6
18:58 TimK1 timotimo: I did some experimenting with Niecza. (Had some trouble getting it running on my more powerful iMac, and gave up for lack of time.) Might be a cool experiment to compare P5 with Niecza.
19:01 colomon What sort of problems did you have getting to work on the iMac?  It's fine on my MBP.
19:02 TimK1 I got it to work on my older Mac laptop (running Snow Leopard, if you can believe that). I got some sort of strange error running mono on my newer iMac (running Mavericks). I don't know whether it was a problem with Mono, or something else. Didn't have time to dig into it.
19:02 TimK1 … But if there's real interest in it, I'll try to make time (maybe tomorrow) to give it another go, and take some more detailed notes at least.
19:04 colomon TimK1: … dunno that I'd call it real interest, I'm just wondering what the problem could be.
19:06 TimK1 AFAIK, it could be Mavericks. Or the way I installed it. (I was using the MacPorts distribution of Mono on the iMac, and now that I double-check, it seems I didn't on the old laptop.)
19:07 TimK1 I was a little taken aback Tuesday by the strong desire I sensed for P6 to arrive, and the underlying belief that it could offer an aspect of salvation for Perl's image. Dunno myself about that last part, but I did get the sense that people have not given up yet about P6.
19:08 japhb_ That's good at least.
19:08 japhb_ Congrats on doing the talk, I'll take a look at it.  :-)
19:09 moritz this channel is full of people who haven't given up on p6 :-)
19:10 TimK1 :)
19:10 japhb_ Ooh, [Coke], TimK1++'s blog listed a video of my perl6-bench talk: https://www.youtube.com/watch?v=h5sSuL9OueE
19:10 japhb_ I had forgotten it was recorded!
19:11 colomon TimK1: hmmm, I think I gave up on MacPorts and installed a mono binary package.
19:12 [Coke] if someone could open  ticket with the admins for the gateway error here: http://www.nntp.perl.org/group/perl.perl6.language
19:12 [Coke] japhb_: danke
19:16 lue hello world! o/
19:17 denis_boyun_ joined #perl6
19:18 PerlJam P6 is going to salvage Perl's image?!?  What an odd thought.
19:18 japhb_ TimK1, Read the slide deck.  Looks like it was quite an interesting talk, can't wait for the version with sound.  :-)
19:20 japhb_ TimK1, Also: You guys made a lot of commits in your fork!  PR's, pretty please?  :-)
19:20 TimK1 PerlJam: Maybe I'm misunderstanding the sentiment. IIRC no one actually used those words. But I did get the sense from one person that P6 at least couldn't be bad for Perl's image.
19:20 TimK1 japhb_: Thanks.
19:20 avuserow joined #perl6
19:20 TimK1 I need to go through the commits and pick out ones that might be good candidates for PR's. It's on my list.
19:21 japhb_ Excellent, thank you!
19:23 xenoterracide joined #perl6
19:25 raiph has anyone used p6bench to compare between now and a decent while ago (a year?) for any backend?
19:26 kivutar joined #perl6
19:30 timotimo excuse the offtopic question, but ... how do i resize a partition in linux? gparted refuses to touch it, because it's a cryptsetup container and cfdisk and fdisk apparently only allow me to change sectors of the whole disk or something :(
19:33 japhb_ raiph, I had been doing those for a little while, but rapidly discovered a problem: syntax (both spec'ed and implemented) changed just often enough that the same tests wouldn't run on both old and new.
19:33 raiph ah
19:35 japhb_ Sadly, because so much of the changes over the last year made big improvements to perl6-bench and the test suite, you can't just roll it back to a year ago, run some tests and save the output, then roll forward, test again, and compare.  The test data wouldn't be comparable (or even close)
19:36 japhb_ Mind you, there might be some value to features added to perl6-bench to support manually specifying a map of different versions of the tests to the compiler revs they'll work on.
19:36 japhb_ But that seems like a lot of work for potentially small benefit going forward.
19:37 japhb_ (I'd certainly consider a PR for it, as long as the design was decent -- but I'm not sure I'll get around to coding that myself.)
19:38 japhb_ The other problem is that because of performance problems, some older versions of Rakudo would go completely off the deep end running even a modestly sized tests.  At some point, with those major issues fixed, I had to change all of the test scaling.
19:38 japhb_ If you run one of those old Rakudoes with modern test scaling, you'd OOM your box or pin your CPU for a couple days, most likely.
19:40 timotimo mhh, partitioning
19:40 timotimo scary business
19:40 kivutar joined #perl6
19:40 raiph japhb_: thx
19:42 dwarring here's my idea for an advent post https://gist.github.com/dwarring/7848868
19:42 dwarring it's a basic grammar for a card game
19:42 dwarring one simple code assertion fto check for duplicate cards
19:42 dwarring that's it!
19:43 dwarring feedback welcome
19:43 timotimo "locally scoped" isn't the name we usually use for things with the * twigil
19:43 japhb_ raiph, For what it's worth, I've wanted to do an "Are We Fast Yet?" clone for Perl 6 implementations for quite a while.  Maybe the time is finally right for writing that.  :-)
19:44 [Coke] day 13 moved to preview on wordpress: http://perl6advent.wordpress.​com/?p=2011&amp;preview=true - moved all urls to links, defined-ish roast, found patrick quote, think I've got everything except pretty graphs.
19:45 raiph could i get a login to the advent?
19:46 [Coke] raiph: https://gist.github.com/coke/7932300 in the meantime.
19:46 [Coke] (no formatting)
19:46 raiph [Coke]: thx
19:48 Sqirrel_ joined #perl6
19:48 TimK1 BTW, in my tests, I saw no significant performance differences in Rakudo/NQP since 2013.05. We assumed that most of the differences were features & bug fixes (IIRC true), and there's just not much work yet being done on optimization.
19:48 TimK1 Three Rakudo programs:
19:48 TimK1 r: module A { use Test; diag("Foo!") } # should respond with Foo!
19:48 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«# Foo!␤»
19:48 TimK1 r: module B { use Test <diag>; diag("Foo?") } # should still respond with Foo?
19:48 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«===SORRY!===␤Error while importing from 'Test': no EXPORT sub, but you provided positional argument in the 'use' statement␤»
19:48 TimK1 r: module C { need Test; Test::diag("Foo?!") } # Why do module authors do this to me?!
19:48 camelia rakudo-jvm 02af63: OUTPUT«Could not find symbol '&diag'␤  in any find_method_fallback at gen/jvm/Metamodel.nqp:2607␤  in any find_method at gen/jvm/Metamodel.nqp:945␤  in any  at gen/jvm/BOOTSTRAP.nqp:1658␤  in block  at /tmp/f1IUDB7cY3:1␤  in any eval at gen/jvm/stage2/NQ…»
19:48 camelia ..rakudo-parrot 02af63: OUTPUT«Could not find symbol '&diag'␤  in method <anon> at gen/parrot/CORE.setting:12062␤  in any  at gen/parrot/Metamodel.nqp:2691␤  in any find_method_fallback at gen/parrot/Metamodel.nqp:2679␤  in any find_method at gen/parrot/Metamodel.nqp:946␤  i…»
19:48 TimK1 Shouldn't module B work? Is this a Rakudo bug?
19:49 TimK1 WRT module C, Test declares diag as "sub diag is export"; so if I import it into my namespace, then I can use it, but if I don't then I can't even see that it's there. It seems to me, the best practice should be always to use "our" with "is export" (which would make almost every extant P6 module "broken").
19:49 timotimo i believe with "need" you have to supply a list of all the names you want to have
19:49 timotimo and i think you have to write use Test <&diag> in B
19:49 * dwarring has another look at twigels
19:50 japhb_ TimK1, For most of that time, there have been some improvements, but they've been more specific than general.  The most general sizable performance boost was very recent: an improvement to JVM InvokeDynamic use that netted us about 10% in rakudo-jvm.
19:51 TimK1 r: module B { use Test <&diag>; diag("Foo?") } # should still respond with Foo?
19:51 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«===SORRY!===␤Error while importing from 'Test': no EXPORT sub, but you provided positional argument in the 'use' statement␤»
19:51 * dwarring *tiwigels '*' = dynamically scoped
19:52 TimK1 For my examples, I'm using the guidance in http://perlcabal.org/syn/S11.​html#Compile-time_Importation
19:52 timotimo TimK1: i'm spending most of my rakudo development time on making little things here and there faster, but it's usually not showing up in the general benchmarks i'm afraid :(
19:53 timotimo for example, as you noticed, junctions are slow. that's why if you have a piece of code like $x & $y == -1 | 0 | 1, it'll unfold one of the two junctions at compile-time
19:53 TimK1 timotimo: That makes sense. Not a criticism. Just an observation. I expect there's still a ways to go.
19:54 japhb_ TimK1, TBH probably the biggest push to get across-the-board performance boost is the work on rakudo-moarvm, which is just past the "Hello World in Perl 6" stage.
19:54 timotimo there's a lot of things yet to do, that's right
19:54 japhb_ (Which means that it's already compiling the setting, which is huge, actually.)
19:55 japhb_ .oO( [Optimization] Target Rich Environment )
19:58 lue [Coke]: "The answer is never \n as simple" at the beginning: stylistic choice or mistake?
19:58 lue [Coke]++ for the post
20:04 spider-mario joined #perl6
20:05 lue dwarring: "5 exactly cards" --> "exactly 5 cards", and I'm pretty sure it's the 'my' that makes it lexically scoped, not the * twigil.
20:06 lue dwarring: I think it's good enough for an advent post. :)
20:06 * dwarring snoopy dance
20:08 timotimo TimK1: if you have ideas for specific optimisations, i'm all ears. until then, you can check out and comment on what i've been planning to do on questhub.io/player/timo (comment via irc if you don't want to sign up for questhub)
20:09 timotimo phew. i resized my two partitions that are each a crypto container that are inside an LVM that is inside a PV that is inside a crypto container and can now move data to and from the disk
20:09 timotimo pretty suspenseful
20:10 lue oh hej blog post! : http://rdstar.wordpress.com/20​13/12/12/a-brand-new-spec-s15/
20:10 timotimo yay
20:16 dwarring lue: tried changing %*PLAYED to %PLAYED
20:16 telex joined #perl6
20:16 dwarring lue: ...get Variable '%PLAYED' is not declared in card token
20:17 lue dwarring: I'm not an expert on $* vars, much less in regexes. Ignore my statements on them :D
20:17 lue (and I never said you had to change the code, just the explanation. But again, ignore that suggestion, as I am not an expert.)
20:19 dalek mu: 92a5330 | (David Warring)++ | misc/perl6advent-2013/schedule:
20:19 dalek mu: Update schedule
20:19 dalek mu: review: https://github.com/perl6/mu/commit/92a53301e9
20:19 dwarring that's day 18 i"ve grabbed
20:20 dwarring can someone give me access to that wordpress thingo?
20:20 shinobicl left #perl6
20:20 timotimo if you have the post ready-for-publishing earlier, you can emergency-publish your post if someone can't make it to their day
20:21 dwarring timotimo: should be ok, I'll get going on a wordpress writeup
20:21 timotimo nice! :)
20:23 shabble joined #perl6
20:23 shabble joined #perl6
20:24 shabble left #perl6
20:24 dwarring i'll keep an eye on the irc
20:26 [Coke] TimToady: http://perl6advent.wordpress.​com/?p=2011&amp;preview=true now has one, lonely chart.
20:27 TimToady \o/
20:27 [Coke] to spite you, I made it using excel.
20:27 [Coke] (warning: contains no actual spite)
20:28 [Coke] how do I set to publish in the future(future, future)
20:31 [Coke] oh, by realizing that the 12 is the MONTH, not the day.
20:31 [Coke] ok. it's scheduled.
20:32 [Coke] lizmat++ for prodding me to write one this year.
20:35 integral joined #perl6
20:36 * dwarring just gets Cokes 70's reference
20:37 * dwarring or sees one at least 'time keeps on slipping...'
20:40 ssutch joined #perl6
20:41 japhb_ dwarring, That song forms the key turning point in a major battle in a 1983 fantasy novel, Alan Dean Foster's "Spellsinger"
20:43 beastd joined #perl6
20:49 perigrin japhb_: lotta songs fit that bill
20:50 perigrin I can't listen to Purple Haze without thinking about an overly large affectionate otter.
20:50 perigrin (or Sloop John B for that matter)
21:00 ajr joined #perl6
21:17 timotimo TimK1: i have a richards benchmark in nqp, but not in perl5. would you like to port that some day?
21:18 japhb If I get a vote, it's "Yes, please!"
21:20 timotimo :)
21:21 timotimo 42 gigs per hour ... makes about 3.75h for my 155gb and then another 1 hour for the remaining 30g + 2g :\
21:31 jnap joined #perl6
21:39 pippo joined #perl6
21:40 pippo Hello Perl6!
21:40 pippo my %h; %h.push(:one(1)); say %h;
21:41 pippo r: my %h; %h.push(:one(1)); say %h;
21:41 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«().hash␤»
21:41 pippo houldnt this be equivalent to this:
21:41 pippo r: my %h; %h.push('one'=>1); say %h;
21:41 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«("one" => 1).hash␤»
21:42 * jnthn back
21:43 jnthn pippo: Well, the obvious difference is that the first is a named argument and the second is a positional argument that's a pair.
21:44 jnthn pippo: As to what push should do in this case - not sure off hand...
21:44 pippo r: :one(1).WHAT
21:44 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: ( no output )
21:45 pippo r: ; :one(1).WHAT
21:45 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: ( no output )
21:46 pippo r: say :one(1).WHAT
21:46 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«(Pair)␤»
21:48 pippo jnthn: I also do not know. I tend to expect having the same result.
21:48 lue jnthn: note that this is the second time recently where Hashes were expected to handle colonpairs in a positional fashion :)
21:49 lue r: my %h; %h.push((:one(1))); say %h
21:49 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«("one" => 1).hash␤»
21:49 pippo lue: that is the correct syntax?
21:49 lue pippo: ^^^ is a way to do it, if you insist on the colonpair syntax.
21:49 jnthn lue: What was the other one?
21:50 * jnthn has been very distracted recently :)
21:50 lue jnthn: me, trying to construct a hash with Hash.new
21:51 lue pippo: yeah, because colonpairs are interpreted as named arguments, while the fatarrow is just another positional parameter. The extra () forces the colonpair to be passed as a positional.
21:51 lue r: say Hash.new(a=>1).perl;
21:51 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«().hash␤»
21:52 lue jnthn: I get the sense that Hashes + named params tends to be awkward :)
21:53 jnthn lue: They are rather...
21:53 pippo lue, jnthn: OK. Thank you very much.
21:54 lue pippo: The general takeaway is to be careful with passing literal Pairs to a Hash method :)
21:54 lue r: my %h; my $a = :one(1); %h.push($a); say %h.perl
21:54 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«("one" => 1).hash␤»
21:56 jnthn We should probably do something about this, given it breaks the pols
21:57 lue jnthn: yeah, my one hangup is if any Hash methods in the future want to use actual named parameters, what to do then. (e.g. some sort of Hash.push(:$twice) param or something)
21:58 jnthn Yeah...
21:58 jnthn That's why it's not obvious to Just Fix It...
21:59 pippo I understand the concern now.
22:00 pippo good night lue and jnthn and thank you for clarifying.
22:00 pippo left #perl6
22:01 lue r: my %h; %h.push: :one(1); say %h
22:01 camelia rakudo-parrot 02af63, rakudo-jvm 02af63: OUTPUT«().hash␤»
22:03 lue jnthn: the good solutions I see are to either A) completely change how named parameter arguments xor Pairs are made, or B) require users to use an extra layer of parens around positionally-destined Pairs.
22:04 * lue sees that there's a general issue of sub foo(Pair $a) type functions, but this happens to show up in Hash methods more often than elsewhere.
22:06 Alina-malina joined #perl6
22:11 xenoterracide joined #perl6
22:13 * lue wonders if some sort of positional/named divider would be a good or bad idea... foo(1, :pos<pair>, 3; :actual<param>)
22:40 FROGGS joined #perl6
23:18 [Coke] n: say 6
23:18 camelia niecza v24-108-g17d73e4: OUTPUT«(timeout)[auto-compiling setting]␤»
23:22 [Coke] bah.
23:35 raiph [Coke]: "Every language feature must have a spec test." s/a spec test/spec test(s)/?
23:37 raiph "Over the course of Perl 6′s developments" s/development/development/
23:38 REPLeffect joined #perl6
23:38 raiph "their new tes works"
23:39 raiph "that particular feature or Synopses." -> Synopsis
23:40 [Coke] "Every language feature must have corresponding spec tests." ; fixed, "their new tests work"
23:41 [Coke] fixed.
23:41 [Coke] (all in the wordpress)
23:41 raiph "provides a nice interface for viewing the CSV data"
23:41 [Coke] raiph++
23:41 raiph presumably a link to that
23:42 [Coke] it's linked in the wordpress, aye.
23:42 raiph should i keep reading the gist?
23:43 [Coke] I only just fixed them. I'll do one more paste for you.
23:43 [Coke] https://gist.github.com/coke/7932300
23:43 raiph k, reading
23:45 * [Coke] tries to figure out which 70s reference I made.
23:46 raiph "each change in the Synopses text " -> Synopses' text
23:46 raiph (maybe; nit at most)
23:48 raiph "the prose; because they are concrete code – if you" # drop the ;
23:48 [Coke] I believe the first is allowed stylistically, leaving it.
23:49 [Coke] went with "prose,"
23:50 japhb_ WTH?  In the Rakudo debugger, it looks to me like a regex /^ \d / is trying to *scan* ...?
23:50 raiph "moment (And" period after moment ?
23:50 japhb_ jnthn: Any idea why this would happen?  ^^
23:51 [Coke] period after parenthetical. fixed.
23:51 [Coke] added a : after "things like"
23:52 raiph ok, read it thru. [Coke]++ # great post :)
23:53 japhb_ Any regex engine folks, run this and wonder:
23:53 japhb_ perl6-debug -e 'given "abcdefg" { when /^ \d / { say "digit seen at start" } }'
23:54 japhb_ (Just press enter a bunch of times to see it)

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo