»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
timotimo right. but do note the "you get two pairs per iteration" thing when you leave out the parenthesis 00:00
sena_kun Ah, sorry, I mistyped. s/.pairs/.kv/
timotimo ah, yes 00:01
well, after you've sorted, you're at pairs already
sena_kun m: %a = :1one, :2two; say %a.sort;
camelia rakudo-moar c587b9: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '%a' is not declared␤at <tmp>:1␤------> 3<BOL>7⏏5%a = :1one, :2two; say %a.sort;␤»
sena_kun m: my %a = :1one, :2two; say %a.sort;
camelia rakudo-moar c587b9: OUTPUT«(one => 1 two => 2)␤»
sena_kun m: my %a = :1one, :2two; say %a.sort[0]; 00:02
camelia rakudo-moar c587b9: OUTPUT«one => 1␤»
sena_kun m: my %a = :1one, :2two; for %a.sort -> $a, $b {};
camelia ( no output )
sena_kun Ah, perfect.
timotimo um, no, not perfect
sena_kun No, it's not.
timotimo m: my %a = :1one, :2two, :3three; for %a.sort -> $a, $b {}; 00:03
camelia rakudo-moar c587b9: OUTPUT«Too few positionals passed; expected 2 arguments but got 1␤ in block <unit> at <tmp> line 1␤␤»
00:05 MasterDuke joined 00:06 cpage_ joined
sena_kun I wonder if it worked back there. 00:10
00:10 cpage_ left
dalek href="https://modules.perl6.org/bit-rot:">modules.perl6.org/bit-rot: 05b5d4f | (Zoffix Znet)++ | / (19 files):
Switch to new ::AssetPack pipe interface
00:11
timotimo possibly untested ;) 00:12
sena_kun It can be. Perhaps, it'd better to rewrite it with .pairs.
00:13 cpage_ joined
sena_kun Ah, stop. 00:13
00:13 cdg left, pierre_ joined
sena_kun m: y %a = one => 1, two => 2; for %a.sort.kv -> Int $a, $b { say $a, $b }; 00:14
camelia rakudo-moar c587b9: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unsupported use of y///; in Perl 6 please use tr///␤at <tmp>:1␤------> 3y7⏏5 %a = one => 1, two => 2; for %a.sort.kv␤»
sena_kun m: %a = one => 1, two => 2; for %a.sort.kv -> Int $a, $b { say $a, $b };
camelia rakudo-moar c587b9: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '%a' is not declared␤at <tmp>:1␤------> 3<BOL>7⏏5%a = one => 1, two => 2; for %a.sort.kv ␤»
sena_kun m: my %a = one => 1, two => 2; for %a.sort.kv -> Int $a, $b { say $a, $b };
camelia rakudo-moar c587b9: OUTPUT«0one => 1␤1two => 2␤»
00:14 cdg joined
sena_kun Neat. Thanks, gfldex, timotimo! 00:14
dalek c: 4d0a4d5 | (Wenzel P. P. Peppmeyer)++ | doc/Language/functions.pod6:
doc sub USAGE
00:15
c: a44b6cb | (Wenzel P. P. Peppmeyer)++ | util/list-missing-methods.p6:
add USAGE
sena_kun Argh. 00:16
timotimo do watch out, though
for that eval you get the index in the iteration in your $a and the key-value-Pair object in your $b 00:17
sena_kun Yeah, I noticed it just a moment ago. Probably a bit sleepy.
00:17 mcmillhj left, Nex6 left
timotimo i feel sleepy, too 00:18
00:18 cdg left
gfldex m: my %h = a => 1; %h.append('b', 2, 'c', 3); %h.append(d => 4); say %h; 00:22
camelia rakudo-moar c587b9: OUTPUT«{a => 1, b => 2, c => 3}␤»
gfldex should append treat %_ special? This will cause confusion or bugs. 00:23
TimToady m: my %h = a => 1; %h.append('b', 2, 'c', 3); %h.append((d => 4)); say %h; 00:25
camelia rakudo-moar c587b9: OUTPUT«{a => 1, b => 2, c => 3, d => 4}␤»
gfldex m: my %h = a => 1; %h.append('b', 2, 'c', 3); %h.append({d => 4}); say %h;
camelia rakudo-moar c587b9: OUTPUT«{a => 1, b => 2, c => 3, d => 4}␤»
gfldex thinking about it, it should not just work but warn
TimToady well, do we ever want to allow an append with an option? 00:26
it kinda comes out to the unrecognized option on a method thing again
00:27 BenGoldberg joined
sena_kun We have a little warning about this in the docs. Perhaps it can be described as a "trap" on appropriate page. 00:27
gfldex %_ can be passed on when wrapping or assuming (if assuming would work on methods)
but I see little use for that outside of constructors 00:28
Hash is kind of a base class and wont pass anything on, at least in .append. So warning their would make sense.
dalek ateverable: 60ebbcc | (Daniel Green)++ | / (4 files):
Add short aliases for all the bots
00:30
00:31 cpage joined, mr-foobar joined 00:37 canopus left
BenGoldberg If we added a .assuming to Metamodel::ClassHOW, you could probably do my $curried = $obj.^assuming( "methodname", ... ); $obj.$curried( ... ); 00:38
00:42 canopus joined
dalek c: 2f88c5e | (Wenzel P. P. Peppmeyer)++ | doc/Type/Hash.pod6:
doc Hash.append
00:50
c: 52d9df9 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Hash.pod6:
uniformify method definition
c: cfeafef | (Wenzel P. P. Peppmeyer)++ | util/list-missing-methods.p6:
Match doesn't coerce to Str by default
00:52 mvorg left
dalek c: fdbd478 | Altai-man++ | doc/Type/ (6 files):
make examples compile fir Hash, MixHash, Pair, Pod::Item, Proc and Promise types
00:58
sena_kun >fir
Oh.
dalek c: 77be84d | (Wenzel P. P. Peppmeyer)++ | util/list-missing-methods.p6:
Set and array containers don't mix so well
00:59
href="https://modules.perl6.org/bit-rot:">modules.perl6.org/bit-rot: 72c3ff6 | (Zoffix Znet)++ | / (6 files):
If the mountain won't come to Muhammad then Muhammad must...

  ... steal sprite generating code from now-deprecated
Mojolicious::Plugin::AssetPack::Handler::Sprites and store it in the repo as module.
01:01
01:04 Actualeyes joined
dalek c: 669b7c9 | (Wenzel P. P. Peppmeyer)++ | util/list-missing-methods.p6:
drop 'Defined as:' from detection. Less false positives that say.
01:08
href="https://modules.perl6.org/bit-rot:">modules.perl6.org/bit-rot: 7b62fe2 | (Zoffix Znet)++ | / (2 files):
Update docs to use newer --restart-app switch
01:09
gfldex output of util/list-missing-methods.p6 looks quite good now
sena_kun gfldex++
dalek c: b8691e8 | Altai-man++ | doc/Type/ (6 files):
Make some more examples compile, the easy ones here
01:11
gfldex now AlexDaniel can enter the stage and add a few 100 issues :)
sena_kun gfldex, noooooooo 01:12
gfldex i need to add a way to ignore methods that we don't want to doc 01:13
given I can implement that in Perl 6, that can't be hard. :)
sena_kun Actually, I plan to do a Big Review after we finish compileable examples work. I'm trying to do things a bit quickly here, but I saw some, um, really bad pages and I want to list them all(and learn the docs entirely, what an evil plan). It will be the next todo for me, I suppose. And caching. And offline version of docs. Okay, it's already 4 a.m. here, so I'm going to bed. Good night, #perl6! 01:17
01:19 rpburkholder left
sena_kun About the issues number... There are many pragma-related issues, many of "document this and that" issues, etc. There are not so many big and important issues like dead links and such, so we should be okay with it somehow. 01:20
\quit
Ah.
01:20 grondilu left, sena_kun left
AlexDaniel gfldex: why me? :) 01:21
gfldex you are real good at adding issues on github. Any as they say: If you are good at digging trenches, you get a bigger shovel. 01:23
m: my \factory = gather for 1..10 { say 'eager'; take .Str => .Int * 2 }; say factory.is-lazy; say factory[0]; 01:27
camelia rakudo-moar c587b9: OUTPUT«False␤eager␤1 => 2␤»
gfldex i did think that it is lazy
01:28 bob777 joined
TimToady is-lazy really means something more like "known arbitrarily large" 01:29
BenGoldberg m: my \almost-surely-finite = gather for ^Inf { last if Bool.pick; .take }; almost-surely-finite.is-lazy.say; almost-surely-finite.say; 01:35
camelia rakudo-moar c587b9: OUTPUT«False␤()␤»
BenGoldberg m: my \almost-surely-finite = gather for ^Inf { last if Bool.pick; .take }; almost-surely-finite.is-lazy.say; almost-surely-finite[^10].say;
camelia rakudo-moar c587b9: OUTPUT«False␤(Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil)␤»
TimToady so more like, "we know it must be treated lazily"
BenGoldberg m: my \almost-surely-finite = gather for ^Inf { last if Bool.pick; .take }; almost-surely-finite.is-lazy.say; almost-surely-finite[^10].say;
camelia rakudo-moar c587b9: OUTPUT«False␤(Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil)␤»
TimToady you need 'lazy gather' to have that True
mst TimToady: so if one imagines it as 'must-lazy' one won't go too far wrong?
BenGoldberg m: my \almost-surely-finite = gather for ^Inf { "a".take; last if Bool.pick; .take }; almost-surely-finite.is-lazy.say; almost-surely-finite[^10].say; 01:36
camelia rakudo-moar c587b9: OUTPUT«False␤(a 0 a 1 a Nil Nil Nil Nil Nil)␤»
TimToady mst: nodnod 01:37
01:38 kid511 is now known as kid51
dalek href="https://modules.perl6.org/bit-rot:">modules.perl6.org/bit-rot: d78f41c | (Zoffix Znet)++ | Build.PL:
Bump Test::Mojo::Role::ElementCounter version
01:39
href="https://modules.perl6.org/bit-rot:">modules.perl6.org/bit-rot: 10ef84b | (Zoffix Znet)++ | / (5 files):
Fix bit rot in test suit

Part of #60
01:46
modules.perl6.org: 3b57edf | (Zoffix Znet)++ | Build.PL: 01:52
modules.perl6.org: Update prereqs
modules.perl6.org:
modules.perl6.org: - Bump for major releases of Mojolicious and ::AssetPack
modules.perl6.org: - Remove now-deprecated Mojolicious::Plugin::Bootstrap3
01:52 dalek left
unmatched} ha-ha! 01:53
01:53 dalek joined
unmatched} But it was this: github.com/perl6/modules.perl6.org/pull/61 01:53
01:53 ChanServ sets mode: +v dalek
unmatched} I'm done with bit rot stuff 01:54
You know what dalek needs? Perl 6 rewrite :} 02:04
02:09 jcallen_ is now known as jcallen 02:12 pierre_ left 02:18 pierre_ joined
dj_goku is there a way to compare a matrix? 02:18
02:22 noganex_ joined 02:23 pierre_ left 02:25 noganex left, pierre_ joined, SmokeMachine____ left 02:26 SmokeMachine____ joined 02:27 pduh_ joined
gfldex m: say ?( ((1,2),(3,4)) »==« ((1,2),(3,4)) ).flat.all, ?( ((5,2),(3,4)) »==« ((1,2),(3,4)) ).flat.all 02:28
camelia rakudo-moar c587b9: OUTPUT«TrueFalse␤»
gfldex dj_goku: ^^^
m: say [&&] ( flat ((5,2),(3,4)) »==« ((1,2),(3,4)) ) 02:30
camelia rakudo-moar c587b9: OUTPUT«False␤»
unmatched} gfldex++ 02:31
m: say ((1,2),(3,4)) eqv ((1,2),(3,4)); say ((5,2),(3,4)) eqv ((1,2),(3,4)) 02:32
camelia rakudo-moar c587b9: OUTPUT«True␤False␤»
dj_goku m: my @a[2,2]; @a[0,0] = 'test'; my @b[2,2]; @b[0,0] = 'test'; say @b ~~ @a;
camelia rakudo-moar c587b9: OUTPUT«Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at <tmp> line 1␤␤»
dj_goku m: my @a[2,2]; @a[0,0] = 'test'; my @b[2,2]; @b[0,0] = 'test'; say @b[0,0] ~~ @a[0,0]; 02:33
TimToady m: say ((1,2),(3,4)) eqv ((1,2),(3,4)), ((5,2),(3,4)) eqv ((1,2),(3,4))
camelia rakudo-moar c587b9: OUTPUT«Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at <tmp> line 1␤␤»
rakudo-moar c587b9: OUTPUT«TrueFalse␤»
timotimo dj_goku: we separate coordinates in dimensions with ; rather than ,
unmatched} m: my @a[2;2]; @a[0;0] = 'test'; my @b[2;2]; @b[0;0] = 'test'; say @b[0;0] ~~ @a[0;0]; 02:34
camelia rakudo-moar c587b9: OUTPUT«True␤»
02:34 pduh_ left, wamba joined
TimToady m: my @a[2;2]; @a[0;0] = 'test'; my @b[2;2]; @b[0;0] = 'test'; say @b eqv @a; 02:34
camelia rakudo-moar c587b9: OUTPUT«Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at <tmp> line 1␤␤»
TimToady say wot? 02:35
02:35 pduh_ joined 02:36 pduh_ left, pduh_ joined 02:38 pduh_ left
dj_goku m: my @a[2;2]; @a[0;0] = 'test'; my @array = (['test', Any], [Any, Any]); say @a eqv @array; 02:38
camelia rakudo-moar c587b9: OUTPUT«False␤»
dj_goku m: my @a[2;2]; @a[0;0] = 'test'; my @array = (('test', Any), (Any, Any)); say @a eqv @array;
camelia rakudo-moar c587b9: OUTPUT«False␤»
dj_goku m: my @a[2;2]; @a[0;0] = 'test'; my @array = (('test', Any), (Any, Any)); dd @a; dd @array; 02:39
camelia rakudo-moar c587b9: OUTPUT«Array.new(:shape(2, 2), ["test", Any], [Any, Any])␤Array @array = [("test", Any), (Any, Any)]␤»
02:39 mcmillhj joined
dj_goku m: my @a[2;2]; @a[0;0] = 'test'; my @array = (('test', Any), (Any, Any)); say @a[0;0] ~~ @array[0;0]; 02:40
camelia rakudo-moar c587b9: OUTPUT«True␤»
dj_goku m: my @a[2;2]; @a[0;0] = 'test'; my @array = (('test', Any), (Any, Any)); say @a[0;1] ~~ @array[0;1];
camelia rakudo-moar c587b9: OUTPUT«True␤»
dj_goku m: my @a[2;2]; @a[0;0] = 'test'; my @array = (('test', Any), (Any, Any)); say @a[1;1] ~~ @array[1;1];
camelia rakudo-moar c587b9: OUTPUT«True␤»
TimToady m: my @a[2;2]; @a[0;0] = 'test'; my @b[2;2]; @b[0;0] = 'test'; say @b[*;*] eqv @a[*;*]; 02:41
camelia rakudo-moar c587b9: OUTPUT«Partially dimensioned views of arrays not yet implemented. Sorry. ␤ in block <unit> at <tmp> line 1␤␤»
dj_goku m: my @a[2;2]; @a[0;0] = 'test'; my @array = (('test', Any), (Any, Any)); say @a[0;0] ~~ @array[0;0]; @a[0;0] = 'testy'; say @a[0;0] ~~ @array[0;0];
camelia rakudo-moar c587b9: OUTPUT«True␤False␤»
02:42 pduh joined 02:44 kid51 left
dj_goku TimToady: so did I find a bug? 02:44
02:44 mcmillhj left
dalek c: 0cfc940 | (Wenzel P. P. Peppmeyer)++ | util/ (2 files):
add file with types/methods to be ignored
02:45
unmatched} dj_goku: to me looks like either a bug or NIY. Worth reporting IMO 02:50
dj_goku ok, I haven't ever done this before so. will search for what info is needed. 02:52
02:53 pduh left
unmatched} "this" is what? Bug reporting? 02:54
huggable: rakudobug
huggable unmatched}, [email@hidden.address] or use perl6 query on rt.perl.org ; see github.com/rakudo/rakudo/#reporting-bugs
02:55 mithaldu_ left, SmokeMachine____ left, kipd left
unmatched} dj_goku: ^ there. Just include the code snippet (can copy-paste from IRC, and include camelia's output). Then include some description of what you expected and it's also useful to include the chat log URL: irclog.perlgeek.de/perl6/2016-08-12#i_13009730 02:55
02:55 mithaldu_ joined, notbenh_ joined
dj_goku alright cool. 02:56
02:57 SmokeMachine____ joined
dalek href="https://modules.perl6.org:">modules.perl6.org: 42e215b | (Zoffix Znet)++ | lib/ModulesPerl6.pm:
Remove extraneous whitespace
02:58
02:58 kipd joined
dalek c: 6597c26 | (Wenzel P. P. Peppmeyer)++ | util/ignored-methods.txt:
ignore Dateish::IO
03:04
c: 3843813 | (Wenzel P. P. Peppmeyer)++ | util/ignored-methods.txt:
Dateish::earlier is doced in Date
gfldex m: my SetHash $sh .= new; $sh.push('a'); 03:13
camelia rakudo-moar c587b9: OUTPUT«Cannot resolve caller push(SetHash: Str); none of these signatures match:␤ (Any:U \SELF: |values is raw)␤ in block <unit> at <tmp> line 1␤␤»
gfldex Any.push tries to call SetHash.push 03:14
does that qualify as a bug?
unmatched} s: Any, push 03:15
SourceBaby unmatched}, Something's wrong: ␤ERR: ===SORRY!=== Error while compiling -e␤Calling push() will never work with declared signature (\a, |elems is raw)␤at -e:6␤------> put sourcery( Any, ⏏push )[1];␤
unmatched} s: Any, "push"
SourceBaby unmatched}, Something's wrong: ␤ERR: Type check failed in binding to &code; expected Callable but got Method+{<anon|71402672>} (Method+{<anon|7140267...)␤ in sub do-sourcery at /home/zoffix/services/lib/CoreHackers-Sourcery/lib/CoreHackers/Sourcery.pm6 (CoreHackers::Sourcery) line 42␤ in sub sourcery at /home/zoffix/services/lib/CoreHackers-Sourcery/lib/CoreHackers/Sourcery.pm6 (CoreHackers::Sourcery) line 33␤ in block <unit> at -e li
dj_goku m: say [[1,2]] ~~ [[1,2]];
camelia rakudo-moar c587b9: OUTPUT«True␤»
unmatched} 0.o
dj_goku m: say [[1,2]] eqv [[1,2]];
camelia rakudo-moar c587b9: OUTPUT«True␤»
dj_goku m: say [[1,2]] ~~ [[1,1]];
camelia rakudo-moar c587b9: OUTPUT«False␤»
dj_goku m: say [[1,2]] eqv [[1,1]];
camelia rakudo-moar c587b9: OUTPUT«False␤»
unmatched} m: say [[1,2],] eqv [[1,1],];
camelia rakudo-moar c587b9: OUTPUT«False␤»
unmatched} hm, wtf 03:16
dj_goku m: say [[1,2],] eqv [[1,2],];
camelia rakudo-moar c587b9: OUTPUT«True␤»
unmatched} s: Any, "push", \()
SourceBaby unmatched}, Sauce is at github.com/rakudo/rakudo/blob/c587...ny.pm#L180
dj_goku second one is [[1,1],] not [[1,2],] 03:17
BenGoldberg s: Any.push: ()
SourceBaby BenGoldberg, Something's wrong: ␤ERR: Cannot modify an immutable Any␤ in block <unit> at -e line 6␤␤
BenGoldberg s: $.push: () 03:18
SourceBaby BenGoldberg, Something's wrong: ␤ERR: ===SORRY!=== Error while compiling -e␤Variable $.push used where no 'self' is available␤at -e:6␤------> put sourcery( $.push⏏: () )[1];␤ expecting any of:␤ argument list␤ term␤
BenGoldberg s: (my @a).push: (); 03:19
SourceBaby BenGoldberg, Ehhh... I'm too scared to run that code.
BenGoldberg s: my @a.push: ();
SourceBaby BenGoldberg, Ehhh... I'm too scared to run that code.
BenGoldberg s: my @a;
SourceBaby BenGoldberg, Ehhh... I'm too scared to run that code.
unmatched} BenGoldberg: it's worth reading the help of the bot before feeding it garbage
BenGoldberg SourceBaby, help
SourceBaby BenGoldberg, Use s: trigger with args to give to sourcery sub. e.g. s: Int, 'base'. See modules.perl6.org/dist/CoreHackers::Sourcery
unmatched} gfldex: isn't it calling Any.push with the SetHash as invocant and fails because there's no such candidate? 03:20
03:20 cpage_ left
unmatched} s: SetHash, "push" 03:21
SourceBaby unmatched}, Something's wrong: ␤ERR: Type check failed in binding to &code; expected Callable but got Method+{<anon|71402672>} (Method+{<anon|7140267...)␤ in sub do-sourcery at /home/zoffix/services/lib/CoreHackers-Sourcery/lib/CoreHackers/Sourcery.pm6 (CoreHackers::Sourcery) line 42␤ in sub sourcery at /home/zoffix/services/lib/CoreHackers-Sourcery/lib/CoreHackers/Sourcery.pm6 (CoreHackers::Sourcery) line 33␤ in block <unit> at -e li
unmatched} wtf...
BenGoldberg s: &say
SourceBaby BenGoldberg, Sauce is at github.com/rakudo/rakudo/blob/c587...ors.pm#L20
unmatched} s: SetHash, "push", \()
SourceBaby unmatched}, Sauce is at github.com/rakudo/rakudo/blob/c587...ny.pm#L180
BenGoldberg s: &say, \(Int); 03:22
SourceBaby BenGoldberg, Ehhh... I'm too scared to run that code.
BenGoldberg s: &say, \("foo");
SourceBaby BenGoldberg, Ehhh... I'm too scared to run that code.
unmatched} BenGoldberg: no ending semicolon
BenGoldberg s: &say, \("foo") 03:23
SourceBaby BenGoldberg, Sauce is at github.com/rakudo/rakudo/blob/c587...ors.pm#L22
BenGoldberg SourceBaby, You are too finicky :P
s: &say, \(Int) 03:24
SourceBaby BenGoldberg, Sauce is at github.com/rakudo/rakudo/blob/c587...ors.pm#L27
unmatched} m: say Any.^can("push")[0] ~~ Callable; 03:25
camelia rakudo-moar c587b9: OUTPUT«False␤»
unmatched} bisect: m: say Any.^can("push")[0] ~~ Callable;
bisectable unmatched}: On both starting points (good=2015.12 bad=c587b9d) the exit code is 0 and the output is identical as well
unmatched}: Output on both points: False
unmatched} really...
m: say Any.^can("push")[0](42)
camelia rakudo-moar c587b9: OUTPUT«Cannot resolve caller push(Int: ); none of these signatures match:␤ (Any:U \SELF: |values is raw)␤ in block <unit> at <tmp> line 1␤␤»
unmatched} m: my @a; say Any.^can("push")[0](@a,42)
camelia rakudo-moar c587b9: OUTPUT«Cannot resolve caller push(Array: Int); none of these signatures match:␤ (Any:U \SELF: |values is raw)␤ in block <unit> at <tmp> line 1␤␤»
unmatched} m: say Any.^can("push")[0] 03:26
camelia rakudo-moar c587b9: OUTPUT«Method+{<anon|42801984>}.new␤»
unmatched} Why isn't that a Callable?
dj_goku unmatched}: thanks I open this rt bug: 128904
unmatched} dj_goku++
m: say Any.^can("push")[0].^mro
camelia rakudo-moar c587b9: OUTPUT«((Method+{<anon|42801984>}) (Method) (Routine) (Block) (Code) (Any) (Mu))␤»
unmatched} m: say Any.^can("say")[0].^mro
camelia rakudo-moar c587b9: OUTPUT«((Method) (Routine) (Block) (Code) (Any) (Mu))␤»
dj_goku unmatched}: I have a rt.perl.org bitcard account but can't see anything or open tickets. 03:27
unmatched} m: say Any.^can("say")[0] ~~ Callable
camelia rakudo-moar c587b9: OUTPUT«True␤»
unmatched} dj_goku: talk to [Coke] about that. There's some way to contact admins.
dj_goku .tell [Coke] unmatched} told me to contact you about bitcard and rt.perl.org about open tickets. 03:28
yoleaux dj_goku: I'll pass your message to [Coke].
unmatched} m: sub (&thing) {}( Any.^can("push")[0] ) 03:30
camelia rakudo-moar c587b9: OUTPUT«Type check failed in binding to &thing; expected Callable but got Method+{<anon|42801984>} (Method+{<anon|4280198...)␤ in sub at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
03:30 khw left
unmatched} m: sub (&thing) {}( Any.^can("say")[0] ) 03:31
camelia ( no output )
unmatched} RTed the missing Callable: rt.perl.org/Ticket/Display.html?id=128905 03:32
03:39 wamba left, wamba1 joined
BenGoldberg m: sub foo (&bar) { bar() }; foo( Any.^can("say")[0] ); 03:39
camelia rakudo-moar c587b9: OUTPUT«Too few positionals passed; expected at least 1 arguments but got only 0␤ in sub foo at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
BenGoldberg m: dd Any.^can("say");
camelia rakudo-moar c587b9: OUTPUT«(method say (Mu $: | is raw) { #`(Method|42088008) ... },)␤»
BenGoldberg m: dd Any.^can("say")[0]; 03:40
camelia rakudo-moar c587b9: OUTPUT«Method say = method say (Mu $: | is raw) { #`(Method|52737608) ... }␤»
BenGoldberg m: sub foo (&bar) { bar(42) }; foo( Any.^can("say")[0] ); 03:41
camelia rakudo-moar c587b9: OUTPUT«42␤»
BenGoldberg m: sub foo (&bar) { bar(Mu) }; foo( Any.^can("say")[0] );
camelia rakudo-moar c587b9: OUTPUT«(Mu)␤»
BenGoldberg m: sub foo (&bar) { bar(True|False) }; foo( Any.^can("say")[0] ); 03:42
camelia rakudo-moar c587b9: OUTPUT«any(True, False)␤»
03:45 wamba1 left 04:27 Cabanossi left 04:29 Cabanossi joined 04:31 itaipu left 04:36 itaipu joined
dalek c: dbc3d25 | (Wenzel P. P. Peppmeyer)++ | util/list-missing-methods.p6:
add some comments, clean up some code
04:40
04:43 skids left 04:46 itaipu left 05:00 pierre_ left
konobi cs.stanford.edu/~zdevito/zdevito_thesis.pdf 05:03
nice read 05:09
TEttinger ha, I was sure I had heard the name z. devito before 05:13
terra's sorta a good thing, sorta very strange
it is embedded into lua code, and lua code uses 1-indexing... but terra uses 0-indexing, since it's closer to C for interop 05:14
so depending on what layer you're in, "the first item" means a different index
they don't have much choice about the lua using 1-indexing 05:15
05:16 harovali left, harovali joined 05:21 itaipu joined 05:24 avenj left
konobi TEttinger: the code generation and thought process of the underlying peices is really the interesting part to me 05:27
"Eager specialization with lazy typechecking" 05:37
05:47 j75 left 05:52 avenj joined, labster left
konobi mkay... a _lot_ of formal proofs in there that go straight over my head 05:53
it's turtles all the way down... o.O 06:08
06:23 pierre_ joined, trnh joined, trnh left, trnh joined 06:28 firstdayonthejob joined, pierre_ left 06:35 labster joined
gfldex m: my &fac_gen = -> &n { (n == 0) } 06:39
camelia rakudo-moar c587b9: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Preceding context expects a term, but found infix == instead␤at <tmp>:1␤------> 3my &fac_gen = -> &n { (n ==7⏏5 0) }␤»
gfldex m: my &fac_gen = -> &n { n == 0 }
camelia rakudo-moar c587b9: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Preceding context expects a term, but found infix == instead␤at <tmp>:1␤------> 3my &fac_gen = -> &n { n ==7⏏5 0 }␤»
gfldex m: my &fac_gen = -> &n { n() == 0 } 06:40
camelia ( no output )
06:42 firstdayonthejob left 06:43 BenGoldberg left 06:46 sssd joined 06:51 kanl joined 06:52 itaipu left 06:55 sno left 06:56 rmmm left 06:58 labster left
kanl Supply . throttle returns a supply of promises. How does each promise correspond to the original items? e.g. my $s = Supply.from-list( |@a ).throttle: 3, -> $v { do-something-with( $a ) }; $s.tap: -> $v { how-to-figure-out-relation-here() } 07:01
this matters because when running a number of things in parallel, one supposedly would need to know whose promise got kept and whose got broken, not just which. 07:04
i don't suppose it's safe to stick things into a hash inside throttle's pointy block, not knowing it's act() or tap(), Someone care to share, please? 07:15
07:17 sssd left
kanl m: my $s = Supply.from-list(^6).throttle: 3, { sleep 3; die if $_ == 1 }; $s.act: -> $v { $v.status.say }; $s.wait; 07:20
camelia rakudo-moar c587b9: OUTPUT«Kept␤Broken␤Kept␤Kept␤Kept␤Memory allocation failed; could not allocate 4 bytes␤»
kanl m: my $s = Supply.from-list(^6).throttle: 3, { sleep 3; die if $_ == 1 }; $s.act: -> $v { $v.status.say }; $s.wait; 07:21
camelia rakudo-moar c587b9: OUTPUT«Broken␤Kept␤Kept␤Kept␤Kept␤Memory allocation failed; could not allocate 32 bytes␤Memory allocation failed; could not allocate 4 bytes␤»
kanl m: my $s = Supply.from-list(^6).throttle: 3, { sleep 3; die if $_ == 1 }; $s.act: -> $v { $v.status.say }; $s.wait;
camelia rakudo-moar c587b9: OUTPUT«Kept␤Broken␤Kept␤Kept␤Memory allocation failed; could not allocate 4 bytes␤»
07:22 TheLemonMan joined
kanl The same code produces weirder results on my machine. 07:22
07:24 labster joined
gfldex m: my $s = Supply.from-list(^6).throttle: 3, { sleep 3; Failure.new("booboo") if $_ == 1 }; $s.act: { .status.say }; $s.wait; 07:25
camelia rakudo-moar c587b9: OUTPUT«Kept␤Kept␤Kept␤Kept␤Kept␤Kept␤Kept␤Kept␤»
gfldex m: my $s = Supply.from-list(^6).throttle: 3, { sleep 3; Failure.new("booboo") if $_ == 1 }; $s.act: { .status.say }; $s.wait;
camelia rakudo-moar c587b9: OUTPUT«Kept␤Kept␤Kept␤Kept␤Kept␤Kept␤Memory allocation failed; could not allocate 32 bytes␤»
gfldex nice new bug for jnthn :) 07:26
07:29 darutoko joined 07:31 wbill joined
kanl even if said bug is fixed, i still have no way of knowing the broken promise belongs to 1. 07:31
well, i do, because i put it there. but if i didn't, then how? 07:32
gfldex m: my @a = 1..3; my %h; %h[|@a] = 1; dd %h; 07:33
camelia rakudo-moar c587b9: OUTPUT«Hash %h = {}␤»
gfldex m: my @a = 1..3; my %h; %h{1;2;3} = 1; dd %h; 07:34
camelia rakudo-moar c587b9: OUTPUT«Hash %h = {"1" => ${"2" => ${"3" => 1}}}␤»
gfldex is there any way to turn an Array into a multidim subscript? 07:35
07:42 dalek left 07:43 dalek joined, ChanServ sets mode: +v dalek 07:49 RabidGravy joined
gregf_ m: my &foo = ->&bar, $x { &bar.($x) }; &foo({ say "Morning Perl " x $_ }, 3) 07:56
camelia rakudo-moar 7399a3: OUTPUT«Morning Perl Morning Perl Morning Perl ␤»
TimToady m: for 1,2,3 { .map: *.say } 07:58
camelia rakudo-moar 7399a3: OUTPUT«1␤2␤3␤»
labster m: my $x = "[̲̅$̲̅(̲̅5̲̅)̲̅$̲̅]"; $x ~~ s:mm:g/ '$' /€/; $x.say 07:59
camelia rakudo-moar 7399a3: OUTPUT«[̲̅€̲̅(̲̅5̲̅)̲̅€̲̅]␤»
labster m: "[̲̅$̲̅(̲̅5̲̅)̲̅$̲̅]".subst( / '$' / , '€', :mm, :g).say 08:01
camelia rakudo-moar 7399a3: OUTPUT«[̲̅$̲̅(̲̅5̲̅)̲̅$̲̅]␤»
labster How do I convert currencies in the method form? 08:02
TimToady you need a :m on the pattern as well 08:03
m: "[̲̅$̲̅(̲̅5̲̅)̲̅$̲̅]".subst( / :m '$' / , '€', :mm, :g).say
camelia rakudo-moar 7399a3: OUTPUT«[̲̅€̲̅(̲̅5̲̅)̲̅€̲̅]␤»
kanl m: my $s = Supply.from-list(^6).throttle: 3, { sleep 3; $_ => start { die if $_ == 1 } }; $s.act: -> $v { $v.result.say }; $s.wait; 08:05
camelia rakudo-moar 7399a3: OUTPUT«0 => Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable), status => PromiseStatus::Kept)␤1 => Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, un…»
08:05 sno joined
kanl good grief. 08:05
*inception* 08:06
labster ignoremark. OK, thanks TimToady 08:08
"so it is not necessary to put both :m and :mm." in S05 08:09
08:09 zakharyas joined
TimToady on the s/// form 08:09
labster Yeah. As usual just needs docced somewhere. It might be if I keep reading. 08:10
TimToady m: my @a; @a.grep({ .value andthen $_ eq "foo" })
camelia rakudo-moar 7399a3: OUTPUT«WARNINGS for <tmp>:␤Useless use of "eq" in expression "$_ eq \"foo\"" in sink context (line 1)␤»
TimToady m: my @a; @a.grep({ .value andthen $_ eq "foo" }) 08:11
camelia ( no output )
RabidGravy boo! 08:23
08:37 kurahaupo joined 08:40 kurahaupo_ joined 08:42 kurahaupo` joined 08:43 kurahaupo left, kurahaupo joined 08:46 kurahaupo_ left 08:47 kurahaupo` left 08:51 kurahaupo_ joined 08:52 kurahaupo` joined 08:53 kurahaupo left
RabidGravy ponders which one of these half finished modules he should work on today 08:54
resisting the urge to start even more
08:55 kurahaupo_ left 08:59 kanl left
dalek ateverable: e84ccc8 | (Aleks-Daniel Jakimenko-Aleksejev)++ | Bisectable.p6:
Set description when uploading bisect log
08:59
ateverable: 7815457 | (Aleks-Daniel Jakimenko-Aleksejev)++ | / (4 files):
Allow users to set any STDIN (URLs work fine too!)

  “STDIN foo” or “STDIN=foo”. Use it as a separate command. Set it once and it
will use the same input for all following commands of this bot.
Use “STDIN clear” to set it to its original value. You can also use “delete”,
  “reset” and “unset”, just in case you forget the right word.
This does not work with bisectable yet.
RabidGravy anyway reboot is in order 09:00
09:00 RabidGravy left 09:10 jack_rabbit left 09:11 ShimmerFairy left 09:14 pierre_ joined 09:22 walkerlala joined
walkerlala hi there 09:22
anyone online?
tadzik quite a lot of us, yes :)
gfldex Total of 325 nicks 09:23
walkerlala is those on the right side all online? 09:24
AlexDaniel maybe
walkerlala so all of you write perl6 instead of perl nowadays? 09:25
stmuk_ walkerlala: I'm not sure that sort of generalisation is useful and suspectt people use a number of languages 09:26
but yes we share perl 6 as a common interest
walkerlala I am also interested in it. seem like a new language 09:27
AlexDaniel define “new” :) 09:28
09:28 RabidGravy joined
gfldex it was made new over a timespan of 15 years 09:28
walkerlala what situation is perl6 in? Is it now being actively developed? 09:30
DrForr Very much so, yes.
gfldex this year is bug hunting year 09:32
walkerlala eh...would it be appropriate if I post some perl5 question here?
AlexDaniel gfldex: wasn't it a performance year?
walkerlala @gfldex why?
DrForr walkerlala: Try #perl on freenode.
gfldex terribad performace is a bug :)
AlexDaniel walkerlala: not really, try #perl instead
gfldex that's one of the Perl 6 repos: github.com/rakudo/rakudo/graphs/contributors 09:33
stmuk_ or #perl-help
gregf_ er, theres perl5 folks here as well ;) 09:34
stmuk_ I think most of the perl people use irc.perl.org rather than freenode
gregf_ freenode #perl is for puns *ducks*
walkerlala gregf_: what do you mean by puns ducks (none-native English speaker asking...) 09:37
09:37 AlexDaniel left 09:39 walkerlala_ joined
gregf_ walkerlala: sorry about that. i was just trying to say that freenode #perl is a bit casual :). but you can sure get help on there as well. as stmuk_ said, irc.perl.org is where the main guys hang out. 09:39
stmuk_ www.irc.perl.org/faq.html suggests 3 channels 09:40
walkerlala Is larry wall still developing perl6? 09:41
gregf_ walkerlala: would'nt want to pollute this channel with Perl5 questions. but, folks should be ok to answer some trivial oh here i would imagine
yep, TimToady is the nick :) 09:42
still, #perl freenode or #perl-help on irc.perl.org
s/trivial/trivial questions/, s/oh/on/ 09:43
09:49 bob777 left 09:54 lambd0x joined
lambd0x hello everyone \o/ 09:55
lizmat lambd0x o/ 09:56
09:58 TRUMP-PENCE joined
lambd0x m: my $a = 5; for $a...0 -> $b { say $b; } 09:59
camelia rakudo-moar 6c7eb3: OUTPUT«5␤4␤3␤2␤1␤0␤»
DrForr Afternoon. And preemptive sigh.
10:00 e163 joined
lambd0x is there other way to loop downward without using loop? 10:00
10:00 e163 left
nine lambd0x: reverse? 10:00