»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:03 tgt left 00:09 skids joined 00:10 panchiniak joined 00:18 spider-mario left 00:35 xenoterracide joined 00:44 xenoterracide left 00:47 dayangkun left 00:48 vladns joined 00:53 btyler left 00:59 dayangkun joined 01:00 tgt joined, xenoterracide joined
TimToady r: my int @array = 1..10; 01:02
camelia rakudo-jvm 44a466: OUTPUT«(timeout)»
..rakudo-parrot 44a466, rakudo-moar 44a466: OUTPUT«No such method 'STORE' for invocant of type 'Int'␤ in block at /tmp/tmpfile:1␤␤»
01:04 tgt left 01:11 KohdMonkey joined, KohdMonkey left 01:15 vladns left 01:19 SubTerra joined 01:24 panchiniak left 01:47 kaare_ joined 01:50 kaare__ left 01:57 benabik joined 02:03 sftp left, dalek left 02:04 klapperl left 02:05 go|dfish left, FROGGS left, mathw joined 02:06 avuserow joined, tgt joined, kaare_ left 02:07 japhb_ joined, sftp_ joined, Maddingu1 joined, dalek joined, ChanServ sets mode: +v dalek, klapperl_ joined, tgt left, FROGGS_ joined, ilbot3 joined 02:08 go|dfish joined 02:09 telex left, woosley joined 02:10 telex joined 02:13 klapperl joined 02:16 klapperl_ left 02:18 ribasushi_ joined 02:19 pdcawley_ joined 02:20 FROGGS__ joined 02:21 cognominal__ joined, ggherdov_ joined, hoelzro_ joined 02:22 breinbaa1 joined 02:23 Ben_Goldberg joined, japhb__ joined 02:24 sunnavy_ joined, yoleaux left, pdcawley left, ggherdov left 02:25 timotimo left, xenoterracide left, hoelzro left, cognominal left, rylinaux left, Sqirrel left, japhb_ left, BenGoldberg left, atrodo left, renormalist left, rurban_ left, yoleaux joined, atrodo joined, ribasushi_ is now known as ribasushi, ChanServ sets mode: +v yoleaux, silug____ joined, orevdiabl joined, yoleaux left, rylinaux joined, yoleaux joined, ChanServ sets mode: +v yoleaux, Sqirrel joined, yoleaux left, rylinaux left, atrodo left, mcglk left 02:26 rylinaux joined, timotimo joined 02:28 renormalist joined 02:30 klapperl_ joined 02:31 sivoais_ joined, pdcawley joined 02:32 grep0r joined 02:35 pdcawley_ left, klapperl left, FROGGS_ left, [Sno] left, molaf left, sivoais left, sunnavy_ left, ggherdov_ left, sftp_ left, benabik left, bjz left, Alina-malina left, xragnar left, itz__ left, [particle]1 left, Pleiades` left, Celelibi left, Psyche^_ left, japhb left, zamolxes left, isacloud left, gfldex left, camelia left 02:36 xenoterracide joined 02:49 daniel-s_ left 02:51 woosley left, woosley1 joined 02:59 daniel-s_ joined 03:01 tgt joined, awwaiid_ joined 03:04 woosley1 left, arnsholt_ joined 03:06 xfix left, ribasushi left, siruf left, awwaiid left, stevan_ left, arnsholt left, woosley joined, sorear left, renormalist left, hoverboard left, cxreg left, tgt left, hoverboard joined, bowtie left 03:07 sivoais_ is now known as sivoais, bowtie joined 03:08 sivoais left, sivoais joined
dalek rl6-roast-data: dd16b36 | coke++ | perl6_pass_rates.csv:
today (automated commit)
03:14
03:17 Sqirrel_ joined 03:18 scumdog1 joined 03:22 pdcawley_ joined 03:23 lee__ joined 03:24 bowtie left, woosley left, pdcawley left, Sqirrel left, Ben_Goldberg left, cognominal__ left, FROGGS__ left, go|dfish left, dayangkun left, skids left, wooden_ left, scumdog left, aindilis left, jtpalmer left, hinachan left, nebuchadnezzar left, flussence left, __sri left, lue left, tadzik left, lee_ left, Khisanth left 03:30 tadzik joined 03:33 Khisanth joined
[Coke] m: my $a = "3"; say q{"$a"}; 03:57
ENOCAM?
dalek jo6: 6ae2497 | coke++ | / (2 files):
Add Mojo::Util:: quote/unquote
04:04
04:04 tgt joined, BrotherBen joined, daniel-s_ left, daniel-s_ joined 04:07 xenoterracide left 04:08 tgt left
BrotherBen Which perl6 features will allow it to become a leading programming langauge for big data analytics ? 04:08
JimmyZ Grammar and thread? 04:09
jercos Enterprise-compliant JVM backend, advanced brace-based code block grouping techniques, modern first-class functions? 04:22
Maximal compatibility with agile development methodologies in a task-oriented goal-based mission-driven environment? 04:23
bonsaikitten buzzword-compliant ChangeLogs 04:26
04:58 grondilu left 05:02 woosley joined
dalek ast: 0491b90 | larry++ | S15-unicode-information/unimatch-general.t:
add unimatch tests for general categories
05:04
05:05 tgt joined, awwaiid_ left 05:09 tgt left
dalek ast: 48eb6c6 | larry++ | S15-unicode-information/unimatch-general.t:
copy-pasto
05:14
TimToady heh, heh, we'll see who's 100% now... :) 05:15
05:36 woosley left 05:46 BrotherBen left 05:48 woosley joined
dalek ast: 529cb9c | larry++ | S15-unicode-information/unimatch-general.t:
don't bother trying to match nonchar props
05:52
06:03 woosley left 06:04 JimmyZ left 06:12 mtj_ joined 06:53 Alina-malina joined 06:54 Alina-malina left 07:11 kaleem joined
arnsholt_ MoarVM on the HN frontpage! news.ycombinator.com/item?id=7357670 07:41
07:42 arnsholt_ is now known as arnsholt 07:49 daniel-s_ left 07:52 kongtomorrow joined, Alina-malina joined, woosley1 joined, nebuchadnezzar joined, darutoko joined, awwaiid joined, JimmyZ joined, dayangkun_ joined, labster joined, sbauer joined, dylanwh joined, bowtie joined, jtpalmer joined, _sri joined, aindilis joined, cognominal__ joined, flussence joined, go|dfish joined, hinachan joined, lue joined, wooden joined, camelia joined, gfldex joined, isacloud joined, zamolxes joined, japhb joined, Psyche^_ joined, Celelibi joined, Pleiades` joined, [particle]1 joined, itz__ joined, xragnar joined, bjz joined, benabik joined, sftp_ joined, ggherdov_ joined, sunnavy_ joined, rurban__ joined, siruf joined, sorear joined, cxreg joined, renormalist joined, stevan_ joined, synopsebot joined, ribasushi joined, xfix joined, molaf joined, barjavel.freenode.net sets mode: +v camelia, yoleaux joined, tokuhirom joined, atrodo joined, mcglk joined 07:56 hinachan is now known as Guest19414, pnu left 07:57 pnu joined 08:00 siruf left, siruf joined 08:04 arnsholt left 08:08 hoverboard is now known as moistcherry 08:09 dmol joined 08:27 brrt joined, FROGGS joined
brrt hi 08:32
08:32 Maddingu1 is now known as Maddingue
JimmyZ hello 08:35
08:36 tgt joined
brrt yay moarvm is getting love on hacker news 08:36
08:37 __thou left
FROGGS yeah :o) 08:38
08:38 zakharyas joined 08:39 sqirrel__ joined
moritz and no hate so far 08:43
FROGGS somebody needs to reply to the newest reply :/
<TimToady> heh, heh, we'll see who's 100% now... :) <----- lol :o) 08:44
08:45 mcglk left 08:48 mcglk joined 08:49 mcglk left
FROGGS okay, I replied 08:50
08:51 breinbaa1 left
sergot morning o/ 08:51
FROGGS morning sergot
lizmat FROGGS++ not seeing it yet, though 08:52
FROGGS :o)
lizmat seeing it now :-) 08:53
08:54 breinbaas joined 09:00 tgt left 09:02 virtualsue joined 09:11 mcglk joined 09:19 kbaker joined 09:22 fhelmberger joined 09:23 fhelmberger left, fhelmberger joined 09:29 rindolf joined 09:40 denis_boyun joined 09:41 moistcherry left 09:48 kurahaupo_mobile joined 09:49 kurahaupo_mobile is now known as kurahaupo 10:05 woosley joined, woosley1 left 10:06 woosley1 joined, woosley1 left, woosley left 10:41 Alina-malina left, Alina-malina joined
timotimo the pypy people are right, you know. pypy isn't a VM, it's a language that you can implement a VM + compiler in 10:47
and since the jit is a meta-tracing-jit, it'll trace right through whatever layers you have 10:48
but pypy has some *crazy* compile times :(
tadzik also, they keep saying how production ready it is, but people tried it at $work and all it did was segfault :)
timotimo really? 10:49
tadzik yup
timotimo i've had fantastic experiences with pypy so far
tadzik I don't know the details
timotimo so you may have been doing something spectacularly daring ;)
tadzik I know that they were well aware that linking to C-stuff may not work
or: will not work
timotimo oh, is that CPython stuff? 10:50
like CPython extensions?
brrt timotimo - i don't think you've compiled it yourself then
timotimo brrt: i have!
tadzik well, I assume that since they know that those don't work on PyPy, they wouldn't be saying "but we still tried and yep, didn't work" :)
timotimo because their equivalent to NativeCall is rock solid and even gets some jit love.
tadzik but still, I don't even know which product taht was
brrt … then you must be in the possession of one beastly machine :-P 10:51
timotimo there's CPython extension support in pypy; unfortunately they have to emulate CPython's own internal data structures for extensions that rely on them and that is slow (especially doing the ref counting)
b
brrt: i really did mean crazy bad compile timesn
brrt to me, that is the part that screams 'too clever for their own good' 10:52
timotimo well. i may be biased, but if you ask me, i'll tell you pypy rocks. and i'll tell you any day of the week.
brrt :-) 10:53
don't get me wrong
it is _very_ clever
and it even works
its also humongous and takes well over an hour to compile
timotimo the crazy thing is that the jit really doesn't have to know much about the target language or the vm 10:54
they're doing meta-tracing, we're doing meta-object-programming ;)
brrt and does so only using an earlier pypy because _regular_ python just crashes trying to compile
mop is a much better understood field
timotimo oh, that's not true though 10:55
i've compiled many pypys with CPython
pypy has only been memory-efficient enough to compile itself with reasonable amounts of ram usage for like two or three years now
brrt then again, you must have some beastly machine :-D
or i must have some decidely unbeastly ones
brrt is going lunching 10:57
10:59 brrt left
dalek kudo/nom: 24c94e0 | (Elizabeth Mattijsen)++ | src/core/ (2 files):
Add X::Routine::Banned and ban "length" and "bytes"
10:59
lizmat was inspired by the wording of "length" in S32/Str:167 11:00
11:03 robinsmidsrod joined
timotimo haha 11:04
lizmat: instead of putting a qq in there with text going to column 0 in the second line, why not use auto-unindented heredocs? :) 11:05
that's a features that's wildly underappreciated in perl 6, i find.
lizmat timotimo: last time I tried that in the settings, it didn't work 11:06
does it work now (in the settings, and rather early at that?)
timotimo aaw 11:07
don't know :(
lizmat there's also the matter of the trailing newline when using heredocs 11:12
timotimo oh, right
lizmat or is there a solution for that?
timotimo there should be a :chomp adverb, right?
lizmat I suggested that once, I recall, don't think it got implemented 11:13
doing it as a heredoce gives:
Cannot call ACCEPTS; no signatures match
at src/gen/m-BOOTSTRAP.nqp:2124 (blib/Perl6/BOOTSTRAP.moarvm::30)
when building the setting :-(
timotimo oh, huh
heredocs call accepts?
oh, to find the terminator perhaps 11:14
lizmat probably, somewhere, internally
I have spent too much time altready trying to use real Perl 6 features in the settings
so I'll settle for more nqp like features :-) 11:15
that works
anyway, having a better error message when using bytes or length seemed like a nice thing to have 11:16
timotimo aye
lizmat r: say bytes 1 11:17
camelia rakudo-parrot 44a466, rakudo-jvm 44a466, rakudo-moar 44a466: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Undeclared routine:␤ bytes used at line 1␤␤»
lizmat $ perl6 -e 'say bytes 1'
===SORRY!===
"bytes()" is banned in Perl 6.
Did you mean .encode($encoding).bytes instead?
masak seems a bit harsh. 11:18
FROGGS p: say: anyother one bytes the dust
camelia rakudo-parrot 44a466: OUTPUT«===SORRY!=== Error while compiling /tmp/OnftIbuR_z␤Undeclared routines:␤ anyother used at line 1␤ bytes used at line 1␤ dust used at line 1␤ the used at line 1␤␤»
lizmat better would be to do this at compile time, but I'm afraid that might interfere with any custom defined bytes or length subs/methods 11:19
FROGGS I thought we know at compile time which sub is there?
masak can theoretically do it for subs, not for methods.
FROGGS we don't know that for methods though I think
lizmat looking into making it compile time for subs 11:21
masak can't know it statically, because of late binding of invocant.
lizmat Ah, I see how I can do this
timotimo is "is pure" enough? 11:22
masak r: sub foo {}; sub bar {}; say &foo === &bar; say &foo === &foo 11:25
camelia rakudo-parrot 44a466, rakudo-jvm 44a466, rakudo-moar 44a466: OUTPUT«False␤True␤»
11:25 kaleem left
masak r: my @a; for ^2 { @a[$_] = sub foo {} }; say @a[0] === @a[1] 11:25
camelia rakudo-parrot 44a466, rakudo-jvm 44a466, rakudo-moar 44a466: OUTPUT«False␤»
11:25 kaleem joined
timotimo r: sub explode() is pure { die "dead" }; eval q{ say "beginning"; explode(); say "end" } 11:26
masak r: my @a; for ^2 { @a[$_] = class {} }; say @a[0] === @a[1]
camelia rakudo-moar 44a466: OUTPUT«WARNINGS:␤Useless use of "explode()" in expression "explode()" in sink context (line 1)␤beginning␤dead␤ in sub explode at /tmp/tmpfile:1␤ in block at eval_0:1␤ in any at eval_0:1␤ in sub eval at src/gen/m-CORE.setting:703␤ in sub eva…»
..rakudo-jvm 44a466: OUTPUT«WARNINGS:␤Useless use of "explode()" in expression "explode()" in sink context (line 1)␤beginning␤dead␤ in sub explode at /tmp/tmpfile:1␤ in block at eval_0:1␤ in any at eval_0:1␤ in sub eval at gen/jvm/CORE.setting:703␤ in sub eval a…»
..rakudo-parrot 44a466: OUTPUT«WARNINGS:␤Useless use of "explode()" in expression "explode()" in sink context (line 1)␤beginning␤dead␤ in sub explode at /tmp/tmpfile:1␤ in block at eval_0:1␤ in any at eval_0:1␤ in sub eval at gen/parrot/CORE.setting:705␤ in sub …»
rakudo-parrot 44a466, rakudo-jvm 44a466, rakudo-moar 44a466: OUTPUT«True␤»
masak o.O
11:26 kaleem left
timotimo oh, heh. 11:26
masak ok, so there are (in some sense) *two* functions, one for each iteration. but only one class. 11:27
11:28 kaleem joined
masak r: my @a; for ^2 { @a[$_] = class { has $.x = $_ } }; say @a[0].new.x; say @a[1].new.x 11:28
camelia rakudo-parrot 44a466, rakudo-jvm 44a466, rakudo-moar 44a466: OUTPUT«(Any)␤(Any)␤»
masak heh.
r: my @a; for ^2 { my $i = $_; @a[$_] = class { has $.x = $i } }; say @a[0].new.x; say @a[1].new.x 11:29
camelia rakudo-parrot 44a466, rakudo-jvm 44a466, rakudo-moar 44a466: OUTPUT«1␤1␤»
masak yeah.
timotimo it creates only one class, eh? so not fully closure-ish
masak right.
it doesn't re-clone like it does functions.
timotimo is it the same with roles, btw?
masak yeah.
timotimo well, in that case you can parameterize them 11:30
so that's probably the right way to go if you want something like the example you just had
11:30 kaleem left
masak well, then you're talking about the "use" side, not the "declare" side. 11:30
timotimo oh
masak should make a list of all the declare/use pairs in Perl 6 11:36
timotimo hm. is this a problem with perl 6's specification? 11:37
seems a "gotta know this, unfortunately" aspect
on the other hand, if you're constructing classes inside loops and passing them around, you're probably an advanced user and then you'll have that exact thing on your mind already 11:39
mathw it is a little counterintuitive, although part of me's saying WHY ARE YOU EVEN DOING THAT
but that kind of thinking leads to Java, so I'm going to stop there.
timotimo at least we don't have the problem python has where you have to write things like lambda var=var: ... if you want to have a "copy" of the local variable rather than a reference
r: my @lambdas; for ^5 { @lambdas.push: { $_ } }; say @lambdas[0](); say @lambdas[2](); 11:40
camelia rakudo-parrot 24c94e, rakudo-jvm 24c94e, rakudo-moar 24c94e: OUTPUT«0␤2␤» 11:41
timotimo in python, you have to explicitly say "please copy the $_ for my closure", otherwise you'll get 5\n5\n from that
er, i mean 4 and 4
11:45 scumdog1 left, scumdog joined 11:59 pdcawley_ left
dalek kudo/nom: 318a41a | (Elizabeth Mattijsen)++ | src/ (2 files):
Make banning of length() and bytes() compile time

Now uses the suggested subroutine mechanism for getting the message across rather than actually creating multi subs for length() and bytes()
12:00
lizmat $ perl6 -e 'sub lengte {}; say length 1' 12:02
===SORRY!=== Error while compiling -e
Undeclared routine:
length used at line 1. Did you mean '&lengte', 'chars', 'graphs', 'codes'?
12:03 spider-mario joined
moritz wtf is '&lengte' ? 12:03
oh
moritz actually looks at the code
lizmat to show it will also honour the levenshtein suggestions 12:04
moritz aye, that's way cool
lizmat++
lizmat it's just that I think the & is out of place in the suggestion of &lengte
the message already says it's about routines, so the & is superfluous 12:05
moritz +1
lizmat and just a side-effect of the levenshtein algo
moritz but
m: my $x = &hcars
camelia rakudo-moar 24c94e: OUTPUT«===SORRY!=== Error while compiling /tmp/NgtRBrItQq␤Undeclared name:␤ &hcars used at line 1␤␤»
masak levenshtein++
moritz oh, that one doesn't levenshtein
in this context, the & in the error message would have been highly appropriate 12:06
masak aye.
lizmat ok
masak "print it if the user did"?
lizmat so the chars, graphs, codes would need it also, is what you're saying?
moritz lizmat: no
lizmat: only if the user tried to take a reference to the routine
12:07 brrt joined
moritz lizmat: but that case doesn't seem to be levensthein'ed anyway 12:07
m: sub fooooooooobar { }; say &foooooooobar
camelia rakudo-moar 24c94e: OUTPUT«===SORRY!=== Error while compiling /tmp/_F5UcTdNRV␤Undeclared name:␤ &foooooooobar used at line 1␤␤»
moritz nope
lizmat hmm... will look into that while I'm at it
moritz what masak++ suggested is that if the user typed a sigil, the error message should also contain the sigil 12:08
and if the user typed a normal subcall without a sigil, that's what the error message produces
lizmat ok, will see if I can do this 12:09
12:12 pdcawley joined 12:16 kaleem joined, kaleem left, kaleem joined 12:21 pdcawley left 12:23 pdcawley joined
masak I still have trouble verbalizing it concretely, but there's a principle going on there: 12:25
inside a program's model, you want to Postel it and normalize everything to a single, unambiguous representation.
but in output/view/error messages, you want to present that same information in the way the user expects to see it. 12:26
lizmat fwiw, suggest_routines is not being called in the &length case :-( 12:27
investigating... 12:32
12:33 atphalix joined, grep0r left
masak lunch & 12:37
12:40 grep0r joined
lizmat is puzzled by line 3740 in Grammar.nqp: "if $_ lt 'a' {" 12:41
timotimo "if it's not alpha"? 12:42
lizmat that condition seems odd in two ways: I sorta expect "$name" having to be checked
timotimo oh, isn't that about "lower case or upper case"?
lizmat secondly, it seems wrong for &foo
r: say "&length" lt "a"; say "length" lt "a" 12:43
camelia rakudo-parrot 318a41, rakudo-jvm 318a41, rakudo-moar 318a41: OUTPUT«True␤False␤»
timotimo a line above that one seems to assume there is no & in $name 12:44
that may be the cause of the problem
12:44 pecastro joined
lizmat it's not in this case, but indeed, seems wrong nonetheless 12:44
eh, maybe not 12:45
that's just ignoring a mystery when there's a known sub in scope
timotimo oh!
fair enough, i guess
lizmat I guess we can't have subs with & in their name ? 12:46
timotimo in the middle?
lizmat or in front, aka &&foo
timotimo doesn't seem sensible to me at least
FROGGS std: my &foo 12:47
camelia std 09dda5b: OUTPUT«ok 00:01 125m␤»
FROGGS std: my &foo; &&foo
camelia std 09dda5b: OUTPUT«ok 00:01 126m␤»
FROGGS p: my &foo; &&foo
camelia ( no output )
lizmat std: my &&foo
camelia std 09dda5b: OUTPUT«===SORRY!===␤Cannot declare an indirect variable name at /tmp/ssFbUP4i0o line 1:␤------> my &⏏&foo␤ expecting any of:␤ infix noun␤ subshortname␤ twigil␤Parse failed␤FAILED 00:01 125m␤»
12:48 grep0r left
timotimo mhm. that's not really part of the name, i guess; can you debug-print the values of $name that you can come up with in these cases? 12:48
maybe the rest of the grammar that feeds the mistery list strips the sigils before adding the values
12:49 kbaker left
FROGGS p: my &foo = -> { -> { say 42 } }; (&foo()) 12:49
camelia ( no output )
FROGGS p: my &foo = -> { -> { say 42 } }; (&foo())()
camelia rakudo-parrot 318a41: OUTPUT«42␤»
FROGGS the desigilname if foo of course 12:50
lizmat I don't think there is a desigilname at that stage yet 12:56
FROGGS yes, at a given point you only have the name starting with & 13:00
13:00 bluescreen10 joined 13:06 benabik left
timotimo huh 13:07
rosettacode.org/wiki/Twelve_statements#Perl_6 - { all(.[1..12]) === any(True, False) } ← this does not really correspond to "this is a numbered list of 12 statements"
only "entries 1 through 12 are true or false"
lizmat $ perl6 -e 'sub lengte {}; say length(1)' 13:08
===SORRY!=== Error while compiling -e
Undeclared routine:
length used at line 1. Did you mean 'lengte', 'chars', 'graphs', 'codes'?
timotimo so it'd need something like .elems == 13 to be anded into that?
oh nice :)
lizmat $ perl6 -e 'sub lengte {}; say &length(1)'
===SORRY!=== Error while compiling -e
Undeclared routine:
&length used at line 1. Did you mean '&lengte', '&chars', '&graphs', '&codes'?
running spectest now
13:11 tgt joined 13:19 tgt left
timotimo r: say 1.so 13:23
camelia rakudo-parrot 318a41, rakudo-jvm 318a41, rakudo-moar 318a41: OUTPUT«True␤»
timotimo i didn't know we have that
r: say 1.not
camelia rakudo-parrot 318a41, rakudo-jvm 318a41, rakudo-moar 318a41: OUTPUT«False␤»
timotimo r: say 1.so.not.so.not.so.not.so.not
camelia rakudo-parrot 318a41, rakudo-jvm 318a41, rakudo-moar 318a41: OUTPUT«True␤» 13:24
dalek kudo/nom: be9ffea | (Elizabeth Mattijsen)++ | src/Perl6/Grammar.nqp:
Suggestions for unknown subs specified with &sigil
kudo/nom: 0a173fa | (Elizabeth Mattijsen)++ | src/Perl6/World.nqp:
Use sigil in suggestions if specified
13:24 pmurias joined
moritz lizmat: would you please add a changelog entry for that? 13:24
13:24 pecastro left, brrt left
moritz tries to remember to nag committers to do that, and to remeber it himself 13:24
lizmat sure
$ perl6 -e 'sub fooooooooobar { }; say &foooooooobar' 13:25
===SORRY!=== Error while compiling -e
Undeclared routine:
&foooooooobar used at line 1. Did you mean '&fooooooooobar'?
moritz lizmat++
timotimo now we need a routine that makes differences like that easier to spot
moritz :-) 13:26
timotimo "no such routine lo1, did you mean lol?"
moritz colored, character-based diffs
timotimo i'm slightly disappointed that there is no patience diff algorithm implementation for perl 6 13:28
since it's obviously superior to naive diff strategies
and perl 6 is all about taking the superior things from everywhere and combining them into a surprisingly elegant package
dalek kudo/nom: c735e4d | (Elizabeth Mattijsen)++ | docs/ChangeLog:
Changelog entries for suggestion stuff, moritz++
13:30
13:38 Guest19414 is now known as hinahan, hinahan is now known as hinachan, hinachan left, hinachan joined
masak moritz++ # helping people remember to keep the changelog up-to-date 13:39
13:41 atphalix left 13:44 colomon left
timotimo hmm 13:46
dalek kudo/nom: 6676f76 | (Elizabeth Mattijsen)++ | src/core/ (2 files):
s/X::Routine::Banned/X::Method::Banned/

Since we only use the exception for methods now
moritz huh? I thought we only use them for *subs*? 13:47
timotimo for subs you get the levenshtein-based "not found" errors 13:48
moritz ah 13:49
ok
timotimo for methods you get "you really didn't mean that"
lizmat at compile time
moritz never mind me then
dalek kudo/nom: 17c92be | moritz++ | docs/ChangeLog:
update ChangeLog
moritz please review and enhance :-)
lizmat cycling& 13:50
masak is it really "banned", though? I would've gone for a term like "tabooed". 13:55
timotimo "thermally discouraged by laser beam"
timotimo has to re-read all the binding syntaxes perl 6 supports
pmurias banned methods are like "foo".length? 13:56
moritz yes
pmurias so they are only raised at compile time if we know the class? 13:57
timotimo not yet
especially since you may have mixed in something with a role 13:58
knowing "the class" at compile time is exceedingly hard
pmurias perl6: class Foo {}; say Foo.length;
camelia rakudo-moar 318a41: OUTPUT«===SORRY!===␤".length" is banned in Perl 6.␤Did you mean .chars, .graphs or .codes instead?␤»
..niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Unable to resolve method length in type Foo␤ at /tmp/tmpfile line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4595 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4596 (module-CORE @ 576) ␤…»
..rakudo-jvm 318a41: OUTPUT«".length" is banned in Perl 6.␤Did you mean .chars, .graphs or .codes instead?␤ in method gist at gen/jvm/CORE.setting:12398␤ in method gist at gen/jvm/CORE.setting:1053␤ in sub say at gen/jvm/CORE.setting:13305␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 318a41: OUTPUT«".length" is banned in Perl 6.␤Did you mean .chars, .graphs or .codes instead?␤ in method gist at gen/parrot/CORE.setting:12419␤ in method gist at gen/parrot/CORE.setting:1056␤ in sub say at gen/parrot/CORE.setting:13347␤ in block at /tmp/…»
pmurias rakudo-moar: class Foo {method length {1}}; say Foo.length; 13:59
camelia rakudo-moar 318a41: OUTPUT«1␤»
pmurias rakudo-moar: class Foo {method lengt {1}}; say "here";say Foo.length;
camelia rakudo-moar 318a41: OUTPUT«here␤===SORRY!===␤".length" is banned in Perl 6.␤Did you mean .chars, .graphs or .codes instead?␤»
timotimo one thing i don't quite like about this is that to an introspector, the method *exists* 14:00
masak timotimo: well, it's either that, or insert a special case in the "Method not found" logic. 14:01
moritz that might actually be cleaner, though not as easily extensible 14:02
14:02 bluescreen10 left
timotimo is always praising the introspective capabilities of Perl 6 and would be a bit disappointed if there were too many "special cases" like these 14:02
lizmat
.oO( not cycling yet )
14:03
good points, actually
timotimo p: my ("0" => @short, "1" => @long) := (^1).roll(10).categorize({$_})
camelia rakudo-parrot 318a41: OUTPUT«===SORRY!=== Error while compiling /tmp/Wm8EmMrKyV␤Preceding context expects a term, but found infix > instead␤at /tmp/Wm8EmMrKyV:1␤------> my ("0" =>⏏ @short, "1" => @long) := (^1).roll(10).␤»
timotimo how would i do something like that?
lizmat will look at adapting the method not found logic when I'm back
14:03 grep0r joined 14:04 kaleem left, kaleem joined 14:05 kaleem left, kaleem joined 14:07 guru joined, guru is now known as ajr_
timotimo it wouldn't be terribly bad if i weren't able to construct a signature binding that takes "0" and "1" as named parameters 14:12
i'd like to know if that's the case, though
(also, (^1).roll is prety useless %) ) 14:13
moritz m: sub f(:$0) { } 14:14
camelia rakudo-moar 318a41: OUTPUT«===SORRY!=== Error while compiling /tmp/o_5_IJpu_l␤Cannot declare a numeric parameter␤at /tmp/o_5_IJpu_l:1␤------> sub f(:$0⏏) { }␤»
timotimo i can unpack the hash on the right side and use positional parameters on the left
14:15 bjz left, bjz joined 14:20 bjz left 14:22 kaleem left
timotimo i'm wondering: should the code model for IDE support for perl 6 be based on the actual Perl6/Grammar.nqp implementation or would it be sensible to build a fast, but only approximating analysis tool? 14:23
masak I've yet to be convinced it's possible to make such an approximate parse of Perl 6. 14:26
either you know where quotes begin and end or you don't, for example.
what kind of parsing information could you skip and still yield a useful parse of the program?
pmurias timotimo: the ideal solution would be to build a fast Perl6/Grammar.nqp ;)
timotimo masak: BEGIN blocks :) 14:27
masak timotimo: no, you still need to *parse* the BEGIN block.
timotimo r: BEGIN for 1..* { 1 }
camelia rakudo-jvm 318a41, rakudo-moar 318a41: OUTPUT«(timeout)» 14:28
..rakudo-parrot 318a41: OUTPUT«===SORRY!===␤Null PMC access in get_bool()␤»
timotimo ... o_O
pmurias timotimo: the IDE support needs to handle grammar extensions 14:29
timotimo i guess it should, yeah.
in that case, there has to be some kind of sandboxing or something like that 14:30
and something cleverer than RESTRICTED.setting
masak .oO( Parrot can run an infinite loop so fast it results in a Null PMC access! ) 14:31
14:33 bjz joined
pmurias timotimo: for reading untrustworthy code some sort of a "safe" mode would be usefull 14:33
nwc10 beat that, Chuck Norris! 14:34
14:34 pmurias left, skids joined
JimmyZ would like stole 'lazy val statement' from scala to rakudo's core.setting to get a faster rakudo startup time 14:35
14:40 tgt joined 14:46 tgt left
dalek kudo-star-daily: 3067e83 | coke++ | log/ (5 files):
today (automated commit)
14:49
14:52 cognominal__ left 14:54 btyler joined 14:58 jnap joined 15:01 kivutar joined
masak r: my ($x, $y) = 5, $x + 1; say $y 15:06
camelia rakudo-jvm 17c92b, rakudo-moar 17c92b: OUTPUT«use of uninitialized value of type Any in numeric context␤1␤»
..rakudo-parrot 17c92b: OUTPUT«use of uninitialized value of type Any in numeric context in block at /tmp/tmpfile:1␤␤1␤»
masak above the (tiny) WAT of simultaneous assignment.
15:10 kurahaupo left 15:12 FROGGS[mobile] joined, FROGGS left 15:13 virtualsue left 15:23 integral_ is now known as integral 15:27 fhelmberger left 15:28 fridim__ joined
moritz WAT are you talking about? 15:32
:-)
15:33 FROGGS joined
masak moritz: the (mistaken) expectation that you can use the value 5 in $x to compute the value of $y. 15:34
a lot of other languages work like that.
but they don't have the nice swap feature: ($x, $y) = $y, $x; 15:35
15:36 tgt joined
PerlJam masak: "If $x is available for use as soon as it's declared, why can't I use it to compute $y?" 15:38
:-)
masak PerlJam: yes, exactly. 15:39
well, you *can*, but from the perspective of $y, the assignment of 5 to $x hasn't happened yet -- hence the term "simultaneous assignment". 15:41
I would say that in the case of a declaration, simultaneous assignment is more of a hindrance than a help.
but I'm *not* suggesting we should introduce a special case for declarations. :)
nor am I really suggesting we should get rid of simultaneous assignment. it's occasionally useful. 15:42
15:42 tgt left
masak it's another one of those "if I designed a language, I would probably make different trade-offs" 15:42
PerlJam And you'd be WRONG! ;) 15:44
15:44 akira1 joined 15:45 treehug88 joined
masak yes -- at least in the sense that all languages suck. 15:46
15:47 akira1 left 15:48 pecastro joined 15:51 sqirrel__ left, __thou joined 15:54 hinachan_ joined 16:05 dylanwh_ joined
TimToady use ::= if you want left-to-right 16:06
16:06 guru joined, guru is now known as Guest204 16:07 awwaiid_ joined, ajr_ left 16:09 dylanwh left, hinachan left, renormalist left, awwaiid left, scumdog left, dylanwh_ is now known as dylanwh, nebuchadnezzar left, dayangkun_ left, xfix left, scumdog1 joined, dayangkun__ joined, jnap left 16:12 xfix joined, SubTerra is now known as Ayiko 16:13 cognominal joined 16:14 xragnar_ joined, xragnar left, xragnar_ is now known as xragnar 16:15 virtualsue joined
xfix rn: say "a" x 0.5 16:21
camelia rakudo-parrot 17c92b, rakudo-jvm 17c92b, rakudo-moar 17c92b, niecza v24-109-g48a8de3: OUTPUT«␤» 16:22
xfix codegolf.stackexchange.com/a/23386/3103 16:24
I like Perl 6!
16:24 arnsholt joined
TimToady it's pretty ok 16:25
xfix It wins with everything else (let's ignore this -2 polyglot, because it's rule abuse). 16:26
(the rule abuse polyglot thinks that 0 is the only random number between 0 and 255, and outputs nothing) 16:27
(and let's ignore bash fork bomb, because it doesn't solve the task) 16:28
TimToady 9.rand would be 2 characters shorter :)
oh, task requires 255 16:29
nm
16:29 pecastro left
xfix Well, it could be 0, with certain rule abuse. 16:31
(to be exact, en.wikipedia.org/wiki/Degenerate_distribution)
":)"256rand* 16:34
oh wait, GolfScript won. Why I haven't noticed the first page.
16:42 molaf_ joined 16:45 molaf left 16:49 zakharyas left
TimToady oh, given context, ::= won't work on the RHS like that, so nevermind that too :) 16:52
16:52 Alina-malina left
TimToady wow, backlog done before 9am; you guys have been slacking off 16:52
timotimo TimToady: what's your answer to rosettacode.org/wiki/Twelve_statements#Perl_6 not verifying that the number of statements is 12 long? :P 16:53
TimToady I have 3 teeth too. 16:54
but I'd use .end == 12 16:56
timotimo that's better, aye 16:57
TimToady feel free to fix it 16:58
17:00 kurahaupo joined
timotimo just putting "and .end == 12" at the end of the closure should be just fine, right? 17:00
TimToady the implementation of narcissistic numbers at gist.github.com/TimToady/9415288 runs my laptop out of memory, and it seems like it shouldn't
(it calculates using base 1000 digits :) 17:01
timotimo it does reach the body of the for loop? 17:02
TimToady sure
timotimo hm, do you really need that "gather take" at the end of the constant narcissistic?
TimToady not really, but without it returns them in batches for some reason 17:03
tried grep but it's slower
timotimo does it run on moar? 17:04
TimToady yes
as you can tell from the name 'digit', was originally doing it 10 at a time, not 1000
timotimo mhm
TimToady and @t was the original @table 17:05
17:05 hoverboard joined
TimToady that runs faster on the small numbers but slower on the big ones 17:05
vendethiel What's the "form" operator in perl6? 17:07
timotimo has no idea what that would be 17:08
TimToady looks like it runs under jvm too
vendethiel <<perl6's "form">>
TimToady what's a 'form' operator?
vendethiel that's what I'm asking :o) 17:09
TimToady where do you see a form operator?
17:09 kivutar left
vendethiel TimToady: stackoverflow.com/questions/1823497...l-5-and-6, search.cpan.org/~dconway/Perl6-Form-0.04/Form.pm 17:10
TimToady that's a module, that's not Perl 6
FROGGS timotimo: "cache iterators in encoding_find_*cclass" has hit parrot
timotimo oh!
vendethiel quotes a perl 6 example with "form" in it
timotimo i thought that code was in an unacceptable state, due to a decided lack of thread safety? 17:11
TimToady is it after a 'use Form;' ?
btw, the jvm doesn't seem to leak on the narcissistic proggie
vendethiel TimToady: not in the module docs "perl 6 example"
TimToady: " Perl 6 Form.pm module" 17:12
it just doesn't show it in the code example I guess
TimToady I can assure you there is no 'form' built into Perl 6 :) 17:13
vendethiel yep :-p
timotimo aye, perl 6 is amorph
timotimo heads out
FROGGS TimToady: perhaps there was a "form" builtin back in 2004 that did something Pod-alike? search.cpan.org/~dconway/Perl6-Form-0.04/Form.pm 17:17
17:17 hoverboard left 17:19 kurahaupo left
TimToady hmm, took the gather/take out of digits and it seems to not be leaking now 17:22
but need to run it into the higher numbers to be sure
iterestingly, the virtual image of java appears to be 20 times that of moar on this, at least in the lower numbers 17:25
*int
oops, moar grew by 1 meg :)
17:26 kurahaupo joined 17:27 benabik joined, kurahaupo left, kurahaupo joined
TimToady yeah, taking the gather/take out of digits and using push instead removed the memory leak on moar 17:29
and I'm quite please to see that the resident set of moar is about 1/10 of jvm's 17:30
*pleased
17:31 grep0r left
TimToady so it would appear that running thousands of quick little gather/takes is leaking something, maybe in the contination support somewhere 17:33
lemme see if I can reduce it to a test case, after I'm done racing these self-loving numbers 17:35
17:35 grep0r joined 17:43 renormalist joined 17:44 telex left
TimToady indeed, the following leaks very rapidly: 17:46
r: my @bar = (gather take 42) while 1;
17:46 telex joined
camelia rakudo-parrot 17c92b, rakudo-jvm 17c92b, rakudo-moar 17c92b: OUTPUT«(timeout)» 17:46
TimToady (leaks on moar, that is) 17:47
I guess I should say this on #moarvm :) 17:48
since those guys never come over here...
17:50 hoverboard joined 17:52 flussence left, flussence joined 17:54 isBEKaml joined 17:55 molaf_ left 17:56 cooper left 18:00 cooper joined
TimToady I see that the Twelve Statements entry was also singed by whoever's browser was turning unicode chars into ? 18:01
18:07 Guest204 left 18:08 guru joined 18:09 Alina-malina joined, guru is now known as Guest88483, Guest88483 is now known as ajr_ 18:11 grondilu joined
jnthn dagurval_: 18:15
oops 18:16
Darn, there's nothing full fart about this train wifi today...
TimToady well, doesn't appear that you can blame sunspots 18:18
jnthn Of course. We blame oraclespots nowadays... 18:20
isBEKaml was there no nqp-2014.02 release? rakudo.org/downloads/nqp
18:20 hinachan_ is now known as hinachan, hinachan left, hinachan joined
isBEKaml (Hi, BTW) 18:20
18:22 kurahaupo left, kurahaupo joined, tgt joined 18:23 darutoko left 18:24 Alina-malina left 18:25 Alina-malina joined
TimToady timotimo: while fixing the implication arrow, I took the liberty to pull your .end up to the front, because "there are 12 things and they are all statements" reads better than the other way around 18:27
18:28 virtualsue left, ajr_ left, kurahaupo left 18:29 kurahaupo joined 18:30 pdcawley left 18:31 pdcawley joined 18:32 pdcawley left 18:34 rindolf left 18:39 Alina-malina left 18:40 Alina-malina joined
[Coke] I want an XMPP client in perl 6. 18:43
TimToady wanting it isn't enough--you have to WANT it. 18:44
benabik .WANT 18:45
18:46 lizmat left, lizmat joined
arnsholt [Coke]: XMPP is XML-based, isn't it? 18:52
lizmat afaik, yes (hence the X in XMPP)
18:54 rindolf joined 18:56 benabik left
xfix yes 18:57
I have support for it in my IRC bot, and it's XML based. 18:58
19:00 colomon joined
dalek kudo/nom: ef8b8f9 | (Elizabeth Mattijsen)++ | src/core/ (2 files):
Ban .length and .bytes from method not found handler

As suggested on #perl6
19:00
colomon lizmat++ # on the loose again 19:04
lizmat loose is right, only needed N iterations to get this right :-) 19:05
19:05 mavcunha joined 19:06 zakharyas joined
TimToady lizmat: it's not right yet :) 19:06
should have .elems in there too :)
lizmat when you're right, you're right :-)
I was also considering doing a levenshtein on the possible method names of the object if method not found 19:08
would that make sense ?
TimToady mebbe, though that won't help if you've called the wrong object :) 19:11
19:12 cognominal left, cognominal joined
lizmat true, but I think that's a smaller chance than a typo in the method name 19:12
[Coke] has a java project at work that could really benefit from a levenshtein helper on the error messages. 19:16
dalek kudo/nom: 55d5e36 | (Elizabeth Mattijsen)++ | src/ (2 files):
Add elems to suggestion list for length

As pointed out by TimToady++
lizmat I'm starting to wonder whether the levenshtein algo shouldn't be a first class citizen somehow 19:17
instead of being hidden in World.nqp
[Coke] like, @array.leven('guess') == <guess1 guess2 gross> ? 19:18
FROGGS let's do it PHPish and call it str_levenshtein or so :o)
xfix It's levenshtein or similar_text in PHP 19:20
lizmat [Coke]: on the failed method exception, it would become something like $object.methods.leven($.method)
xfix Yeah, there are two functions that do very similar operation.
Except they differ in algorithmic complexity, because, uh, it's PHP. 19:21
dalek kudo/nom: b385720 | (Elizabeth Mattijsen)++ | docs/ChangeLog:
Add Changelog entry for specific length/bytes feedback
19:25
[Coke] lizmat: seems legit. 19:37
19:44 grep0r left
isBEKaml Int and Num aren't the same? 19:44
FROGGS no, they even have different names 19:45
like int/double in C
isBEKaml m: gist.github.com/svatsan/9418471 19:46
camelia rakudo-moar 17c92b: OUTPUT«gist not found»
[Coke] m: gist.github.com/svatsan/9418471 19:47
camelia rakudo-moar 17c92b: OUTPUT«gist not found»
19:47 grep0r joined
[Coke] weird. took a few seconds to load the first time locally, but is pretty zippy now. 19:47
not sure why camelia is complaining.
FROGGS m: gist.github.com/svatsan/9418471 19:49
camelia rakudo-moar 17c92b: OUTPUT«===SORRY!=== Error while compiling /tmp/Q5WuTB2SXK␤Two terms in a row␤at /tmp/Q5WuTB2SXK:1␤------> http⏏://gist.github.com/svatsan/9418471␤ expecting any of:␤ argument list␤ postfix␤ …»
FROGGS hmmm
TimToady isBEKaml: it's an array of floaters, but arrays have integer indices
isBEKaml The reason I posted that gist: I got an error saying something like "Expected Num but got Int instead" for that variable. 19:50
TimToady well, 1..5 produces Ints, not Nums
isBEKaml TimToady: Is there any way I can get a specific type? .WHAT just gave me (array)
TimToady .[0].WHAT 19:51
those Num decls should probably be Numeric instead 19:52
you only care if the type fills the role
well, they should be Real instead
since Numeric includes Complex
m: say Int ~~ Real 19:53
camelia rakudo-moar 17c92b: OUTPUT«True␤»
19:53 kurahaupo left
isBEKaml TimToady: thanks. It was from RC :-) 19:53
rosettacode.org/wiki/Binary_search#Perl_6
TimToady probably from before we had those roles :)
whoever tested it probably used reals instead of integers 19:55
actually, they should allow any type that defines cmp 19:56
19:58 pecastro joined
TimToady why they do that jig with p $mid when it should just take a comparator function is beyond me 20:00
well, a binary table should know it's comparator in the first place
this should probably be rewritten as a binary table role 20:01
20:03 kongtomorrow left, fridim__ left
grondilu r: sub is-narcissistic(Int $n) { $n == [+] $n.comb »**» $n.chars }; .say for (grep .&is-narcissistic, 1 .. *)[^10]; 20:08
camelia rakudo-jvm 17c92b: OUTPUT«Nominal type check failed for parameter '$n'␤ in sub is-narcissistic at /tmp/tmpfile:1␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-moar 17c92b: OUTPUT«Nominal type check failed for parameter '$n'; expected Int but got Nil␤ in sub is-narcissistic at /tmp/tmpfile:1␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 17c92b: OUTPUT«Nominal type check failed for parameter '$n'; expected Int but got Nil instead␤ in sub is-narcissistic at /tmp/tmpfile:1␤ in block at /tmp/tmpfile:1␤␤»
20:08 treehug8_ joined
isBEKaml What's a 'binary table' role? I don't seem to find it anywhere... 20:09
20:10 treehug88 left 20:13 zakharyas left
TimToady just an array that keeps itself ordered based on the cmp function it already knows, maintaining the ordering invariant so that a binary search always works under that cmp 20:13
seems like a very ordinary generic thing to want 20:14
20:14 xenoterracide joined
isBEKaml Well yes, I got confused when you said "this should probably be rewritten as a binary table role" -- so was wondering if there's some role as 'binary table' :-) 20:15
TimToady not yet
20:15 mavcunha left
TimToady it's very like having generic hashes, except the constraint is it has to support comparison, not just equivalence 20:16
since we have generic hashes, there hasn't been much pressure to write generic binary tables
20:20 LV is now known as LordVorp
raydiak camelia is complaining about gists because the regex she uses to pull the 'view raw' url from the gist's page fails due to changes on github 20:23
I see the fix, if someone else wants to test it...not up for configuring my own bot instance right now
20:32 kpdisk joined
raydiak added the PR to perl6/evalbot, either way 20:35
isBEKaml raydiak: I see the fix too - it's some aria.js change that's making camelia to complain.
Your PR assumes that 'title' attribute will always be before 'href' -- we should probably add another case too. 20:37
raydiak isBEKaml: it occured to me, but I'm hoping its done a little more cleanly and correctly in the future (with a module for parsing html), so didn't really make any attempt to further future-proof it 20:42
isBEKaml raydiak: I wondered why there wasn't an HTML parser used, but then it's probably overkill just for fetching a single tag and working it. 20:44
raydiak isBEKaml: agreed, I can only imagine someone didn't want to add another dependency just for that one use 20:49
TimToady grondilu: added a faster version of rosettacode.org/wiki/Narcissistic_d...ber#Perl_6
still takes more than 3 hours to get the first 25 numbers 20:50
masak TimToady: what did you meant at irclog.perlgeek.de/perl6/2014-03-07#i_8399657 ?
r: my ($x, $y) ::= 5, $x + 1; say $y
camelia rakudo-jvm ef8b8f: OUTPUT«(timeout)»
..rakudo-moar ef8b8f: OUTPUT«use of uninitialized value of type Any in numeric context␤1␤» 20:51
..rakudo-parrot ef8b8f: OUTPUT«use of uninitialized value of type Any in numeric context in block at /tmp/tmpfile:1␤␤1␤»
TimToady I retracted it
masak oh.
masak should backlog completely
20:51 cognominal left, cognominal joined
TimToady r: my ($x, $y) ::= 5, gather take $x + 1; say $y 20:53
camelia rakudo-parrot ef8b8f: OUTPUT«6␤»
..rakudo-jvm ef8b8f, rakudo-moar ef8b8f: OUTPUT«use of uninitialized value of type Any in numeric context␤1␤»
TimToady \o/
r: my ($x, $y) ::= gather take 5, $x + 1; say $y 20:54
camelia rakudo-parrot ef8b8f: OUTPUT«use of uninitialized value of type Any in numeric context in block at /tmp/tmpfile:1␤␤Not enough positional parameters passed; got 1 but expected 2␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-jvm ef8b8f, rakudo-moar ef8b8f: OUTPUT«use of uninitialized value of type Any in numeric context␤Not enough positional parameters passed; got 1 but expected 2␤ in block at /tmp/tmpfile:1␤␤»
TimToady aww
r: my ($x, $y) ::= gather {take 5; take $x + 1}; say $y
camelia rakudo-jvm ef8b8f, rakudo-moar ef8b8f: OUTPUT«use of uninitialized value of type Any in numeric context␤1␤»
..rakudo-parrot ef8b8f: OUTPUT«use of uninitialized value of type Any in numeric context in block at /tmp/tmpfile:1␤␤1␤»
grondilu TimToady: noted. Seems nice.
TimToady why doesn't that one work?
I guess something's not strictly lazy there 20:55
masak TimToady: want me to rakudobugsubmit it?
TimToady not sure
masak branches into two universes, and submits it in one of them 20:56
moritz wouldn't expect signature binding to be that lazy
TimToady r: my ($x, $y) ::= 5, gather take $x + 1; say $y
camelia rakudo-parrot ef8b8f: OUTPUT«6␤»
..rakudo-jvm ef8b8f, rakudo-moar ef8b8f: OUTPUT«use of uninitialized value of type Any in numeric context␤1␤»
TimToady but it's that lazy, on parrot
tadzik can't wait to see which universe he ends up in 20:57
timotimo hey tadzik :)
tadzik probably in both :D
timotimo: heyhye
masak timotimo: ping 20:58
timotimo pong
masak timotimo: isBEKaml's question at irclog.perlgeek.de/perl6/2014-03-07#i_8400645
timotimo oh
i think i made a tarball
probably didn't get anyone to upload it :o 20:59
isBEKaml masak, timotimo: I got it off github releases tab.
masak lizmat++ # github.com/rakudo/rakudo/commit/ef8b8f9cf0
lizmat: I think that's a nicer solution, even if it messes up the method-not-found logic a little.
timotimo t.h8.lv/nqp-2014.02.tar.gz 21:00
tadzik oh, I'm doing a release this month
mishu<TAB><TAB>
masak tadzik: wow, was that an obscure reference to the bot I haven't written yet? :) 21:01
tadzik I want a robot too :P
masak we all do.
tadzik: how about this:
tadzik: we take a weekend sometime, and we flesh out the design during a blitz design session. then we build the thing.
tadzik sounds good to me 21:02
masak tadzik: I have it all pretty planned out alread. I just need to allocate time for it.
already*
tadzik so it's all-ready? :P
masak hehe
all-most
isBEKaml yeah, tadzik just has to show up. SMOP. :P
tadzik :)
I want to see Sweden again
last time it was blizzard-cold 21:03
masak Sweden is really close to Poland.
tadzik it is
masak and it's not cold anymore.
we have spring here now.
tadzik I think there's a boat going there too
arnsholt Norway too. And apparently there's going to be several hours of sun tomorrow \o/
I think we've had something like three sunny days since new year. It's ridiculous 21:04
tadzik well, the year has just started :) 21:05
arnsholt I'd still expect a bit more than three days with sun in two months =p
colomon beautiful sunny day here at my parents', and it's even a bit above freezing. Love these days here, the bright white snow and the bright blue river are a gorgeous contrast.
isBEKaml 5% of sunlight -- fun :-) 21:06
arnsholt In fact, we're already about 16% into the new year
masak arnsholt: might be we here in .se took all the sun. sorry 'bout that.
colomon surprisingly little ice in the river considering the Great Lakes are frozen.
arnsholt masak: Bah! 21:07
isBEKaml arnsholt: then the Finns are worse off than the Nordics. :-) 21:08
21:08 kpdisk left
masak arnsholt: we should cease this silly rivalry between .no and .se -- how about we re-form the union, and make Gothenburg the capital? :P 21:08
isBEKaml (if my geo-sense is right)
timotimo can somebody upload that tarball for me? 21:09
TimToady masak: we should add a third deck of guns to the ship, too
masak TimToady: ouch. 21:10
:P
masak inspects his national pride for cuts and bruises :) 21:11
moritz TimToady: upload what tarball where?
sorry, meant timotimo
masak TimToady: also, I can guess which museum you've been to. we were there a few months back.
isBEKaml moritz: timotimo was referring to the 2014.02 tarball for nqp for upload to rakudo.org/downloads. 21:12
timotimo he was, aye 21:13
isBEKaml o.O(timotimo's somehow related to Cap'n Crunch "I'm he.") 21:14
timotimo %) 21:15
he-man! :)
moritz and where can I find it? 21:16
colomon " .no and .se -- how about we re-form the union," and become .nose?
isBEKaml yeah, they'd turn into disapproving fellows. Turning up nose to everything. 21:17
moritz ah, found the link in the backlog
uploaded. 21:18
timotimo thank you
it was only a page up :)
masak moritz++ 21:20
arnsholt masak: Excellent idea, everyone'd be equally upset with Gothenburg as capital =D
masak arnsholt: except, I guess, people in Gothenburg, who'd all go "finally!" 21:21
21:24 beastd joined
arnsholt Tru dat, but how many people would that be, y'know, in the broader scheme of things? 21:28
masak half a million, give or take.
...about the population of Oslo :P 21:29
arnsholt Not many at all, then ;) 21:30
masak actually, scratch this idea. let's make a Sweden-Denmark-Norway-Iceland union instead. 21:34
tadzik the Cold Fusion
moritz tadzik++
masak hehe 21:36
isBEKaml and they SIN'D. 21:38
21:39 hoverboard left
tadzik 2 more countries and you'll have DISNEY 21:40
masak .oO( Eritrea and Yemen? ) 21:41
isBEKaml Call Eritrea and Yugoslavia. You'd be then "diverse" group.
TimToady how 'bout East Germany and Yugoslavia? 21:42
isBEKaml or Estonia and Yemen.
colomon is not clear if Yugoslavia actually exists anymore
tadzik Estonia is pretty close
TimToady well, I suggest East Germany because it has the opposite problem to Yugoslavia
masak can I change to Egypt? it would offset the cold a bit.
colomon TimToady: ah, yes, missed that detail in your suggestion. :)
21:45 hinachan left
isBEKaml or Ecuador and Yggdrasil :P 21:46
TimToady a line and a tree? 21:48
isBEKaml I was going for a seed and a tree. 21:49
21:50 grondilu left
jnthn Darn, weather was nice in Stockholm. Nasty here. 21:52
21:58 rindolf left 22:04 treehug88 joined
masak 'night, #perl6 22:06
tadzik good knight
22:07 treehug8_ left 22:11 isBEKaml left 22:13 virtualsue joined 22:17 btyler left 22:19 pippo joined 22:23 virtualsue left 22:26 dmol left 22:39 skids left 22:40 virtualsue joined 22:41 BenGoldberg joined 22:46 tgt left
lizmat masak: re lizmat++ # github.com/rakudo/rakudo/commit/ef8b8f9cf0 , looking at ways to handle that the same as sub not found at compile time 22:49
so with levenshtein suggestions: then these particular ones could be added from another data structure (e.g. a hash with special case suggestions) 22:50
sleep& 22:57
23:06 Psyche^ joined 23:10 Psyche^_ left, pippo left 23:24 virtualsue left
lue r: say "ABC" ~~ / <wb> "ABC" <wb> / 23:29
[Coke] wubba wubba
camelia rakudo-jvm b38572: OUTPUT«(timeout)»
..rakudo-parrot b38572, rakudo-moar b38572: OUTPUT«「ABC」␤ wb => 「」␤ wb => 「」␤␤»
lue pm: say 'ABC[]' ~~ /<wb> 'ABC[]' <wb>/
r: say 'ABC[]' ~~ /<wb> 'ABC[]' <wb>/
camelia rakudo-parrot b38572, rakudo-jvm b38572, rakudo-moar b38572: OUTPUT«Nil␤» 23:30
lue Why does it fail when you have funny characters at the end? I was hoping to avoid writing my own "surrounded by spaces or ^/$ " rule 23:31
TimToady I believe wb is defined in terms of \w 23:33
r: say 'ABC[]' ~~ /<|s> 'ABC[]' <|s>/ 23:34
camelia rakudo-parrot b38572, rakudo-jvm b38572, rakudo-moar b38572: OUTPUT«「ABC[]」␤␤»
TimToady r: say ' ABC[] ' ~~ /<|s> 'ABC[]' <|s>/
camelia rakudo-parrot b38572, rakudo-jvm b38572, rakudo-moar b38572: OUTPUT«「ABC[]」␤␤»
lue Ah. Funny thing is, I tried <|w> , but forgot about the other <| rules :)
TimToady I belive <|s> is what yer lookin fer 23:35
timotimo what are those?
TimToady <|x> means a boundary between \x and \X
either way
timotimo why didn't i know about that before?
lue TimToady: I skipped over them because "grapheme" and "codepoint" feel like they could conceivably include whitespace, which I don't want. 23:36
well, maybe not grapheme, but certainly codepoint.
BenGoldberg So it's like perl5's \b, but generalized? Cool.
lue Oh, I see I was taking S05's listing of <| as an exhaustive list. Fixing... 23:37
23:39 beastd left
lue TimToady: IIUC, would <|myrule> check for a boundary between <myrule> and <!myrule> ? 23:40
TimToady well, <+myrule> and <-myrule> maybe 23:41
timotimo huh, + and -?
TimToady I don't know how far it has been generalized
lue TimToady: the spec is way too sparse on <| , that's why I'm asking. 23:42
timotimo there's even more stuff in S05 i don't know about? =o
TimToady the rule definitely has to match something on one side, but maybe not on the negative side
23:42 spiritus joined
TimToady that doesn't mean it can match with no width if something is there 23:42
lue are the backslash sequences available as single-char rules in general? (e.g. <.h> is just \h )
TimToady no 23:43
23:43 treehug88 left
TimToady at least, not with the same name 23:43
lue So it's a special case for <| then
TimToady r: say ' ABC[] ' ~~ /<|h> 'ABC[]' <|h>/ 23:44
camelia rakudo-parrot b38572, rakudo-jvm b38572, rakudo-moar b38572: OUTPUT«「ABC[]」␤␤»
dalek ecs: 22231b9 | lue++ | S05-regex.pod:
[S05] Expand information on <|rule> syntax.

Wouldn't want someone thinking that was an exhaustive list, now would we? :)
23:48