»ö« 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 declaredat <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 declaredat <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 => 11two => 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«Falseeager1 => 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«TrueFalse» | ||
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«TrueFalse» | ||
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 -eCalling 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 -eVariable $.push used where no 'self' is availableat -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 == insteadat <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 == insteadat <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«KeptBrokenKeptKeptKeptMemory 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«BrokenKeptKeptKeptKeptMemory allocation failed; could not allocate 32 bytesMemory 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«KeptBrokenKeptKeptMemory 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«KeptKeptKeptKeptKeptKeptKeptKept» | ||
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«KeptKeptKeptKeptKeptKeptMemory 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«123» | ||
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«543210» | ||
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 | |