»ö« 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.
diakopter jeffreykegler: you're right; S03 explicitly says that's a syntax error 00:07
std: my $x = 1 ; say 42 ?? $x = 43 !! $x = 44 00:08
p6eval std 235f71b: OUTPUT«===SORRY!===␤Precedence of = is too loose to use between ?? and !!; please use parens around inner expression at /tmp/aQYhWXB4eP line 1:␤------> my $x = 1 ; say 42 ?? $x =⏏ 43 !! $x = 44␤Parse failed␤FAILED 00:00 43m␤»…
jeffreykegler Yeah. I'm looking into ternaries from a parsing point of view. 00:09
The Perl 6 standard diverges from Perl 5 and C in NOT allowed an assignment as the middle term
*allowed => allowing
A fact well known, I am sure, to at least some of the authors of S03 00:10
And my guess is that Perl 6 was intended to break from the tradition in parsing the middle term of ternaries 00:12
japhb std: my $x = 1 ; say $x = 42 ?? 43 !! 44; say 42 ?? ($x = 43) !! ($x = 44) 00:13
p6eval std 235f71b: OUTPUT«ok 00:00 43m␤»
japhb jeffreykegler, note that both of the above work ^^ 00:13
jeffreykegler Noted 00:14
dalek nda: 2e350d1 | (Geoffrey Broadwell)++ | TODO:
Greatly expand TODO with tadzik++ geoffb++ sirrobert++ #perl6 discussions of last couple days
00:41
diakopter p6: die "wut." 02:13
p6eval rakudo 48e5e4: OUTPUT«wut.␤ in block at /tmp/0HmMDA_Cix:1␤␤»
..niecza v19-21-gc86e8e5: OUTPUT«Unhandled exception: wut.␤ at /home/p6eval/niecza/lib/CORE.setting line 1414 (die @ 5) ␤ at /tmp/isIvdN3qtp line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3929 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3930 (module…
benabik Is there some fundamental difference between $foo and \foo parameters? 05:08
It's strange to see so much perl code without $ on the variables... 05:09
japhb benabik, the \foo does not imply a context. It means "whatever this thing is, pass it through". 05:17
$ treats the parameter as a scalar 05:18
benabik So it's somehow more generic than $? Or does the compiler do/not do something for it? 05:19
dalek c: b538abe | moritz++ | lib/X/ (6 files):
more exception classes
05:20
c: 5698d53 | moritz++ | lib/ObjAt.pod:
stub ObjAt documentation
c: 13d7f52 | moritz++ | lib/X/Comp.pod:
some more X::Comp notes
c: 3e51487 | moritz++ | lib/ (2 files):
X::Placeholder::Mailine. Explain "mainline" in the glossary
05:21
c: f308c62 | moritz++ | lib/X/ (10 files):
document more exception classes
c: ae41ef8 | moritz++ | lib/operators.pod:
[operators] describe some circumfix and postcircumfixes
japhb It is in a sense more generic, yes.
In this case, you could almost consider the \ to be a sigil in the sense that Mu is a type. Both imply the absolute minimum they can about a variable or object, respectively. 05:22
And in answer to the question about whether the compiler does not do something, I believe you are correct -- sufficiently so that a \ parameter is faster than a $ parameter in Rakudo. 05:23
benabik wonders if params and variables will become normal usage... 05:24
moritz \ parameters bind whatever was passed to them, be it value or container 05:25
a normal $ parameter always creates a ro-container
benabik :(\foo) is to :($foo) as := is to = ? 05:26
japhb++ moritz++
moritz benabik: not really. :($foo) implies read-onlyness of $foo 05:27
JimmyZ_ moritz: hello 06:08
moritz: irclog.perlgeek.de/parrot/2012-08-17#i_5904334, FYI
tadzik good morning 06:29
diakopter jnthn: pong 06:54
moritz JimmyZ_: thanks 07:24
jnthn morning, #perl6 07:33
tadzik oh hai
jnthn tadzik: How goes the winderspanda? :) 07:34
moritz "winder is coming" -- Ned Stark
tadzik jnthn: nah, no way to work on it now; I'm now sober again 07:35
jnthn There Will Be Alcohol. 07:41
dalek kudo/parrot-iocleanup1-take2: 942e670 | moritz++ | src/core/IO/Socket/INET.pm:
explicitly set encoding on sockets
07:43
kudo/parrot-iocleanup1-take2: 7090070 | moritz++ | src/core/IO/Socket.pm:
Do not trans_encoding in IO::Socket.recv
jnthn tadzik: Hmm...concatenating stuff with cwd() here doesn't seem to show the problem we were seeing last night 07:49
tadzik: Was there some other ingredient that I'm missing?
std: m:P5/./ 07:54
p6eval std 235f71b: OUTPUT«ok 00:00 47m␤»
jnthn std: m:P5/-/
p6eval std 235f71b: OUTPUT«ok 00:00 47m␤»
jnthn std: m/-/
p6eval std 235f71b: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter - (must be quoted to match literally) at /tmp/yS3b8sPtXh line 1:␤------> m/-⏏/␤Can't call method "from" on unblessed reference at STD.pm line 55008.␤FAILED 00:00 41m␤»
tadzik jnthn: perl6 -e '%*ENV<FOO> = cwd; say %*ENV<FOO>.perl'? 07:55
jnthn tadzik: oops, yes 07:58
moritz jnthn: moritz.faui2k3.org/tmp/windows-env.patch 08:05
jnthn: shot in the dark, maybe that fixes it
tadzik jnthn: gist.github.com/3385175 any idea why this haens? 08:10
jnthn tadzik: No. Hm. 08:11
moritz maybe because the result is a binary blob, not UTF-8? 08:12
jnthn Hm, yeah...does it return a bunch of bytes or does it encode it? 08:14
tadzik oh, good questions 08:17
binary blob I guess 08:18
moritz r: say nqp::p6box_i(pir::find_encoding__Is('utf8')) 08:20
p6eval rakudo 48e5e4: OUTPUT«3␤»
dalek kudo/nom: 9db2d9b | jonathan++ | src/core/IO.pm:
Fix cwd() to transncode the result. Avoids a problem that gets in the way of Panda on Windows.
08:26
tadzik \o/ 08:29
pmichaud ....I don't quite understand why 9db2d9b is necessary.
tadzik neither did we
jnthn pmichaud: nor do I
*mumble*windows*mumble*ucs2*mumble* 08:30
tadzik :>
moritz because something is broken and cares about the internal encoding of parrot strings that really shouldn't
tipdbmp ?eval [+] 1 .. 10; 08:32
tadzik r: say [+] 1..10
p6eval rakudo 48e5e4: OUTPUT«55␤»
tadzik tipdbmp: welcome
tipdbmp hi 08:33
r: say [+] 1 .. 10
p6eval rakudo 48e5e4: OUTPUT«55␤»
tipdbmp r: say [+] 1..10
p6eval rakudo 48e5e4: OUTPUT«55␤»
tipdbmp r: say [+] 1..5
p6eval rakudo 48e5e4: OUTPUT«15␤»
tipdbmp r: for 1 .. 3 -> $x { say $x } 08:35
p6eval rakudo 48e5e4: OUTPUT«1␤2␤3␤»
tipdbmp xD
tipdbmp for 3 .. 1 -> $x { say $x } 08:36
r: for 3 .. 1 -> $x { say $x }
p6eval rakudo 48e5e4: ( no output )
tipdbmp :/
Why is the range operator not working that way? 08:37
tipdbmp r: for (1 .. 3).reverse -> $x { say $x } 08:41
p6eval rakudo 48e5e4: OUTPUT«3␤2␤1␤»
pmichaud ranges are always ascending. for a descending sequence, use the sequence operator
r: for 3...1 -> $x { say $x }
p6eval rakudo 48e5e4: OUTPUT«3␤2␤1␤»
tipdbmp Oh ok tnx.
r: [<] (3, 2, 1, 6, 7) 08:44
p6eval rakudo 48e5e4: ( no output )
moritz see also: doc.perl6.org/type/Range 08:45
tipdbmp tnx
moritz and doc.perl6.org/op/infix/... for the sequence operator 08:47
pmichaud moritz++ op/infix/... 08:48
can we get op/... to work/disambiguate someday?
moritz it's already on my TODO
note that doc.perl6.org/+ already works 08:49
no idea why doc.perl6.org/... doesn't
diakopter .. means dir up
moritz yes, but ... ne ..
diakopter maybe it doesn't LTM :) 08:50
moritz :-)
tipdbmp r: say 1 / 0 08:52
p6eval rakudo 48e5e4: OUTPUT«Divide by zero␤ in sub infix:<div> at src/gen/CORE.setting:2851␤ in method floor at src/gen/CORE.setting:7851␤ in method Str at src/gen/CORE.setting:7869␤ in method gist at src/gen/CORE.setting:2336␤ in sub say at src/gen/CORE.setting:7086␤ in block at /tmp/…
tipdbmp r: say [**] (1 .. 10) 08:54
p6eval rakudo 48e5e4: OUTPUT«1␤»
dalek c: 5175565 | pmichaud++ | lib/operators.pod:
Fix copy/pasto in ??? and !!! listops.
c: c61ad58 | moritz++ | lib/operators.pod:
typo
tipdbmp r: say 2 ** 2; 08:55
p6eval rakudo 48e5e4: OUTPUT«4␤»
tipdbmp r: say [+] (1 .. 10);
p6eval rakudo 48e5e4: OUTPUT«55␤»
tipdbmp r: say [**] (1 .. 10);
p6eval rakudo 48e5e4: OUTPUT«1␤»
tipdbmp r: say [*] (1 .. 10);
p6eval rakudo 48e5e4: OUTPUT«3628800␤»
tipdbmp r: say (3, 2, 1, 6, 7).sort; 08:56
p6eval rakudo 48e5e4: OUTPUT«1 2 3 6 7␤»
tipdbmp r: for 1 .. 10 -> { say (-1, 0, 1).roll } 08:58
p6eval rakudo 48e5e4: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤ in block at /tmp/yByzW92IIB:1␤␤»
pmichaud drop the '->' there, probably.
moritz right 08:59
tipdbmp r: for 1 .. 10 { say (-1, 0, 1).roll }
p6eval rakudo 48e5e4: OUTPUT«-1␤1␤1␤-1␤0␤1␤0␤1␤1␤-1␤»
moritz r: .say for (-1, 0, 1).roll(10)
p6eval rakudo 48e5e4: OUTPUT«-1␤0␤0␤0␤1␤1␤1␤-1␤0␤1␤»
tipdbmp r: say for (-1, 0, 1).roll(10) 09:01
p6eval rakudo 48e5e4: OUTPUT«␤␤␤␤␤␤␤␤␤␤»
tipdbmp The dot is required before say? ".say" 09:02
moritz tipdbmp: that makes it default to $_
otherwise it's parsed as say() for ... 09:03
tipdbmp r: say for 1.. 10;
p6eval rakudo 48e5e4: OUTPUT«␤␤␤␤␤␤␤␤␤␤»
tipdbmp r: .say for 1.. 10;
p6eval rakudo 48e5e4: OUTPUT«1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤»
tipdbmp r: say for (1.. 10); 09:04
p6eval rakudo 48e5e4: OUTPUT«␤␤␤␤␤␤␤␤␤␤»
moritz r: class A { has $.x; }; say A.new(x => 5)>>.x 09:28
p6eval rakudo 9db2d9: OUTPUT«5␤»
moritz doc.perl6.org/op/[%20] 09:30
preliminary support only
DarkWolf84 r: say "" 09:34
p6eval rakudo 9db2d9: OUTPUT«␤»
DarkWolf84 unicode problems again :( 09:35
tadzik how so? 09:36
moritz probably on the client side of DarkWolf84
tadzik .u ␤ 09:37
phenny U+2424 SYMBOL FOR NEWLINE (␤)
DarkWolf84 my irc transport isue
I never tried to join irc from half year maybe 09:38
it's strange utf-8 encoding don't works for freenode 09:40
tadzik it's not freenode's problem 09:41
moritz DarkWolf84: "works for me"
DarkWolf84 ic
tadzik it's something on your side
darkwolf84 r: "" 09:44
p6eval rakudo 9db2d9: ( no output )
tadzik r: say "zażółć gęślą jaźń"
p6eval rakudo 9db2d9: OUTPUT«zażółć gęślą jaźń␤»
huf polish has squiggles at the bottom of letters too? 09:45
tadzik yep
huf huh.
tadzik they're called "tails"
phenny: pl en "ogonki"?
phenny tadzik: "tails" (pl to en, translate.google.com)
huf and the ones on top are ears? 09:46
tadzik hehehe
I don't think they have a name
they're just kreski
phenny: pl en "kreski"?
phenny tadzik: "line" (pl to en, translate.google.com)
tadzik lines, phenny
DarkWolf84 It's bug in my client 09:49
sorry for my spam 09:50
tadzik no problem 09:51
DarkWolf84 r: @(1|2|3).perl 09:56
p6eval rakudo 9db2d9: ( no output )
DarkWolf84 @(1|2|3).perl.say
r: @(1|2|3).perl 09:57
p6eval rakudo 9db2d9: ( no output )
DarkWolf84 r: @(1|2|3).perl.say
p6eval rakudo 9db2d9: OUTPUT«any(1, 2, 3)␤»
DarkWolf84 hm
(1|2|3).array.perl.say 09:58
r: (1|2|3).array.perl.say 09:59
p6eval rakudo 9db2d9: OUTPUT«No such method 'array' for invocant of type 'Int'␤ in sub AUTOTHREAD_METHOD at src/gen/CORE.setting:1863␤ in <anon> at src/gen/Metamodel.pm:2296␤ in block at /tmp/t8ltMoACto:1␤␤»
DarkWolf84 is there any way to make junction array?
or list 10:00
DarkWolf84 r: (1|2|3).^methods(:local).say 10:02
p6eval rakudo 9db2d9: OUTPUT«new BUILD postcircumfix:<( )> Bool Str ACCEPTS gist perl␤»
DarkWolf84 :( 10:03
moritz DarkWolf84: faq.perl6.org/#eigenstate
DarkWolf84 reading... 10:04
thanks, moritz 10:05
r: eigenstates(1|2|3).perl.say 10:06
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&eigenstates' called (line 1)␤»
tipdbmp r: say "A" if 1 == 2|1; 10:07
p6eval rakudo 9db2d9: OUTPUT«A␤»
DarkWolf84 r: eigenstates(1|2|3).join(", ").say 10:08
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&eigenstates' called (line 1)␤»
DarkWolf84 oops 10:09
maybe rakudo don't have eigenstates
moritz DarkWolf84: did you actually read that FAQ? 10:10
DarkWolf84 not the all
still reading 10:11
the FAQ says that is wrong thing 10:12
I see 10:14
eigenstates is just a sub defined before
my bad 10:15
:r my @states.push(1|2|3); @states.perl.say; 10:20
tipdbmp r: if [<](2,1,3) { say "as" }
p6eval rakudo 9db2d9: ( no output )
tipdbmp r: if [<](1,2,3) { say "as" }
p6eval rakudo 9db2d9: OUTPUT«as␤»
DarkWolf84 r: my @states.push(1|2|3); @states.perl.say; 10:21
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Confused␤at /tmp/V4bJs0JaDn:1␤»
DarkWolf84 r: my @states; @states.push(1|2|3); @states.perl.say; 10:22
p6eval rakudo 9db2d9: OUTPUT«Array.new(any(1, 2, 3))␤»
tipdbmp r: say "@{[ 1 .. 10]}"; 10:23
p6eval rakudo 9db2d9: OUTPUT«@1 2 3 4 5 6 7 8 9 10␤»
tipdbmp r: use DateTime; 10:25
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Could not find DateTime in any of: /home/p6eval/.perl6/lib, /home/p6eval/nom-inst/lib/parrot/4.4.0-devel/languages/perl6/lib␤»
tipdbmp r: use v5; use DateTime;
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Could not find DateTime in any of: /home/p6eval/.perl6/lib, /home/p6eval/nom-inst/lib/parrot/4.4.0-devel/languages/perl6/lib␤»
moritz tipdbmp: DateTime is built in
r: say DateTime.now
p6eval rakudo 9db2d9: OUTPUT«DateTime.new(year => 2012, month => 8, day => 18, hour => 12, minute => 25, second => 49, timezone => $*TZ)␤»
moritz r: say DateTime.now.Str
p6eval rakudo 9db2d9: OUTPUT«2012-08-18T12:25:56-0200␤»
tipdbmp Oh =). 10:27
tnx
DarkWolf84 r: my @states; @states.push(1|2|3); @states.perl.say;
p6eval rakudo 9db2d9: OUTPUT«Array.new(any(1, 2, 3))␤»
DarkWolf84 r: my @states; @states.push: Any(1|2|3); @states.perl.say;
p6eval rakudo 9db2d9: OUTPUT«No such method 'Any' for invocant of type 'Int'␤ in sub AUTOTHREAD_METHOD at src/gen/CORE.setting:1863␤ in <anon> at src/gen/Metamodel.pm:2296␤ in <anon> at src/gen/BOOTSTRAP.pm:812␤ in any <anon> at src/gen/BOOTSTRAP.pm:809␤ in block at /tmp/sFSqd1wJMb:1␤␤»…
tipdbmp r: say "date: @{[ DateTime.ymd ]} | time: @{[ DateTime.hms ]}" 10:28
p6eval rakudo 9db2d9: OUTPUT«No such method 'ymd' for invocant of type 'DateTime'␤ in block at /tmp/jQOxjG6r0K:1␤␤»
moritz bug. WHere's masak?
diakopter flying
DarkWolf84 r: my @states; @states.push(Any(1|2|3)); @states.perl.say;
p6eval rakudo 9db2d9: OUTPUT«No such method 'Any' for invocant of type 'Int'␤ in sub AUTOTHREAD_METHOD at src/gen/CORE.setting:1863␤ in <anon> at src/gen/Metamodel.pm:2296␤ in <anon> at src/gen/BOOTSTRAP.pm:812␤ in any <anon> at src/gen/BOOTSTRAP.pm:809␤ in block at /tmp/JNiJ8OrzJ7:1␤␤»…
DarkWolf84 Is that a bug? 10:29
r: my @states; @states.push(Any(1,2,3)); @states.perl.say;
p6eval rakudo 9db2d9: OUTPUT«No such method 'Any' for invocant of type 'Parcel'␤ in <anon> at src/gen/BOOTSTRAP.pm:817␤ in <anon> at src/gen/BOOTSTRAP.pm:814␤ in any <anon> at src/gen/BOOTSTRAP.pm:809␤ in block at /tmp/5WFn2sKjTF:1␤␤»
DarkWolf84 r: my @states; @states.push(any(1,2,3)); @states.perl.say; 10:30
p6eval rakudo 9db2d9: OUTPUT«Array.new(any(1, 2, 3))␤»
DarkWolf84 ok
r: my @states; -> Any $s {@states.push $s}.(1|2|3) 10:33
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 2, near [email@hidden.address]
DarkWolf84 r: my @states; -> Any $s { @states.push $s }.(1|2|3); @states.perl.say 10:34
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 2, near [email@hidden.address]
tipdbmp r: say chr 0x00D6; 10:35
p6eval rakudo 9db2d9: OUTPUT«Ö␤»
DarkWolf84 r: my @states; -> Any $s {@states.push $s}.(any(1,2,3))
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 2, near [email@hidden.address]
DarkWolf84 r: my @states; -> Any $s {@states.push: $s}.(1|2|3)
p6eval rakudo 9db2d9: ( no output )
DarkWolf84 r: my @states; -> Any $s {@states.push $s}.(1|2|3); @states.perl.say 10:36
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 2, near [email@hidden.address]
DarkWolf84 r: my @states; -> Any $s {@states.push; $s}.(1|2|3); @states.perl.say 10:36
p6eval rakudo 9db2d9: OUTPUT«Array.new()␤»
DarkWolf84 r: my @states; -> Any $s {@states.push: $s}.(1|2|3); @states.perl.say 10:37
p6eval rakudo 9db2d9: OUTPUT«Array.new(1, 2, 3)␤»
DarkWolf84 uf
it worked
but I don't get what makes a junction flat in that code 10:39
tipdbmp r: say join(" ", map { chr } (ord "\x{1F0A1}" .. ord "\x{1F0DE}"))' 10:45
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 2, near "(ord \"\\x{1"␤»
tipdbmp r: say join(" ", map { chr }, (ord "\x{1F0A1}" .. ord "\x{1F0DE}"))'
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Unrecognized backslash sequence: '\x' at line 2, near "{1F0A1}\" ."␤»
tipdbmp r: say join(" ", map { chr }, (ord 0x1F0A1 .. ord 0x1F0DE))' 10:49
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Confused␤at /tmp/SkkNutuHzS:1␤»
tipdbmp r: say join(" ", map { chr }, (0x1F0A1 .. 0x1F0DE))' 10:50
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Confused␤at /tmp/76g8gs5TFT:1␤»
tipdbmp r: say 0x1 .. 0x5; 10:51
p6eval rakudo 9db2d9: OUTPUT«1..5␤»
tipdbmp r: say 1 .. 5;
p6eval rakudo 9db2d9: OUTPUT«1..5␤»
tipdbmp r: say (1 .. 5);
p6eval rakudo 9db2d9: OUTPUT«1..5␤»
tipdbmp r: say (1 .. 5).join(" ");
p6eval rakudo 9db2d9: OUTPUT«1 2 3 4 5␤»
tipdbmp r: say (0x1 .. 0x5).join(" ");
p6eval rakudo 9db2d9: OUTPUT«1 2 3 4 5␤» 10:52
tipdbmp r: say join(" ", map { $ ** 2}, (1 .. 4))
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Non-declarative sigil is missing its name␤at /tmp/HhqMm8TSWc:1␤»
tipdbmp r: say join(" ", map { $_ ** 2}, (1 .. 4))
p6eval rakudo 9db2d9: OUTPUT«1 4 9 16␤»
tipdbmp r: say join(" ", map { chr }, (0x1F0A1 .. 0x1F0DE))' 10:53
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Confused␤at /tmp/c2HSeHPtzF:1␤»
tipdbmp r: say join(" ", map { chr($_) }, (0x1F0A1 .. 0x1F0DE))' 10:57
p6eval rakudo 9db2d9: OUTPUT«===SORRY!===␤Confused␤at /tmp/cagxL0bRjz:1␤»
tipdbmp What's going on?
topo You have a ' that doesn't belong 11:01
tipdbmp r: say join(" ", map { chr($_) }, (0x1F0A1 .. 0x1F0DE)) 11:03
p6eval rakudo 9db2d9: OUTPUT«🂡 🂢 🂣 🂤 🂥 🂦 🂧 🂨 🂩 🂪 🂫 🂬 🂭 🂮 🂯 🂰 🂱 🂲 🂳 🂴 🂵 🂶 🂷 🂸 🂹 🂺 🂻 🂼 🂽 🂾 🂿 🃀 🃁 🃂 🃃 🃄 🃅 🃆 🃇 🃈 🃉 🃊 🃋 🃌 🃍 🃎 🃏 🃐 🃑 🃒 🃓 🃔 🃕 🃖 🃗 🃘 🃙 🃚 🃛 🃜 🃝 🃞␤»…
tipdbmp Oh
tipdbmp r: say (map { chr($_) }, (0x1F0A1 .. 0x1F0DE)).roll 11:04
p6eval rakudo 9db2d9: OUTPUT«🃒␤»
tipdbmp r: say " @{[ (map { chr($_) }, (0x1F0A1 .. 0x1F0DE)).roll ]} "
p6eval rakudo 9db2d9: OUTPUT« @🃞 ␤»
tipdbmp r: say " ", (map { chr($_) }, (0x1F0A1 .. 0x1F0DE)).roll, " " 11:05
p6eval rakudo 9db2d9: OUTPUT« 🂥 ␤»
tipdbmp r: say " ", (map { chr($_) }, (0x1F0A1 .. 0x1F0DE)).roll, " "
p6eval rakudo 9db2d9: OUTPUT« 🃛 ␤»
tipdbmp r: for 1 .. 11 -> $x, $y, $z { say "$x $y $z" } 11:13
p6eval rakudo 9db2d9: OUTPUT«1 2 3␤4 5 6␤7 8 9␤Not enough positional parameters passed; got 2 but expected 3␤ in block at /tmp/nwY3UJLlAM:1␤␤»
dalek c: 0da2f33 | moritz++ | lib/Pair.pod:
[Pair] elaborate on literals; add X<> anchors
12:03
pmurias does pastie.org/4543888 work with current rakudo? 12:37
benabik r: sub foo($a) { my multi bar($f) { say 1 } ; my multi bar($f, $b) { say 2 } ; &bar } ; say foo(100).perl 12:38
p6eval rakudo 9db2d9: OUTPUT«sub bar(Mu ) { ... }␤»
benabik r: sub foo($a) { my multi bar($f) { say 1 } ; my multi bar($f, $b) { say 2 } ; &bar } ; my &c = foo(1); c(1); c(1,2) 12:39
p6eval rakudo 9db2d9: OUTPUT«1␤2␤»
benabik pmurias: ^^
pmurias thanks, must have been fixed 12:40
tadzik I'm sad to declare panda being completely unsupported on windows. Sorry 12:42
I fail to cooperate with it completely 12:43
pmurias tadzik: anything hard to port to windows, or is just testing there annoying? 12:48
tadzik pmurias: my dev environment stopped working overnight
suddenly I'm unable to git pull, to build rakudo, to build parrot
I'm sorrounded with people who develop on windows daily and it's still hard and confusing 12:49
ah
okay, I'm trying once again
moritz r: sub f(\x) { say x }; f 42 12:51
p6eval rakudo 9db2d9: OUTPUT«42␤»
dalek ar: c4afc58 | pmichaud++ | skel/README:
Change install recommendation for Debian/Ubuntu to want "build-essential" instead of explicit gcc and make. mst++
12:59
pmurias what do nqp hashes take as keys? 13:00
moritz parrot strings 13:01
today's autopun: "can you do that superlativer?" 13:03
pmurias how can I fake object keys?
moritz you can use nqp::where get a memory address
and then use the result as a hash key 13:04
pmurias won't that change during gc?
moritz no, we're not compacting
pmurias ok
dalek c: 95ca006 | moritz++ | type-graph.txt:
[type-graph] update for new inheritance relations, japhb++
13:05
diakopter tadzik: I'd be glad to work on windows compat, just not in the next 2 months; I have a crazy project that's kicking my butt 13:07
tadzik: I have the MSVC/activeperl build environment as well as gcc/strawberry 13:08
dalek kudo/macros-d2: 0512eca | masak++ | src/ (3 files):
intermediate commit

Pushed to help jnthn debug a hang.
13:18
masak morning, #perl6
dalek p/jnthn-debug-macros-d2-on-this: 1be56d4 | masak++ | src/QAST/ (9 files):
intermediate code for debugging

For some reason, this hangs inside src/QAST/Unquote.nqp
13:21
dalek kudo/nom: 2bbe527 | jonathan++ | src/core/IO.pm:
Fix a few more Windows/OS PMC/encoding issues for tadzik++.
13:25
JimmyZ_ 早上好,麦高 13:30
tadzik diakopter: I hope to solve this issues during the YAPC, but it'd be great if there was someone who knows this environment and could keep an eye or submit smoketest results 13:35
dalek nda: 9c4e4cf | tadzik++ | ext/File__Tools/lib/Shell/Command.pm:
Update File::Tools with patches from sergot++
13:51
leont masak: can you send me that link we just discussed? 14:14
tadzik panda now works on windows \o/ 14:36
it's not commited yet
JimmyZ \o/ 14:37
sorear #perl6: know that I am safe and sound in .de 14:39
diakopter how was your airplane experience
now all other flights will seem quite short 14:40
sorear pff. I still want to take a trip to Mars someday. 14:42
2 excellent, 1 tolerable 14:43
pmichaud tadzik++ 14:44
dalek ecza: 7832503 | sorear++ | js/ (2 files):
Start putting in the framework for developing the javascript kernel
15:00
ecza: 4647c66 | sorear++ | js/ (2 files):
Int/String thaw logic and compatible version checking
ecza: 49c157f | sorear++ | js/niecza.js:
First draft of a deser method
ecza: c248dcf | sorear++ | lib/ (3 files):
Preliminary Buf support

Supports encode, decode, and bytes, should be enough for a web server.
pmurias sorear: how do you plan to support coroutines under javascript? 15:02
sorear: for server side i'm think of faking them with fibers in rakudo-js 15:09
dalek nda: 1d9a80a | tadzik++ | / (7 files):
Make panda work on windows. szabgab++ for supplying a windows machine
15:19
gfldex p6: my %h = '1' => 10, '2' => 20; "%1; abc %2;".subst(m:g/'%'(.+?)';'/, -> $m { %h{$m[0].Str} }).say; 15:22
p6eval niecza v19-21-gc86e8e5: OUTPUT«===SORRY!===␤␤Regex modifier g not yet implemented at /tmp/5tXDETFPZw line 1:␤------> > 10, '2' => 20; "%1; abc %2;".subst(m:g⏏/'%'(.+?)';'/, -> $m { %h{$m[0].Str} }).␤␤Unhandled exception: Check failed␤␤ at /home/p6ev…
..rakudo 2bbe52: OUTPUT«No such method 'match' for invocant of type 'Any'␤ in block at /tmp/1ShpqqTmOQ:1␤␤»
gfldex i like nieczas error message much better :)
dalek osystem: 9956d47 | tadzik++ | META.list:
Use MIME::Base64 from moritz++'s repo (it works)
16:08
tadzik argh, that doesn't help 16:11
UncleFester6 tadzik: github.com/ronaldxs/Perl6-MIME-Base64 should work ... 17:31
See also my discussion on #parrot explaining problems with the parrot MIME::Base64 library which make me inclined to write/bring back a pure perl6 implementation that dtr. 17:35
See here irclog.perlgeek.de/parrot/2012-08-18#i_5907630 and further discussion with dukeleto 17:36
japhb tadzik, is panda now fully Windows compatible? 18:27
japhb Module idea: a few methods that figure out the OS-appropriate path for user's home directory, (global and user) settings root, (global and user) settings dir for a project <foo>, etc. Seems like it could go into File-Tools, actually .... 18:34
pmichaud rn: my @a = 1,2,3; my $s := @a; say $s =:= @a; 19:47
p6eval niecza v19-25-gc248dcf: OUTPUT«False␤»
..rakudo 2bbe52: OUTPUT«True␤»
jnthn japhb: afaik, it works on Windows fully now 19:51
and a couple of Rakudo issues fixe don the way :)
sorear pmurias: niecza/js, if it goes anywhere, will be mostly stackless 19:54
pmichaud rn: my @a = 1,2,3; my $s := @a; my $t := @a; say $s =:= $t; 20:00
p6eval rakudo 2bbe52, niecza v19-25-gc248dcf: OUTPUT«True␤»
TimToady (mst) he left his laptop unattended but you guys are awesome - somebody tell him please 20:04
diakopter was that mst typing as TimToady or TimToady typing about mst? 20:11
moritz mst typing on TimToady's machine, afaict
moritz nr: my @a = 1, 2, 3; my $s := @a; say $s =:= @a 20:14
p6eval niecza v19-25-gc248dcf: OUTPUT«False␤»
..rakudo 2bbe52: OUTPUT«True␤»
pmichaud rn: my @a = 1,2,3; my $s := @a; say $s =:= @a; 20:16
p6eval niecza v19-25-gc248dcf: OUTPUT«False␤»
..rakudo 2bbe52: OUTPUT«True␤»
moritz tadzik: MIME::Base64 merged 20:17
pmichaud rn: my $s = [1,2,3]; my @a := $s; say $s =:= @a; 20:18
p6eval rakudo 2bbe52: OUTPUT«False␤»
..niecza v19-25-gc248dcf: OUTPUT«True␤»
jeffreykegler I have a question about S05's discussion of <~~> 20:20
Quoth S05: <~~> "is implicitly anchored to the end of the operator as any other subrule would be. Despite the fact that the outer rule scans the string, the inner call to it does not." 20:21
I believe this is trying to say that the inner rule does not restart the scan
TimToady or continue it
moritz it basically means that <~~> is implicitly anchored
jeffreykegler "to the end of the operator"? 20:22
Does operator here mean the "<~~>"
tadzik japhb: yes, I claim so 20:23
japhb: File::HomeDir from Perl 5, and yes, we need that methinks
jeffreykegler My problem is that my interpretation of the phrase "implicityly anchored" either has it stating the obvious, or has it saying something completely mysterious 20:24
* "implicityly" -> implicitly 20:25
And the second statement that the inner call "does not [scan the string]", I simply cannot make sense of, unless I read "scan" as "rescan" or "restart the scan"
sorear n: my $s = [1,2,3]; my @a := $s; say +[@a] # seems pmichaud found an actual "bug" 20:26
p6eval niecza v19-25-gc248dcf: OUTPUT«1␤»
sorear for values of "bug" where it disageees with my ideas of how this should work, anyway
moritz jeffreykegler: "scanning the string" means "searching for where the regex starts to match" 20:28
jeffreykegler: and it doesn't do that, because it's anchored 20:29
and yes, that's completely obvious
jeffreykegler moritz: Aha!
TimToady when you /foo/ it's implicitly /^ .*? foo <~~>/; it's just trying to say there's no implicit .*? in that case, so it's equivalen to /foofoo.../ not /foo.*?foo.../
sorear n: my $s = [1,2,3]; my @a := $s; say @a.plrl ; say $s.perl
p6eval niecza v19-25-gc248dcf: OUTPUT«Unhandled exception: Unable to resolve method plrl in type Array␤ at /tmp/_c5IhcT63h line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3946 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3947 (module-CORE @ 567) ␤ at /home…
jeffreykegler OK, now I understand
sorear n: my $s = [1,2,3]; my @a := $s; say @a.perl ; say $s.perl
p6eval niecza v19-25-gc248dcf: OUTPUT«[1, 2, 3]␤[1, 2, 3]␤»
moritz note that <~~> is pretty low on our priority list
sorear NewBoundVar is not doing its job 20:30
jeffreykegler In my Marpa-based implementation of the Perl 6 syntax, <~~> is high on the priority list, and I wanted to make sure I understood what I was trying to implement 20:31
moritz ok
nr: say so m/foo<~~>/ for 'foofoo', 'foo a foo'
p6eval rakudo 2bbe52: OUTPUT«False␤False␤»
..niecza v19-25-gc248dcf: OUTPUT«===SORRY!===␤␤Action method assertion:sym<~~> not yet implemented at /tmp/9c8t0PxELr line 1:␤------> say so m/foo<~~⏏>/ for 'foofoo', 'foo a foo'␤␤Unhandled exception: Unable to resolve method oplift in type Any␤ at /h…
moritz huh, why does rakudo fails for the first one 20:32
moritz oh 20:33
masak quietfanatic! \o/
moritz nr: say so m/foo [<~~> | <?> ]/ for 'foofoo', 'foo a foo'
p6eval niecza v19-25-gc248dcf: OUTPUT«===SORRY!===␤␤Action method assertion:sym<~~> not yet implemented at /tmp/xb9Eoezhn0 line 1:␤------> say so m/foo [<~~⏏> | <?> ]/ for 'foofoo', 'foo a foo'␤␤Unhandled exception: Unable to resolve method oplift in type A…
..rakudo 2bbe52: OUTPUT«True␤True␤»
quietfanatic hi masak
masak moritz: that shows nothing, it just takes the <?> branch both times... :)
moritz masak: I just realized, yes 20:34
quietfanatic heh, I intended to just view the logs but I instinctively logged onto the webchat.
moritz nr: say so m/foo [<~~> | <?> ] $/ for 'foofoo', 'foo a foo'
p6eval rakudo 2bbe52: OUTPUT«True␤True␤»
..niecza v19-25-gc248dcf: OUTPUT«===SORRY!===␤␤Action method assertion:sym<~~> not yet implemented at /tmp/U5rZvznGpJ line 1:␤------> say so m/foo [<~~⏏> | <?> ] $/ for 'foofoo', 'foo a foo'␤␤Unhandled exception: Unable to resolve method oplift in type…
colomon niecza/js, eh?
masak moritz: seems to me <~~> is either NYI, or simply crazily I. 20:36
moritz nr: say so m/^foo [<~~> | <?> ] $/ for 'foofoo', 'foo a foo'
p6eval niecza v19-25-gc248dcf: OUTPUT«===SORRY!===␤␤Action method assertion:sym<~~> not yet implemented at /tmp/lyP6cIOXUv line 1:␤------> say so m/^foo [<~~⏏> | <?> ] $/ for 'foofoo', 'foo a foo'␤␤Unhandled exception: Unable to resolve method oplift in typ…
..rakudo 2bbe52: OUTPUT«False␤False␤»
jeffreykegler moritz: Marpa loves to recurse, so <~~> is a natural in that context 20:37
moritz r: say so m/^foo <~~>? $/ for 'foofoo', 'foo a foo'
p6eval rakudo 2bbe52: OUTPUT«False␤False␤»
moritz masak: I think we have a passing test for it.
r: use Test; plan 1; ok('1.2.' ~~ /\d+\. <~~> | <?>/, 'recursive regex using whole pattern')
p6eval rakudo 2bbe52: OUTPUT«1..1␤ok 1 - recursive regex using whole pattern␤»
moritz meh
it simply scopes the | <?> to the whole regex 20:38
sorear colomon: little somthing I was playing with on the plane. idea, how hard to get _full_ p6 (no matter how slow) in a browser context for try.perl6
colomon sorear++
sorear colomon: not sure I'll do more with it for quite a whhile. other priorities have been raised.
colomon well, you still have a flight home. 20:39
pmichaud rn: my $x := 3; my $y := $x; say $x =:= $y;
p6eval rakudo 2bbe52, niecza v19-25-gc248dcf: OUTPUT«True␤»
colomon though now you've got me curious about the other priorities, if you can say anything about them...
tadzik hah, LWP::SImple's broken itself 20:40
No such method 'bytes' for invocant of type 'Str'
did we change the socket api recently?
sorear we did change Str recently 20:41
moritz right, Str.bytes is gone
.oO( nobody reads deprecation notices anyway :( )
20:42
masak we should put them in IGNOREME or something. 20:50
tadzik SECRET_COREOPS_NOTES_DO_NOT_READ
sorear am I allowed to tell colomon about our secret priorities? 20:51
dalek ecza: 025a6e6 | sorear++ | lib/CodeGen.cs:
Rw bindings to lists were being mishandled, pmichaud++
20:53
masak sorear: I... I think so.
colomon \o/
masak this meeting is not very sekkrit.
jnthn First rule of sektrit meeting is not to talk about sekrit meeting :P 20:54
pmichaud n: my @a; say @a.defined;
p6eval niecza v19-25-gc248dcf: OUTPUT«True␤»
masak n: my &c; say &c.defined
p6eval niecza v19-25-gc248dcf: OUTPUT«False␤»
masak n: my &c; &c()
p6eval niecza v19-25-gc248dcf: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Any␤ at /tmp/O85uy0v6oi line 1 (mainline @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3946 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3947 (module-CORE @ 567…
masak n: my &c; say &c ~~ Callable 20:55
p6eval niecza v19-25-gc248dcf: OUTPUT«False␤»
masak sorear: ^
moritz r: my &c; say &c ~~ Callable 20:56
p6eval rakudo 2bbe52: OUTPUT«False␤»
moritz masak: ^
jnthn Yeah, that's probably wrong.
masak moritz: :) 20:58
it's interesting that $ and & values start their lives as undefined, but @ and % values do not.
UncleFester6 my fork of LWP::Simple should work github.com/ronaldxs/perl6-lwp-simple 20:59
masak I'm guessing pmichaud++ did the eval above because he's thinking about these matters again.
colomon sorear: I promise not to tell anyone anything they shouldn't know.... 21:00
tadzik UncleFester6: trying 21:02
UncleFester6 I asked a couple of people for feedback and am still waiting ... so if anyone wants to look and get back to me - thanks
pmichaud masak: you're correct. and discussing things with TimToady++ and sorear++ 21:05
and jnthn++
I'm afk for a bit for a walk
tipdbmp r: say "@{[ DateTime.now.ymd ]}"; 21:06
p6eval rakudo 2bbe52: OUTPUT«No such method 'ymd' for invocant of type 'DateTime'␤ in block at /tmp/qfoAzUGEQe:1␤␤»
tipdbmp r: say "@{[ DateTime.now.year ]}"; 21:07
p6eval rakudo 2bbe52: OUTPUT«@2012␤»
tipdbmp r: say "@{[ DateTime.now.month ]}";
p6eval rakudo 2bbe52: OUTPUT«@8␤»
tipdbmp r: say "@{[ DateTime.now.ymd(".") ]}";
p6eval rakudo 2bbe52: OUTPUT«No such method 'ymd' for invocant of type 'DateTime'␤ in block at /tmp/cmMPKirmss:1␤␤»
masak pmichaud: discussing things here briefly with moritz++, we seem to feel that too much autoviv magic is not a good thing. 21:08
more precisely, autoviv makes sense one or more levels down in a data structure, but it makes much less sense in an actual variable container.
not just writes have to vivify, but also reads. and that's can-of-worms problematic. 21:09
pmichaud masak: I'm leaning that way also. moritz++'s arguments are fairly persuasive.
masak aye.
I've been leaning both ways at different times with this question.
tadzik phenny: tell UncleFester6 your LWP::Simple doesn't seem to build for me: "Serialization Error: Unimplemented object type 'ByteBuffer' passed to write_ref" 21:18
phenny tadzik: I'll pass that on when UncleFester6 is around.
tadzik phenny: thank you darling
sorear colomon: so Liz and Wendy gathered two dozen of us in Perl for a small meeting to discuss stuff related to the future of Perl 5 and Perl 6 and making it work out 21:25
colomon oooo, interesting 21:26
sorear and when I say Perl I'm talking about a German town of 7,000 within walking distance of both .fr and .lu 21:27
pmurias sorear: no matter how slow: why not try enscripten 21:56
on mono 21:57
colomon is dying to get the full story on this meeting of the Perls, but reluctantly recognizes it might not be the best time to talk about it. Here's hoping some sort of cunning plan was worked out! 21:58
pmurias sorear: a google search seems to imply using enscripten for that might be not worth the trouble 22:02
sorear I care about size to a much greater extent than speed 22:08
jeffreykegler A question about implementing precedence in Perl 6 syntax 23:26
I take it that the proper way to do things is the one described in S06 23:27
The tighter/looser/equiv traits and all that
And that the other mechanisms in STD.pm are just scaffolding to get things going 23:28
dalek p: 6255819 | pmichaud++ | src/QAST/Operations.nqp:
Enable parsing of :nohandler in QAST::Op while/etc loops.
23:50
p: b1d897d | pmichaud++ | src/QAST/Operations.nqp:
Add :nohandler option to PAST::Op loop nodes.