»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:07 ghgah joined 00:08 ghgah left, kanishka joined 00:29 icwiener left 00:38 impious left 00:42 cotto joined
cognominal lichtkind, appropriately, LoL is acceptable in camelcase. 00:44
lichtkind alrright &sleep anyhow
00:44 lichtkind left 00:49 ggoebel joined 01:04 noganex_ left 01:06 noganex joined 01:08 cotto left 01:12 tokuhir__ joined 01:13 mjhsieh joined 01:14 mjhsieh left 01:15 tokuhirom left 01:21 woosley joined 01:31 tokuhir__ left 01:36 tokuhirom joined 01:37 tokuhirom left 01:51 [particle] left 01:52 [particle] joined 01:54 whiteknight left 02:19 dju joined 02:24 jaldhar left 02:25 jaldhar joined 02:26 kanishka left 02:41 kanishka joined 03:08 cotto joined 03:10 Chillance left 03:25 Su-Shee left 03:28 Su-Shee joined 03:33 jtpalmer left, cooper left, jtpalmer joined 03:39 molaf joined 03:41 satyavvd joined 03:51 cooper joined 03:57 donri left 04:01 envi joined, cotto left 04:30 molaf left 04:34 REPLeffect left 04:36 REPLeffect joined 04:37 wolfman2000 left 04:39 wolfman2000 joined 04:44 saaki left, saaki joined 04:45 wamba joined 04:50 jaldhar left 04:53 jaldhar joined 04:54 cotto joined 05:02 wamba left
jdhore1 I'm working on releasing Rakudo #42 as we speak 05:02
05:04 Bzek joined 05:09 koban joined 05:11 Grrrr left 05:14 REPLeffect left 05:15 szabgab joined 05:16 _patch_ is now known as _patch, estrabd left 05:17 _patch is now known as npatch 05:22 bakedb joined 05:25 birdwindupbird joined 05:28 REPLeffect joined 05:29 wolfman2000 left 05:37 REPLeffect left 05:39 eternaleye_ is now known as eternaleye 05:49 REPLeffect joined
dalek kudo: 4f47105 | jdhore++ | docs/announce/2011.06:
Update 2011.06 announcement with the releasename and another Douglas Adams reference.
05:50
kudo: 70c5ca4 | jdhore++ | docs/release_guide.pod:
Update release_guide.pod for 2011.06 release.
kudo: b2bc994 | jdhore++ | VERSION:
[release] bump VERSION
jdhore1 Rakudo Douglas Adams is released 05:52
Did i say in here why I chose Bruxelles? 05:54
06:03 kanishka left
sorear no 06:05
moritz yes 06:07
06:15 cooper left, buubot_backup left, REPLeffect left 06:17 bbkr_ left 06:18 REPLeffect joined, cooper joined, cooper left, cooper joined, cooper left, cooper joined, cooper left, cooper joined, cooper left, cooper joined, bbkr_ joined, cooper left, cooper joined, cooper left 06:19 cooper joined 06:21 bakedb left 06:39 buubot_backup joined 06:41 wamba joined 06:44 buubot_backup left 07:02 REPLeffect left 07:07 buubot_backup joined 07:08 mj41 joined
sorear ah. 07:10
moritz www.urbandictionary.com/define.php?term=belgium 07:13
hm no 07:15
According to Douglas Adams in his HITCH-HIKER'S GUIDE TO THE GALAXY series, the worst possible curse word in the universe. Its use is inexcusably rude. 07:16
07:16 cognominal left
jdhore1 moritz, Yep 07:16
Well, it was more specifically only in Restaurant at the ned of the universe IIRC
Su-Shee douglas adams references? not again..
jdhore1 secure.wikimedia.org/wikipedia/en/...Censorship 07:17
I was close...
Su-Shee, for Rakudo #42? How Could I possibly not?
07:17 cognominal joined 07:18 bakedb joined
moritz Su-Shee: it's the same reference as the last time we discussed it :-) 07:19
07:21 REPLeffect joined
jdhore1 did you like my towel reference in the announcement? 07:24
sorear -> sleep
TimToady rosettacode.org/wiki/Soundex#Perl_6, another example of using take from within a pattern matcher 07:33
07:43 Shozan joined, REPLeffect left
moritz that's kinda scary-ish 07:53
07:57 REPLeffect joined 08:06 wamba left 08:07 wamba joined 08:14 proller_ joined, proller joined, proller_ left 08:26 bakedb left 08:40 bakedb joined 08:44 kanishka joined 08:49 mberends joined 08:54 dakkar joined 08:56 daniel-s joined 09:03 wamba left 09:06 sivoais joined 09:12 dayangkun joined 09:13 dual left 09:20 woosley left 09:25 Grrrr joined 09:27 cooper left 09:33 dayangkun left 09:39 _twitch joined 09:51 REPLeffect left 10:04 REPLeffect joined 10:09 kboga left 10:18 MayDaniel joined 10:24 kanishka left 10:39 proller left 10:51 proller joined, proller left 10:54 proller joined 11:01 icwiener joined 11:16 skangas_ joined, skangas_ is now known as skangas 11:20 mtk joined 11:23 MayDaniel left 11:28 wamba joined 11:35 jaldhar left 11:36 jaldhar joined 11:51 jaldhar left 11:52 satyavvd left
takadonet morning all 12:02
12:04 REPLeffect left 12:07 Util joined, chris99 left, wamba left 12:08 chris99 joined, orafu left, orafu joined
mberends morning takadonet 12:09
12:15 woosley joined 12:16 woosley left 12:19 Chillance joined 12:22 jimmy1980 joined
tadzik morning takadonet, mberends 12:26
12:26 jaldhar joined
mberends o/ 12:26
12:33 Holy_Cow joined, wolfman2000 joined, jaldhar left 12:34 jaldhar joined 12:42 prammer left 12:44 prammer joined 12:54 Shozan left 13:13 Holy_Cow left
daniel-s github.com/daniel-s/Elo-Calculator 13:13
13:13 daxim joined
daniel-s what do I need to do to add that to the ecosystem? 13:14
13:15 _twitch left
tadzik ask me :) 13:18
also, making it spec-conformant is a plus
daniel-s: see github.com/perl6/ecosystem/blob/master/spec.pod 13:19
you can copypaste some of the existing META.info files and adjust it for your module
13:19 proller left
tadzik having tests would be nice too 13:20
mberends
.oO( Electric Light Orchestra? )
13:27
arnsholt Chess score 13:39
Or, ranking score 13:40
frettled It's a pretty nice system for keeping a relative, floating ranking. 13:42
(for one-on-one sports)
pmichaud good morning, #perl6 13:57
PerlJam pmichaud: guten Tag 13:58
14:02 koban left 14:07 donri joined
colomon o/ 14:08
pmichaud "...and don't forget your towel!" jdhore++ 14:14
daniel-s all of the module tests use "use Test" 14:16
is Test a builtin module?
moritz yes
takadonet why why!!! : blogs.perl.org/users/alberto_simoes...names.html 14:24
14:26 kaare_ joined
moritz ambs doesn't think high of Perl 6, and has made that known for quit some time 14:26
takadonet the issue keeps arising 14:28
14:29 estrabd joined 14:31 mberends left
moritz and it all boils down to how narrow or wide you define what "Perl" is 14:34
14:35 thou joined 14:40 ab5tract joined
donri as an outsider i have to say i sorta agree with the guy 14:43
moritz I "sorta" agree too 14:44
I think it would make sense to rename things, under a few conditions
1) we find good new names for Perl 5 and Perl 6
2) we rename both at the same time 14:45
3) we reach a rough consensus over big parts of the community 14:46
donri i don't see why perl 5 has to be involved at all, that's sorta my point
14:47 estrabd left
donri "perl 6" is more a new language than an evolution of perl 5 14:47
moritz but it's still an evolution of Perl
so I don't see why Perl 6 should give up the claim of the Perl name, while Perl 5 does not
donri shrug 14:48
14:48 pernatiy joined
TimToady maybe we should call it Perl: A New Hope 14:48
donri my general experience has been that hardcore perl fivers aren't usually very fond of perl 6 whereas perl 5 "haters" associate the perl name negatively 14:49
moritz well, how would you feel if your family told you to stop using "their" name (which is yours just as well)?
donri so, bad marketing either way
colomon Maybe we could rebrand as a new language and dodge the "ten years late" talk. :) 14:50
donri (personally, perl 6 has made me respect and realise the strengths of perl 5)
colomon: that too :P
it takes some ten years for a new language to mature
TimToady: or "esperanto": "he who hopes" ;) 14:51
arnsholt Oh, that's what esperanto means! (d'uh) 14:53
I never made the connection
donri well, "doktoro esperanto"
and "one who hopes"
arnsholt (Of course, it's sperare in Latin. Damned epenthetic 'e's!) 14:54
TimToady purrl 14:59
15:00 satrac joined 15:03 xinming left 15:06 wamba joined 15:10 spq1 joined
sorear good * #perl6 15:15
colomon \o 15:16
15:16 JimmyZ_ joined
sorear TimToady: ugh. does that work on niecza? 15:17
TimToady dunno
sorear TimToady: (soundex)
TimToady no .trans
sorear even if .trans were added... niecza uses gather/take internally to handle regex backtracking 15:18
TimToady this is a problem
perhaps gather/take should be defined lexotically 15:19
sorear I suppose it would work in this case, since ~~ never backtracks into the regex 15:20
TimToady and no .fmt 15:23
other than those, it seems to work okayish
if we don't make it lexotic, we'll have to rename the one used by internals so as not to conflict, but I think lexotic is probably better 15:28
otoh, forcing all the takes inside the gather is a bit problematic for splitting out a set of subs 15:29
you almost want to bind each take to the last gather *compiled* whether or not it's in this scope
but that's error prone too
lexotic is about as good as we can do without resorting to labels 15:32
15:32 mj41 left 15:46 daniel-s left, cotto left 15:50 mtk left
dalek ecs: b4e7bc1 | larry++ | S04-control.pod:
gather/take is lexotic with dynamic fallback

We have to allow for implementations and libraries to use gather/take internally. To preserve the sanity of the user in such cases, we need gather/take to behave lexotically, so that if you use take in the lexical scope of a gather, it always goes to *that* gather, even if the take is inside a closure that is passed into the scope of another gather.
15:51
TimToady (that may also help with certain optimizations) 15:52
15:52 mtk joined
TimToady (if you can just push to a lexically known location instead of chasing up the dynamic stack) 15:53
sorear TimToady: could Soundex be written using .trans(/ <[ bpfv ]>+ / => '1', ..., / . / => '') instead? 15:58
15:58 mberends joined
sorear I've thought in the past about a variant of trans that returns a list rather than a string 15:58
PerlJam likes how TimToady's commit message is longer than the change in the commit.
sorear call it 'nibble' maybe
it would subsume both trans and comb 15:59
PerlJam TimToady: I believe I know what you mean, but could you expand on "visible outer gather" a little bit? Particularly what "visible" means. 16:00
TimToady: I mean, I believe I know what you mean only because I also read your commit message. 16:02
TimToady well, you might have to see the definition of "lexotic" in S04:52 16:03
sorear rakudo: say [lcm] 1..20
p6eval rakudo b2bc99: OUTPUT«232792560␤»
16:09 pernatiy left 16:17 REPLeffect joined 16:21 kaare_ left 16:22 uniejo_ is now known as uniejo 16:27 MayDaniel joined 16:30 JimmyZ_ left
awwaiid The dynamic scope for take is a problem for libraries which take in bound callbacks and execute them inside of a gather, right? Maybe an alternative is to explicitly pop-off the librarie's gather scope when invoking the callback 16:38
PerlJam awwaiid: you mean skip it? 16:39
awwaiid yeah
like skip_gather &callback (or however the syntax goes)
16:41 kanishka joined 16:42 cdarroch joined, cdarroch left, cdarroch joined 16:43 wamba left 16:50 birdwindupbird left
awwaiid because lexotic structure forces the library-consumer to structure their code into a lexical-looking thing, when really it is the library who should do the heavy lifting, says I 16:51
16:52 wamba joined 16:54 lichtkind joined 17:03 dakkar left
awwaiid unless lexotic also implies that it it looks like a lexical scope (like in the gather/take in the library) then subsequent levels of dynamic scope will skip the lexical looking scope, I suppose. 17:03
TimToady awwaiid: but how would you distinguish the caller's callbacks from the library's own callbacks, other than some form of lexical scoping? 17:04
17:05 molaf joined
TimToady I suppose we might say that a gather can only be purely lexotic or purely dynamic, and a dynamic take will not see any intervening lexical gathers 17:06
or we use a different keyword for dynamic gather 17:07
but I'd prefer not to if we can just do what the user expects mostly 17:08
we can know at compile time whether there are any takes in the lexical scope of a gather, and mark the gather as pure lexotic so that it refuses to trap dynamic takes 17:11
this seems like the sanest approach 17:12
17:12 impious joined
TimToady then neither users nor library writers have to worry about it; they just have to write their gathers as purely lexotic or purely dynamic 17:12
17:15 rokoteko joined
colomon rakudo 17:16
awwaiid unless they both want dynamic :)
pmichaud star
colomon rakudo: say [lcm] 1..10
p6eval rakudo b2bc99: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<[ ]>, couldn't find final ']' at line 22␤»
colomon rakudo: say 5 lcm 10 17:18
p6eval rakudo b2bc99: OUTPUT«10␤»
colomon rakudo: say [lcm] 1, 2, 3, 4, 5
p6eval rakudo b2bc99: OUTPUT«60␤»
colomon rakudo: say [lcm] 1..10
p6eval rakudo b2bc99: OUTPUT«2520␤»
colomon rakudo: say [lcm] 1..20
p6eval rakudo b2bc99: OUTPUT«232792560␤»
pmichaud rakudo: say [lcm] 1..10, 12 17:19
p6eval rakudo b2bc99: OUTPUT«2520␤»
17:19 ab5tract left
pmichaud rakudo: say [lcm] 1..10, 12,14,15 17:19
p6eval rakudo b2bc99: OUTPUT«2520␤»
pmichaud rakudo: say [lcm] 1..10, 12,14,15,18,20
p6eval rakudo b2bc99: OUTPUT«2520␤»
sorear colomon: did my comment go through?
colomon Just approved it. :)
TimToady awwaiid: then we say that library writers should never use dynamic if they are executing any user code 17:21
17:21 flussence joined
TimToady that's their "extra discipline" 17:21
colomon sorear: and commented on it, too.
on the bright side, we can take the fastest implementation and add it to niecza, I suppose. ;) 17:23
PerlJam TimToady: seems like something they could do accidentally because of the "invisible" nature of their discipline. 17:24
awwaiid ah. well maybe if they had some sort of explicit 'end of my dynamic scope here' thing so they could flaunt their discipline 17:25
TimToady people usually know if they're writing a library
PerlJam I mean, they write the initial code fully aware of what they need to look out for, but then later as they make changes to the code, they (or their successor) may not realize that the code they just added changed the semantics of their takes 17:27
sorry ... of their user's takes
sorear I fear that allowing non-nested use of gather and take may be opening a semantic can of worms 17:29
one best left closed.
PerlJam sorear: This is why I like to leave the language design to TimToady ... he gets to worry about the deep issues. :) 17:33
17:36 satrac left
rokoteko Last time I was fishing the fish enjoyed a worm, even if there was a hook attached to the worm. It's merely a stupid question if the fish had preferred a can of worms w/o any hooks. Not that Im very sure of what you are talking about, but this sounds like "don't let p5 people touch the stash [of worms]!" 17:38
Which reminds me. During the spring I met a cab-driver who was fishing herring. The herring bit the hook even if there was no worm attached to the hook. Imagine that. And he told me he had like 7 hooks in one line and more or less all of them had a herring biting to just the hook. 17:40
OTOH. this was early spring, which is (as I understood) the herring's mating season.
17:41 bakedb left, icwiener left
colomon is now quietly singing "The herring it is the king of the sea" to himself... 17:42
17:42 icwiener joined 17:44 cooper joined
dalek ecs: d5e7386 | larry++ | S04-control.pod:
gather/take user-vs-library considerations

Incorporate feedback from awwaiid++, PerlJam++, sorear++.
17:44
awwaiid TimToady++ # well said 17:54
17:57 envi left
TimToady sorear: so if your regex uses gather/take, how does the soundex work? (which it does if I remove the .trans and .fmt) 17:58
sorear TimToady: regex uses gather/take to assemble the "lazy list of cursors" that a backtracking regex returns, not within a regex 17:59
TimToady: there's some fudgey code that does "the first cursor is generated immediately"; I think that's saving us here 18:00
after the regex succeeds the first time, it rewrites itself into a gather, but ~~ never re-enters the regex after it succeeds 18:01
so the take never sees the internal gather
TimToady which of the conjectured solutions seems most reasonable to you? or can you think of a way to disambiguate via location of cloning maybe?
actually, in your case it doesn't sound too hard to make it lexotic, depending on where your take is 18:02
the label solution would have the additional "benefit" of letting people to mix lexotic and dynamic take 18:04
not sure this is a good thing...
sorear TimToady: is &take still a function? 18:08
if it's caring about lexical scopes now
TimToady yes, unless we also have $label.take
which is likely to be $*LABEL.take actually 18:09
sorear What does "visible" outer gather mean? 18:10
TimToady at least internally, even if we provide sugar
a gather that contains the take
lexically
18:10 cotto joined
sorear I'll have to try it 18:14
I can't say yet if it will work or not 18:15
TimToady I think any of the notions could probably be forced to work; the question is what's easiest, and results in the most clarity
without forcing users to specify something that they think is obvious 18:17
(whether or not it's actually obvious, but the lexical/dynamic division seems pretty dwimmy to me right now)
PerlJam in my imagination, I like the label solution. 18:18
though using lift seems interesting as well.
TimToady except lift is currently about lexical scopes, not dynamic
(other than that the lexical scope in question is the caller's)
we can certainly put a label on a gather right now, but almost by definition that label will not be defined at the point of a dynamic take 18:19
18:20 Patterner left
PerlJam this is one of those times I wish for some syntactic marker for "labels" 18:20
TimToady so either we do ::LABEL.take: or have a way to refer to a label dynamically via the * twigil
PerlJam I'd like to see what that latter one looks like as twigils are closed tied with variables in my head and labels not at all. 18:21
TimToady or a way of declaring a label in a large scope that contains both the gather and the takes 18:22
PerlJam Hmm.
wouldn't dynamism defeat that anyway?
the take could come from "outside" 18:23
unless there's some super global scope that could be hooked into 18:24
TimToady perl6: HERE:; { HERE: for 1..5 { .say; foo() when 3 }; sub foo { HERE.last; }; say "done"; 18:25
p6eval niecza v6-179-gad0bcf6: OUTPUT«===SORRY!===␤␤Illegal use of colon as invocant marker at /tmp/stkBQ0Dh5O line 1:␤------> HERE:⏏; { HERE: for 1..5 { .say; foo() when 3 ␤␤Any()Unable to parse block at /tmp/stkBQ0Dh5O line 1:␤------> HERE:; {⏏…
..rakudo b2bc99: OUTPUT«===SORRY!===␤Confused at line 22, near "HERE:; { H"␤»
..pugs: OUTPUT«*** ␤ Unexpected ":;"␤ expecting "::", dot, "!", word character, "(", "{", term postfix or operator␤ at /tmp/0GbcrUcXs3 line 1, column 5␤»
TimToady snickers
18:25 kanishka left
TimToady perl6: HERE:; { HERE: for 1..5 { .say; foo() when 3 }; sub foo { last; }; say "done"; 18:26
p6eval rakudo b2bc99: OUTPUT«===SORRY!===␤Confused at line 22, near "HERE:; { H"␤»
..niecza v6-179-gad0bcf6: OUTPUT«===SORRY!===␤␤Illegal use of colon as invocant marker at /tmp/ODEGv2BkHI line 1:␤------> HERE:⏏; { HERE: for 1..5 { .say; foo() when 3 ␤␤Any()Unable to parse block at /tmp/ODEGv2BkHI line 1:␤------> HERE:; {⏏…
..pugs: OUTPUT«*** ␤ Unexpected ":;"␤ expecting "::", dot, "!", word character, "(", "{", term postfix or operator␤ at /tmp/mvPfOGxFCt line 1, column 5␤»
frettled mars
TimToady perl6: HERE: 42; { HERE: for 1..5 { .say; foo() when 3 }; sub foo { last; }; say "done";
p6eval rakudo b2bc99: OUTPUT«===SORRY!===␤Confused at line 22, near "HERE: 42; "␤»
..niecza v6-179-gad0bcf6: OUTPUT«===SORRY!===␤␤Lexical symbol 'HERE' is already bound to an outer symbol (see line 1);␤ the implicit outer binding at line 1 must be rewritten as OUTER::HERE␤ before you can unambiguously declare a new 'HERE' in this scope at /tmp/EMdgn6…
..pugs: OUTPUT«*** ␤ Unexpected "when"␤ expecting operator or "}"␤ at /tmp/VIHWaBUGmG line 1, column 42␤»
TimToady hmm, how is HERE already bound to the outer HERE? 18:27
well, it probably can't work that way anyway, if labels have more identity than just their name 18:28
pmichaud not to hijack the thread, but...
for 1..20000 { $i = $i + $_ }
rakudo master: 2.74 sec
rakudo nom: 1.69 sec
TimToady that's the right direction :) 18:29
pmichaud _finally_
still a couple of optimizations to put in place
TimToady niecza: say [+] 1..20000 18:30
p6eval niecza v6-179-gad0bcf6: OUTPUT«200010000␤»
TimToady one could intuit that it the sum would fit into an int32, for instance :)
diakopter hah. 18:31
TimToady was thinking about diakopter++ for some reason :)
diakopter #perl6 is the best jobvertainment 18:32
pmichaud
.oO( jobvertainment? jobtertainment? jobutainment? ... )
18:34
TimToady perlesque: say [+] 1..20000
p6eval perlesque: ( no output )
diakopter broken I guess
it doesn't do [op] 18:35
18:36 jferrero joined
diakopter niecza: say [==] 1..-1 18:37
p6eval niecza v6-179-gad0bcf6: OUTPUT«Bool::True␤»
diakopter I don't know whether that's right
pmichaud niecza: say [==] () 18:38
p6eval niecza v6-179-gad0bcf6: OUTPUT«Bool::True␤»
18:39 ab5tract joined
TimToady niecza: say [==] (1..-1).flat 18:40
p6eval niecza v6-179-gad0bcf6: OUTPUT«Bool::True␤»
TimToady oh, right
that's why you were testing the (), duh... 18:41
so yes, it's right
18:41 icwiener left
TimToady however 18:41
niecza: say [==] 1...-1
p6eval niecza v6-179-gad0bcf6: OUTPUT«Bool::False␤»
TimToady that's also correct
diakopter niecza: say [==] 1..2
p6eval niecza v6-179-gad0bcf6: OUTPUT«Bool::False␤»
diakopter oh 18:42
TimToady ranges never autoreverse, but sequences do
diakopter niecza: say [==] 1..1
p6eval niecza v6-179-gad0bcf6: OUTPUT«Bool::True␤»
TimToady niecza: say [==] 1, *+0 ... 1 18:43
p6eval niecza v6-179-gad0bcf6: OUTPUT«Bool::True␤»
rokoteko what is the difference between a sequence and range? range can go backwards?
TimToady ranges are conceptually intervals, while sequences are list generators 18:44
S03 has much about both of them
sorear I think what's happening is that the is_name call on official line 1292 is being interpreted as an outer reference 18:45
TimToady a range will, however, promote to an incrementing sequence if you use it like one
sorear I can kill that, since it's caught by the general "two lexicals of the same name in one scope" check
diakopter sorear: I can't get the inner HERE to even parse as a label
TimToady you'd think the inner label should just shadown the outer 18:46
sorear right.
TimToady that still says nothing about whether a dynamic reference to the outer label would match the inner (inclined to think not) 18:47
sorear it won't in my model
TimToady otoh, goto "foo" is pure string match
rokoteko so. 1, 2, 4, 6 would be a sequence but 1, 2, 3, 4 would be a range as would 10, 20, 30, 40 ?
TimToady huh? 18:48
rokoteko Intuitively the latter would be a sequence of $_ * 10.
sorear FOO: behaves sort of like my ::FOO is enter( Label.new("Foo", callframe) )
diakopter TimToady: your example is missing a }
with the two HEREs
sorear next FOO requires both the name and the frame to match
TimToady rokoteko: those are just lists and have nothing to do either ranges or sequences
the middle one is the only one that could be generated from a range, however 18:49
18:50 wamba left
TimToady (in the absense of greps or maps) 18:50
sorear niecza: say (1, 2, 4, 6).perl
p6eval niecza v6-179-gad0bcf6: OUTPUT«(1, 2, 4, 6)␤»
sorear niecza: say (1, 2, 3, 4).perl
p6eval niecza v6-179-gad0bcf6: OUTPUT«(1, 2, 3, 4)␤»
TimToady perl6: say 10,20 ... 100 18:51
dalek ecza: c218cfa | sorear++ | src/Operator.pm6:
Remove double method definition
ecza: c12e878 | sorear++ | / (2 files):
Fix use-ing of modules that are already transitively needed
ecza: 9c1b484 | sorear++ | src/niecza:
Fix spurious IMiaB error for shadowing labels
p6eval pugs: OUTPUT«*** ␤ Unexpected "100"␤ expecting operator, ":" or ","␤ at /tmp/ddeLWkbTSl line 1, column 15␤»
..rakudo b2bc99, niecza v6-179-gad0bcf6: OUTPUT«102030405060708090100␤»
TimToady rakudo: say (10,20 ... 100) 18:52
p6eval rakudo b2bc99: OUTPUT«102030405060708090100␤»
TimToady rakudo: say [10,20 ... 100] 18:53
p6eval rakudo b2bc99: OUTPUT«10 20 30 40 50 60 70 80 90 100␤»
TimToady rakudo: say (10,20 ... 100).gist
p6eval rakudo b2bc99: OUTPUT«Method 'gist' not found for invocant of class 'List'␤ in main program body at line 22:/tmp/ardaeOPUK_␤»
TimToady nom: say (10,20 ... 100)
p6eval nom: OUTPUT«Rebuild in progress␤»
TimToady ooh
rokoteko TimToady: I mean that is 1,2,4..10 a sequence and 1..10 is a range etc. this is a bit confusing terminology. hence Im asking.
TimToady nom rebuild needs snap semantics... 18:54
pmichaud nom doesn't have sequences yet. that's next on my list.
after lists.
TimToady 1,2,4..10 is not a sequence in P6 terms
it's a list of two integers and a range
only ... makes a sequence
pmichaud rokoteko: note the difference between .. and ...
rokoteko Oh. 18:55
TimToady perl6: say ~(1,2,4..16)
p6eval pugs, rakudo b2bc99, niecza v6-179-gad0bcf6: OUTPUT«1 2 4 5 6 7 8 9 10 11 12 13 14 15 16␤»
TimToady perl6: say ~(1,2,4...16)
p6eval rakudo b2bc99, niecza v6-179-gad0bcf6: OUTPUT«1 2 4 8 16␤»
..pugs: OUTPUT«*** ␤ Unexpected "16"␤ expecting operator or ")"␤ at /tmp/ZjcG0sfnd0 line 1, column 15␤»
TimToady perl6: say ~(1,2,4...*) 18:56
p6eval rakudo b2bc99, niecza v6-179-gad0bcf6: OUTPUT«(timeout)»
..pugs: OUTPUT«*** ␤ Unexpected end of input␤ at /tmp/XedipypjSg line 1, column 17␤»
diakopter pmichaud: jobutainment is closest I guess
TimToady perl6: .say for 1,2,4 ... * 18:57
p6eval pugs: OUTPUT«*** ␤ Unexpected end of input␤ at /tmp/aPP9nUKFp5 line 2, column 1␤»
..niecza v6-179-gad0bcf6: OUTPUT«(timeout)1␤2␤4␤8␤16␤32␤64␤128␤256␤512␤1024␤2048␤4096␤8192␤16384␤32768␤65536␤131072␤262144␤524288␤1048576␤2097152␤4194304␤8388608␤16777216␤33554432␤67108864␤134217728␤268435456␤536870912␤1073741824␤2147483648␤4294967296␤8589934592␤17179869184␤34359738368␤68…
..rakudo b2bc99: OUTPUT«(timeout)1␤2␤4␤8␤16␤32␤64␤128␤256␤512␤1024␤2048␤4096␤8192␤16384␤32768␤65536␤131072␤262144␤524288␤1048576␤2097152␤4194304␤8388608␤16777216␤33554432␤67108864␤134217728␤268435456␤536870912␤1073741824␤2147483648␤4294967296␤8589934592␤17179869184␤34359738368␤68719476736…
TimToady um, why the difference? 18:58
oh, version info
19:05 stephanmg joined
stephanmg hi. 19:05
is "pugs" essentially dead? 19:06
sorear yes
TimToady: uh... 19:07
TimToady: I wonder if I should revert the change that made cutoff length depend on version length
19:07 Psyche^ joined, Psyche^ is now known as Patterner
sorear nom: say 2 + 2 19:08
p6eval nom: OUTPUT«4␤»
19:15 birdwindupbird joined
PerlJam stephanmg: but that's okay becase there are many other implementations by now. 19:16
TimToady sorear: but surely it's a zero-sum game as far as irc is concernd 19:17
pugs still runs fine; if someone decided that their calling in life was to make sure pugs converges on the P6 spec, nobody would cry 19:19
otoh, getting a P6 on a Haskell platform might be easier now by writing a backend to niecza or nqp 19:20
apparently there are parts of pugs that are difficult to understand even if you know Haskell well 19:22
but maybe that's the fault of Haskell, not pugs...
in which case a Haskell backend will not be any easier to understand, except for the bits written in P6 :)
19:23 MayDaniel left, daxim left
stephanmg PerlJam: okay, i just thought if i should recapitulate haskell, because i had read basic book in my CS study. so i now skip that part :) 19:26
19:26 pochi left
stephanmg PerlJam: and i can directly stick to perl6 stuff, because i know C. that's good. 19:29
19:30 Bzek left
dalek kudo/nom: 761fa93 | pmichaud++ | src/Perl6/Actions.pm:
Some more nqp:: opcodes for us to use.
19:34
kudo/nom: 96fdaf8 | pmichaud++ | src/ (2 files):
Use nqp::iterators instead of Rakudo Lists for calculating

around for the next time they're request (very common for blocks used in map and other iterations).
kudo/nom: d19672e | pmichaud++ | / (9 files):
Significant refactor of lists and iterators. Results in a 50%

loop, although we're _still_ not as fast as Rakudo master. Working on that next.
kudo/nom: ce956a6 | pmichaud++ | src/ (4 files):
Update shiftpush opcode to be quite a bit faster.
kudo/nom: 1e975bf | pmichaud++ | src/ops/perl6.ops:
Optimize perl6_rpa_find_type to automatically skip containerized thingies.
kudo/nom: 28c1fff | pmichaud++ | src/core/ (4 files):
Our aggregates can benefit from some Infinite wisdom again.
p: 959bb78 | pmichaud++ | tools/build/PARROT_REVISION:
Bump PARROT_REVISION to get latest splice improvements.
lichtkind thou: cheers 19:37
thou lichtkind: hi! busy day at work.... :-)
lichtkind allright
i want also sleep soon
thou lichtkind: ok. anything new on your side? 19:38
my next goal is to do another chunk of Appendix A.
lichtkind thou: i have to write next part of my wx tutorial after it come back to tablets
thou: what ybout write history tablet a bit
there i can make most grammar and spelling mistakes 19:39
as long your there i have to take advantage of it :)
thou: great
dalek kudo/nom: ac94f0c | pmichaud++ | tools/build/NQP_REVISION:
Bump NQP_REVISION to get Parrot splice fixes.
thou lichtkind: ok, are you happy with the content of the history tablet, for the most part?
lichtkind thou: there is almost no content there :) 19:40
compared to the planned
thou oh. maybe wait for masak to finish his Paris talk, and just steal that ;-)
lichtkind thou: in german version is a lot
in my articles too 19:41
19:41 kst` is now known as kst
lichtkind problem is not material but the reordering and proper storytelling 19:41
thou ok
19:45 ggoebel left
lichtkind thou: but thatnk i didnt know masak is writing slides please point me to it when its published 19:49
19:50 ggoebel joined, icwiener joined
thou ok. i just know he was having fun going through old parrot/perl6 and rakudo commits, looking for fun bits of historical trivia 19:50
TimToady I'm wondering if statement modifier when should switch to succeed semantics like Perl 5 does. 19:54
I used to think that it would interfere with writing list comprehensions, but a list comprehension already has a $_-binding context, so next work still work there
s/next/succeed/ 19:55
rakudo: .say when $_ %% 2 for 1..10 19:56
p6eval rakudo b2bc99: OUTPUT«2␤4␤6␤8␤10␤»
lichtkind thou: thats interesting but my focus ist on mainline history :)
TimToady rakudo: .say when * %% 2 for 1..10
p6eval rakudo b2bc99: OUTPUT«2␤4␤6␤8␤10␤»
TimToady so a "failed" when would just proceed to the next for iteration 19:57
19:57 pochi joined
TimToady and a successful when would do the thunk and the succeed to the next iteration 19:57
the main difference is how a bare "42 when /answer/" behaves 19:58
lichtkind thou: so you plan is to sniff through Appendix A, good , hinrik didnt answer me yet but after sniffing through the dist.ini im for he package it and i just send him the files 19:59
TimToady and the current semantics is equivalent to "42 if $_ ~~ /answer/
lichtkind thou: you think its better to finish basics ? 20:00
TimToady so there's no great need for the current semantics of the when modifier
thou lichtkind: i think it's best to work on what's interesting :-) to stay motivated.
TimToady more to the point, it's one less inconsistency to have to explain
thou but, yes, i think basics are important 20:01
lichtkind thou: thats where i alst time lest my pencil
thou also, if you have pretty good info in some of the german tablets, it might be most effective to work with those.
20:02 ab5tract left
lichtkind thou: great but please be aware of the slightly changed ordering, once i stopped keep them in sync, some corners are rotten 20:02
20:04 wamba joined, birdwindupbird left, mj41 joined 20:14 zby_home joined 20:20 Trashlord left
sorear TimToady: statement_modifier for isn't a $_ shadowing context, it's a $_ temporalizing context. Dunno if it makes a difference here 20:25
20:29 Vlavv_ joined
jnthn evening, \perl6 20:31
er
#perl6 :)
jnthn back from teaching trip
tadzik hello jnthn 20:32
lichtkind jnthn: sounds great, wb
jnthn Tomorrow is a national Perl 6 hacking day^W^W^W^Wholiday here in Sweden :) 20:33
lichtkind jnthn: you are lucky pmichaud++ answered all questions i had for you
jnthn pmichaud++ :)
20:33 cottoo joined
sorear o/ JNTHN 20:33
20:34 cotto left, masak joined
masak lol hi #perl6! 20:34
sorear o/ MASAK!
masak !!!
sorear yapsi: say 2
diakopter omg
p6eval yapsi: OUTPUT«2␤»
diakopter yapsi: timeout 2
masak \o/
p6eval yapsi: OUTPUT«Could not parse␤»
masak heh 20:35
colomon :)
sorear it turns out that precompiling Yapsi.pm to PIR drops the startup time from 45s to 5s.
masak sorear++
sorear I'm still tempted to switch p6eval to the niecza branch though
masak I wasn't aware it was running non-precompiled.
sorear: yes, that would be fine with me.
sorear: I'm still not sure how we should develop those parallel branches. 20:36
jnthn masak: Bon soir, l'hacker en France!
masak bonsoir. 20:37
j'ai trouvé mon hotel. ça me fait hereux. :-) 20:38
20:38 cottoo left
tadzik hello masak 20:39
frettled Q'est-ce que vous est, masak?
masak "What are you, masak?"? :P
tadzik my french dictionary is limited to phrases like "agoch en battaglie!"
or however you write that 20:40
masak might come in handy some day.
frettled masak: oups, mixed my sentences during rewrite. Should've been «Ou est-ce…»
masak ah :)
I've managed to ask directions today.
frettled Ou est la gare?
La gare est la-bas.
tadzik masak: oh it does, quite often actually :)
masak frettled: je suis proxime de Place de Clichy, en 17:me. 20:41
tadzik Even in Polish battles
frettled masak: est-ce qu'il est bon, ça?
frettled mangles French happily.
diakopter Alarm Sack
A Lark Scam 20:42
masak: your name makes great anagrams
20:42 pjcj_ joined
masak diakopter: :D 20:42
diakopter: oddly enough, that has never occurred to me. (I'm serious.)
diakopter not great?
20:44 pjcj left
frettled Kam Rascal 20:47
20:48 cognominal left, cognominal joined 20:49 [particle] left 20:50 [particle] joined 20:51 hanekomu joined 21:00 jimmy1980 left 21:01 jimmy1980 joined 21:03 mj41 left
masak frettled: I think that will be my new nom de plume. 21:04
frettled (: 21:05
21:05 cottoo joined 21:14 donri left 21:23 masak left 21:39 spq1 left 21:42 Psyche^ joined 21:45 Patterner left, Psyche^ is now known as Patterner 21:46 pothos_ joined, y3llow_ joined 21:48 y3llow left, y3llow_ is now known as y3llow, pothos_ is now known as pothos 21:49 mberends left, hanekomu left 22:05 bitpart joined 22:07 dual joined 22:09 hanekomu joined 22:17 impious left 22:20 cottoo left 22:22 wamba left 22:25 wooden left 22:31 DarthGandalf left 22:36 cotto joined 22:37 DarthGandalf joined 22:38 cotto left, cotto joined 22:48 bitpart left 22:50 whiteknight joined 23:09 mantovani joined 23:12 hanekomu left 23:40 wamba joined
dalek ecza: 14c6eb4 | sorear++ | src/niecza:
Fudge packages not evaluating to Any anymore
23:45
ecza: 55ff541 | sorear++ | lib/ (2 files):
Fix systematic who -> how typo in kernel
23:48 zby_home__ joined 23:49 zby_home left 23:51 daniel-s joined 23:55 molaf_ joined 23:58 molaf left, Trashlord joined