»ö« 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.
00:02 sno joined 00:05 maybekoo2 left 00:12 kurahaupo joined 00:15 Zoffix__ joined, TEttinger left 00:17 TEttinger joined 00:18 Zoffix left, baest joined 00:20 zacts joined 00:21 cyphase left 00:25 Zoffix__ is now known as Zoffix 00:26 cyphase joined 00:28 sufrostico left 00:29 ParsonsNose left, sufrostico joined
Zoffix m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo :$what }; bar 00:32
camelia rakudo-moar c57ac2: OUTPUT«Any $what = Any␤»
Zoffix Is there a way for the default on $what to take even if it's specified as Any?
'cause it's pretty damn useless 00:33
gfldex m: say Any.Bool
camelia rakudo-moar c57ac2: OUTPUT«False␤»
gfldex it is takin :$what
Zoffix Yes, I know that, and I want to avoid that.
I want to propagate what was given in bar() 00:34
m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo (:$what if $what) }; bar
camelia rakudo-moar c57ac2: OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤ in sub foo at <tmp> line 1␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
Zoffix bisect: m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo (:$what if $what) }; bar
bisectable Zoffix: On both starting points the exit code is 1 and the output is identical as well
Zoffix: Output on both points: Too many positionals passed; expected 0 arguments but got 1␤ in sub foo at /tmp/QBu3dxVJU7 line 1␤ in sub bar at /tmp/QBu3dxVJU7 line 1␤ in block <unit> at /tmp/QBu3dxVJU7 line 1␤
Zoffix m: sub foo (Any:D :$what = 42) { dd $what }; sub bar (:$what) { foo :$what }; bar 00:36
camelia rakudo-moar c57ac2: OUTPUT«Parameter '$what' requires an instance of type Any, but a type object was passed. Did you forget a .new?␤ in sub foo at <tmp> line 1␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
Zoffix m: subset Undumb where { $_ ~~ Any:U and $_ = Nil }; sub foo (Undumb :$what = 42) { dd $what }; sub bar (:$what) { foo :$what }; bar 00:38
camelia rakudo-moar c57ac2: OUTPUT«Cannot assign to a readonly variable or a value␤ in block <unit> at <tmp> line 1␤␤»
Zoffix shakes head
00:38 baest left
gfldex m: sub foo (Any:D :$what = 42) { dd $what }; sub bar (*%what) { foo |%what }; bar 00:40
camelia rakudo-moar c57ac2: OUTPUT«Int $what = 42␤»
Zoffix I may as well be using Perl 5 then
gfldex m: sub foo (Any:D :$what = 42) { dd $what }; sub bar (:$what) { foo |%($what) }; bar
camelia rakudo-moar c57ac2: OUTPUT«Int $what = 42␤»
Zoffix gfldex++ 00:41
huh
m: dd |%($what)
camelia rakudo-moar c57ac2: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$what' is not declared. Did you mean '&WHAT'?␤at <tmp>:1␤------> 3dd |%(7⏏5$what)␤»
Zoffix m: my $what = 42; dd |%($what)
camelia rakudo-moar c57ac2: OUTPUT«Odd number of elements found where hash initializer expected:␤Only saw: 42␤ in block <unit> at <tmp> line 1␤␤»
Zoffix dafuq
gfldex :$what creates a colon pair, what can be turned into a Hash 00:42
Zoffix oh, you're not passing it, that's why it gets 42
m: sub foo (Any:D :$what = 42) { dd $what }; sub bar (:$what) { foo |%($what) }; bar :what(72)
camelia rakudo-moar c57ac2: OUTPUT«Odd number of elements found where hash initializer expected:␤Only saw: 72␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
Zoffix m: sub foo (Any:D :$what = 42) { dd $what }; sub bar (:$what) { foo |%(:$what) }; bar :what(72)
camelia rakudo-moar c57ac2: OUTPUT«Int $what = 72␤»
gfldex m: sub foo (Any:D :$what = 42) { dd $what }; sub bar (:$what) { dd $what; foo |%($what) }; bar
camelia rakudo-moar c57ac2: OUTPUT«Any $what = Any␤Int $what = 42␤»
gfldex m: sub foo (Any:_ :$what = 42) { dd $what }; sub bar (:$what) { dd $what; foo |%($what) }; bar
camelia rakudo-moar c57ac2: OUTPUT«Any $what = Any␤Int $what = 42␤»
Zoffix m: sub foo (Any:D :$what = 42) { dd $what }; sub bar (:$what) { foo |%(:$what) }; bar
camelia rakudo-moar c57ac2: OUTPUT«Parameter '$what' requires an instance of type Any, but a type object was passed. Did you forget a .new?␤ in sub foo at <tmp> line 1␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
Zoffix Yup, it doesn't work. 00:43
This is a real flaw in design. I came across this issue many times, but in the resorted to duplicating or moving the defaults.
m: sub foo (:$what //= 42) { dd $what }; sub bar (:$what) { foo :$what }; bar 00:44
camelia rakudo-moar c57ac2: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed parameter␤at <tmp>:1␤------> 3sub foo (:$what7⏏5 //= 42) { dd $what }; sub bar (:$what) ␤ expecting any of:␤ constraint␤»
Zoffix there gotta be a way to fix this with a trait or something
`is sane` XD 00:45
00:45 BillSussman left, KevinFrench joined
Zoffix And worse is you can't just $x //= 'default' in the body; you gotta mark it as `is copy` too 00:46
00:49 baest joined
gfldex m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo(what => $what) }; bar; 00:51
camelia rakudo-moar aada71: OUTPUT«Any $what = Any␤»
gfldex Zoffix: is that what you want?
Zoffix No, that's exactly as my original example, except you changed :$what to what => $what; 00:52
The result should be 42, since there were not $what given to bar
So when it's propagated to foo(), foo would also see it wasn't given and assign the default
m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo(what => $what//Mu) }; bar; 00:53
camelia rakudo-moar aada71: OUTPUT«Type check failed in binding to $what; expected Any but got Mu (Mu)␤ in sub foo at <tmp> line 1␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
Zoffix :(
gfldex m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { dd $what; foo(what => $what) }; bar; 00:54
camelia rakudo-moar aada71: OUTPUT«Any $what = Any␤Any $what = Any␤»
gfldex m: sub foo ($p?){ dd $p }; foo;
camelia rakudo-moar aada71: OUTPUT«Any $p = Any␤»
gfldex Zoffix: any optional parameter is given because it's a container and as such got a default value 00:55
Zoffix That doesn't help me write my software. 00:56
Xliff Does perl6 support the __DATA__ feature from perl5?
parabolize m: sub f(:$a = 2) { dd $a }; sub g(:$a) { $a ?? f(:$a) !! f() }; g(); g(:3a);
camelia rakudo-moar aada71: OUTPUT«Int $a = 2␤Int $a = 3␤»
Zoffix Xliff, I think the way to do it now is using the Pod, like the =finish marker
gfldex m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { my %h; %h.push(:$what) if $what; foo(|%h) }; bar;
camelia rakudo-moar aada71: OUTPUT«Int $what = 42␤»
Xliff Zoffix: Any docs on that?
gfldex Zoffix: if you want to do fancy stuff with signatures you have to build it by hand
Zoffix parabolize, that's not a real solution
gfldex, that's not fancy at all. 00:57
gfldex you want to lie about the value of :$what in bar. You have to expect to help Perl 6 to understand you in that case.
Xliff Zoffix++: That pointed me in the right direction 00:58
design.perl6.org/S26.html#___top
^^ Data Blocks
Zoffix I don't want it to consider the penultimate-most-undefined type object as a value when I'm giving it an int as default. It's not rocket science.
Xliff++ awesome 00:59
00:59 mcmillhj left
Zoffix m: say 'The second anti_Virtue is: ', $=data[1]; ␤=data Weeee␤ 01:00
camelia rakudo-moar aada71: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Pod variable $=data not yet implemented. Sorry. ␤at <tmp>:1␤------> 3ay 'The second anti_Virtue is: ', $=data7⏏5[1]; ␤»
Zoffix Bah
gfldex Xliff: you could use a heredoc
Zoffix m: say 'The second anti_Virtue is: ', $=finish; ␤=finish␤Weeee␤ 01:01
camelia rakudo-moar aada71: OUTPUT«The second anti_Virtue is: Weeee␤␤»
Zoffix Xliff, ^ that works tho.
Xliff gfldex: Yeah, but I am trying to keep this as close to the original p5 test as possible.
01:01 obfusk_ joined
Xliff Plus, it helps me learn more about perl6 and I've done heredocs already. :) 01:01
gfldex Zoffix: if Signature would discard Any and use the default value instead, you would get in trouble if you require to hand type object around. We don't have a type for type objects. 01:04
Zoffix I don't pass around type objects when my defaults are ints 01:05
gfldex that your fault :->
Zoffix :)
01:08 kid511 joined, kid51 left 01:09 zacts left 01:11 FROGGS_ joined
holyghost Hello FROGGS_, nice modules BTW 01:14
01:15 FROGGS left, kid51 joined 01:16 sufrostico left 01:17 kid511 left 01:22 Actualeyes joined, baest left 01:23 canopus left 01:24 cibs left 01:26 cibs joined
Xliff Heya, FROGGS! 01:27
Is anyone working on P6 bindings for wxWidgets?
01:28 canopus joined
Zoffix m: say Parameter.^attributes 01:33
camelia rakudo-moar aada71: OUTPUT«Method 'gist' not found for invocant of class 'BOOTSTRAPATTR'␤ in block <unit> at <tmp> line 1␤␤»
Zoffix :(
01:34 baest joined 01:37 kid511 joined 01:38 kid51 left 01:39 kid51 joined 01:40 bob777 joined 01:41 kid511 left 01:44 cdg left 01:45 cdg joined 01:51 cdg left
Zoffix No idea how to set a value of the parameter given a Parameter object :( 01:51
01:54 aries_liuxueyang left 01:57 aries_liuxueyang joined 02:11 kid511 joined 02:13 kid51 left 02:17 bob777 left, bob777 joined 02:20 Actualeyes left 02:21 kid511 left 02:28 kanishka joined 02:35 danaj left
skids Zoffix: Parameters and Signatures (other than literals) are actually really deeply baked into the VM. Their Perl6 interface is currently more for introspection than manipulation. 02:35
Zoffix sucks 02:36
mst skids: but how else are you supposed to chain calls? having them settable and re-callable was one of the great promises of perl6
02:36 jack_rabbit joined
mst I guess building stuff up as an array and a hash and then using slips? 02:36
timotimo um, i think what you're looking for is Capture, not Parameter 02:38
what do you even expect to be able to do with a Parameter object?
Zoffix timotimo, well, I was looking into creating a trait that would use the default if the value given is an Any 02:39
m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo :$what }; bar
camelia rakudo-moar aada71: OUTPUT«Any $what = Any␤»
skids m: sub foo (:$what = 42) { dd $what }; sub bar (|c) { dd $what; foo |c }; bar
camelia rakudo-moar aada71: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$what' is not declared. Did you mean '&WHAT'?␤at <tmp>:1␤------> 3t = 42) { dd $what }; sub bar (|c) { dd 7⏏5$what; foo |c }; bar␤»
skids m: sub foo (:$what = 42) { dd $what }; sub bar (|c) { foo |c }; bar
camelia rakudo-moar aada71: OUTPUT«Int $what = 42␤»
02:39 danaj joined, aborazmeh joined, aborazmeh left, aborazmeh joined
Zoffix Hm 02:39
02:40 noganex joined
skids m: sub foo (:$what = 42; :$where = "there") { dd $what, $where }; sub bar (|c) { foo :$where, |c }; bar 02:40
camelia rakudo-moar aada71: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$where' is not declared␤at <tmp>:1␤------> 3dd $what, $where }; sub bar (|c) { foo :7⏏5$where, |c }; bar␤»
skids m: sub foo (:$what = 42; :$where = "there") { dd $what, $where }; sub bar (|c (:$where)) { foo :$where, |c }; bar("here")
camelia rakudo-moar aada71: OUTPUT«Too many positionals passed; expected 0 arguments but got 1 in sub-signature of parameter c␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
skids m: sub foo (:$what = 42; :$where = "there") { dd $what, $where }; sub bar (|c (:$where)) { foo :$where, |c }; bar(:where<here>) 02:41
camelia rakudo-moar aada71: OUTPUT«Int $what = 42␤Str $where = "here"␤»
timotimo you'll have to go through a capture, otherwise you won't be able to do anything much
skids m: sub foo (:$what = 42; :$where = "there") { dd $what, $where }; sub bar (|c (:$where, :$what)) { foo :$where, |c }; bar(:where<here>) 02:42
camelia rakudo-moar aada71: OUTPUT«Int $what = 42␤Str $where = "here"␤»
02:42 noganex_ left 02:43 dvinciguerra_ left, kaare__ joined
Zoffix m: multi trait_mod:<is> (Routine $v, :$sane!) { dd $v }; sub foo (:$what = 42) is sane { dd $what }; sub bar (:$what) { foo :$what }; bar 02:44
camelia rakudo-moar aada71: OUTPUT«Sub foo = sub foo (:$what = 42) { #`(Sub|61110648) ... }␤Any $what = Any␤»
Zoffix timotimo, by "go through capture", do you mean that skids is showing?
skids tries to remember if there is a syntax or watnot to get the capture without using a subsig
timotimo aye 02:45
Zoffix :(
damn
skids Yeah | is a capture
Zoffix Yeah, but it's still LTA a bit.
skids Also there are a few places where f(|c (stuff)) is not quite as capable as f(stuff) 02:48
gfldex m: sub f(|c){ dd c<what> = 10; }; f :what; 02:49
camelia rakudo-moar aada71: OUTPUT«Cannot modify an immutable Bool␤ in sub f at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
gfldex m: sub f(|c){ dd c<what>; }; f :what;
camelia rakudo-moar aada71: OUTPUT«Bool::True␤»
skids (some of those places being just NYI/LTA) 02:50
gfldex m: sub f(|c is copy){ \(c.Hash<what> = 42;) }; dd f :what; 02:51
camelia rakudo-moar aada71: OUTPUT«\((42,), ())␤»
gfldex m: sub f(|c){ \(c.Hash<what> = 42;) }; dd f :what;
camelia rakudo-moar aada71: OUTPUT«\((42,), ())␤»
gfldex problem is that Capture isn't really a Hash
no idea what would happen to positionals
02:51 aborazmeh left
timotimo it seems problematic that you can change a capture's contents via .Hash; we probably want to use .Map instead 02:52
skids m: sub foo (:$what = 42) { dd $what }; sub bar (|c) { foo |c, :$what<"this"> }; bar
camelia rakudo-moar aada71: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$what' is not declared. Did you mean '&WHAT'?␤at <tmp>:1␤------> 3) { dd $what }; sub bar (|c) { foo |c, :7⏏5$what<"this"> }; bar␤»
skids m: sub foo (:$what = 42) { dd $what }; sub bar (|c) { foo |c, :what<"this"> }; bar 02:53
camelia rakudo-moar aada71: OUTPUT«Str $what = "\"this\""␤»
gfldex do we have a type that is Positional and Associative and motable at the same time?
skids m: sub foo (:$what = 42) { dd $what }; sub bar (|c) { foo |c, :what<"this"> }; bar(:what<that>)
camelia rakudo-moar aada71: OUTPUT«Str $what = "\"this\""␤»
02:54 cibs left
timotimo goes to bed 02:54
gfldex i'm out of brainsteam too, gn8 02:55
02:56 cibs joined 02:59 holyghost left
Zoffix m: use nqp; subset Undumb where { $_ ~~ Any:U and nqp::bindattr($_.VAR, Scalar, '$!value', 42) }; sub foo (Undumb :$what = 42) { dd $what }; sub bar (:$what) { foo :$what }; bar 03:00
camelia rakudo-moar aada71: OUTPUT«Any $what = Any␤»
Zoffix curses the Computer Gods
03:08 telex left
Zoffix lulz wut... Got this error: "replace this Array is copy logic in method" 03:10
Apparently I'm hitting this code: github.com/rakudo/rakudo/blob/aada...P.nqp#L435 03:11
AlexDaniel bisect: ++blah++ 03:16
bisectable AlexDaniel: Exit code is 1 on both starting points, bisecting by using the output
AlexDaniel: bisect log: gist.github.com/c6d5ae56b7b8477ea3...181f2fb9f7
AlexDaniel: (2015-12-27) github.com/rakudo/rakudo/commit/373adc0
03:16 telex joined
AlexDaniel goddamn filenames in the output :) 03:16
parabolize Zoffix: what's wrong with using the capture? Also, what is LTA? 03:17
m: sub f($x, :$a = 2) { say 'in f'; dd $x, $a }; sub g($y, :$b, |c) { say 'in g'; dd $y, $b; f(|c) }; g(2, 3, :4a, :5b)
camelia rakudo-moar aada71: OUTPUT«in g␤Int $y = 2␤Int $b = 5␤in f␤Int $x = 3␤Int $a = 4␤»
Zoffix parabolize, because it isn't descripting on what sort of args I'm passing about. 'LTA' == Less Than Awesome
s/descripting/descriptive/; 03:18
AlexDaniel committable: releases ++blah++
committable AlexDaniel: ¦«release»: Cannot find this revision
Zoffix method foo ($cmd, :$server) { $.o($cmd, :$server) } is clearer than method foo ($cmd, |c) { $.o($cmd, |c) }
03:18 bob777 left
AlexDaniel wasn't it supposed to work, hmm 03:18
Zoffix Damn, this will now bug me for life ~_~ 03:19
03:19 bob777 joined 03:20 committable left, committable joined
AlexDaniel committable: releases ++blah++ 03:20
committable AlexDaniel: gist.github.com/4333c1ddb4c74d8421...0afc5b6b10
Zoffix parabolize, well that, and the fact that when I tried to use it I hit some cobwebbed error "replace this Array is copy logic in method" 03:21
m: sub foo ($cmd, *@args is copy, |c) { dd @args }; sub bar (:$foo, |c){ foo |c, 42, 55 }; bar :42server 03:22
camelia rakudo-moar aada71: OUTPUT«replace this Array is copy logic␤ in sub foo at <tmp> line 1␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
03:22 telex left
parabolize admits python code that has *arguments, **keywords drives him nuts. Especially when there is no doc string 03:23
03:23 huggable left, huggable joined
Zoffix m: sub (*@x is copy, |c) { }( 42 ) 03:24
camelia rakudo-moar aada71: OUTPUT«replace this Array is copy logic␤ in sub at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
03:36 bob778 joined 03:38 telex joined, bob777 left, bob778 is now known as bob777 03:42 TEttinger left 03:45 TEttinger joined, jferrero joined 03:46 kurahaupo left
Zoffix m: sub prefix:<‖> (Pair $p) { $p.value ~~ Any:D ?? $p !! Empty }; sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo |‖:$what }; bar 03:49
camelia rakudo-moar aada71: OUTPUT«Int $what = 42␤»
Zoffix m: sub prefix:<‖> (Pair $p) { $p.value ~~ Any:D ?? $p !! Empty }; sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo |‖:$what }; bar :72what
camelia rakudo-moar aada71: OUTPUT«Int $what = 72␤»
Zoffix I wish it were possible to get rid of that slip somehow :/ 03:51
psch m: sub prefix:<``> (Pair $p) { $p.value ~~ Any:D ?? $p.Slip !! Empty }; sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo :$what }; bar :72what 03:52
camelia rakudo-moar aada71: OUTPUT«Int $what = 72␤»
psch can't get rid of it, but you can move it "up"
Zoffix m: sub prefix:<``> (Pair $p) { $p.value ~~ Any:D ?? $p.Slip !! Empty }; sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo :$what }; bar
camelia rakudo-moar aada71: OUTPUT«Any $what = Any␤»
psch oh no
i removed the prefix call
Zoffix m: sub prefix:<``> (Pair $p) { $p.value ~~ Any:D ?? $p.Slip !! Empty }; sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo ``:$what }; bar 03:53
camelia rakudo-moar aada71: OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤ in sub foo at <tmp> line 1␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
psch sorry, not actually awake apparently
Zoffix :)
m: sub prefix:<😜> (Pair $p) { $p.value ~~ Any:D ?? $p !! () }; sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo |😜:$what }; bar
camelia rakudo-moar aada71: OUTPUT«Int $what = 42␤»
parabolize m: sub f(:$a) { dd $a }; sub g(:$a, :$b) { dd $b; f(:$a) }; g(:2a, :3b) 03:57
camelia rakudo-moar aada71: OUTPUT«Int $b = 3␤Int $a = 2␤»
psch m: sub f { (:1a).Slip }; say f.perl; say f ~~ :(:$) 03:58
camelia rakudo-moar aada71: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Expected a term, but found either infix ~~ or redundant prefix ~␤ (to suppress this message, please use a space like ~ ~)␤at <tmp>:1␤------> 3b f { (:1a).Slip }; say f.perl; say f ~~7⏏5 :(:$)␤»
psch m: sub f { (:1a).Slip }; say f.perl; say f() ~~ :(:$)
camelia rakudo-moar aada71: OUTPUT«slip(:a(1),)␤False␤»
parabolize nevermind
psch that is a bit weird i think
oh duh
m: sub f { (:1a).Slip }; say f.perl; say f() ~~ :(:$a)
camelia rakudo-moar aada71: OUTPUT«slip(:a(1),)␤True␤»
psch that is more expected
m: sub f { (:1a).Slip }; sub g(:$a) { }; say f.perl; say &g.cando(f()) 03:59
camelia rakudo-moar aada71: OUTPUT«slip(:a(1),)␤Type check failed in binding to $c; expected Capture but got Slip (slip$(:a(1),))␤ in block <unit> at <tmp> line 1␤␤»
psch ah
Zoffix m: sub K { \(@_, %_.grep: {.value ~~ Any:D}) }; sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo |K :$what }; bar :72what
camelia rakudo-moar aada71: OUTPUT«Too many positionals passed; expected 0 arguments but got 2␤ in sub foo at <tmp> line 1␤ in sub bar at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
Zoffix :(
03:59 djbkd joined
Zoffix ^ that would be the best. Some prefix or sub you sneak at the start of args and be done with it 04:00
Well, "best". The best would be making it actually work right in the first place :)
04:00 Actualeyes joined
psch not really sure what "right" is here, actually 04:00
i mean, i'd say a slip should always slip exactly once 04:01
so if i return it from a sub and pass it into a call, it should then slip
Zoffix Well, in this context right == what I want it to do :) And that is not to assume Any:U is a valid value to use when I specify an Int default value to use.
dalek sectbot: dabed85 | (Aleks-Daniel Jakimenko-Aleksejev)++ | Perl6IRCBotable.pm:
Empty string works better than 0

Turns out that setting RAKUDO_ERROR_COLOR to 0 does not work well enough across all Rakudo versions. This causes the output to be different on some commits, which may freak out bisectable or even committable if ran across many commits.
Empty string works all the time.
04:01 committable left, benchable left
Zoffix As in.. it assuming my giving it Any:U is what I want rather than my wanting it to use the default. 04:01
04:01 bisectable left
Zoffix Happy new day! 04:02
psch how does Any:U come into this? i'm only seeing a slipping Pair not slipping into a named..?
Zoffix Well, this adventure of mine started 3.5 hours ago with this:
m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo :$what }; bar
camelia rakudo-moar aada71: OUTPUT«Any $what = Any␤»
Zoffix I want foo to use the default value, because the $what I'm giving it wasn't passed to bar, so it's an Any:U
psch well, you are giving a value 04:03
04:03 committable joined, bisectable joined, benchable joined
Zoffix Well, sure, I know why I get that result. 04:03
AlexDaniel committable: releases ++blah++
committable AlexDaniel: gist.github.com/93db4fc89fffe0009d...5653ddcfff
AlexDaniel ok that's much better 04:04
Zoffix But it's not what I want, as a programmer. And I hit this issue many times, but I never hit an issue where I had a param defaulting to an Int and I was dissapointed that I couldn't give it an Any:U
*excited that I could give it... 04:05
psch m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { $what ?? foo(:$what) !! foo() }; bar 04:06
camelia rakudo-moar aada71: OUTPUT«Int $what = 42␤»
psch if you give the named it takes the nameds value
Zoffix You're the second person to suggest such a thing
psch okay, sorry
Zoffix :)
parabolize m: sub f(:$a = 2) { dd $a }; multi g(:$b) { dd $b; f() }; multi g(:$a!, :$b) { dd $b; f(:$a) }; g(:3b)
camelia rakudo-moar aada71: OUTPUT«Int $b = 3␤Int $a = 2␤»
Zoffix psch, it's just the single-arg example is a simplification. That solution is already too hefty and it grows too unwieldy the minute you get a second named arg 04:07
psch Zoffix: then use multi dispatch? 04:08
parabolize I don't think I needed the ! there
Zoffix Isn't that just an even more verbose way to write a ternary?
AlexDaniel committable: 2016.02..2016.03 ++blah++
committable AlexDaniel: gist.github.com/aee7c32eab4fbdbf9b...8e996959f2 04:09
psch i don't know, maybe
AlexDaniel Zoffix: by the way, I remember you were saying that things like this ↑ will take way too long. Well, it's not paralellized, so it does take very long. But it is already usable
TimToady m: sub foo (:$what = 42) { dd $what }; sub bar (:$what) { foo(|(:$what if $what)) }; bar 04:10
camelia rakudo-moar aada71: OUTPUT«Int $what = 42␤»
AlexDaniel like you know, sometimes you have to put some effort into making a proper bisect query… why bother, just run it on every commit ;) 04:11
Zoffix Yeah, the |( if ) thing is probably the shortest you can do it now with 04:12
Well, without some weird prefix op
committable: 2016.02..2016.03 .WHERE.say 04:13
committable Zoffix: gist.github.com/f06a3ac587603fc735...d40ee16482 04:14
Zoffix neat
AlexDaniel MasterDuke: again, why do we have a 300 commit limit? 04:15
MasterDuke no reason
04:15 k-man joined, k-man left
Zoffix But back to the Any:U -> Ideally the solution would be on the receiving end. Some sorta trait or something. I got one method to which a named param percolates from all the place to, so I don't want to put |(:) on all the calls, but rather in the sig or something 04:16
This is the actual real-world piece of code it's from and my current solution :) gist.github.com/zoffixznet/ef930e0...8c2172aff4
|(:) looks like a ninja if you angle your head right.
Zoffix will call |(:$what if $what) construct "ninjaing a param" from now on 04:17
Zoffix & sleep
04:17 k-man joined 04:18 k-man left, k-man joined, k-man left
AlexDaniel MasterDuke: each run is limited to 10 seconds, so if you want to kill it you can run sleep 10 over 300 commits… 04:18
04:18 BenGoldberg joined
AlexDaniel MasterDuke: that's gonna send it to a little 50 minute vacation 04:19
MasterDuke AlexDaniel: can we set an alarm before we start the loop that runs the code for all the commits with a larger timeout? will that conflict with the alarm for each run? 04:21
or would just that one alarm be needed at all? 04:22
AlexDaniel MasterDuke: maybe something that says “oops, sorry, will not manage to finish that job at such pace”
MasterDuke: no need for an alarm, just check the time every now and then 04:23
dalek sectbot: 942ea65 | (Aleks-Daniel Jakimenko-Aleksejev)++ | committable.pl:
Bump committable limit to 1000

If you wanted to kill it, then you could run sleep 10 over 300 commits and this will keep it busy for 50 minutes. However, most people will probably run really fast snippets, so we can bump it quite a bit.
Global timeout will be introduced later, hopefully.
04:24
04:24 committable left 04:25 committable joined
MasterDuke AlexDaniel: github.com/perl6/bisectbot/issues/13 04:28
AlexDaniel yea
04:32 khw left 04:47 Cabanossi left 04:48 adu joined 04:49 Cabanossi joined
skids .tell Zoffix f(:$f = "foo") { $f.VAR.default.say } -- I wonder if a design modification could be sold that this should say "foo" in which case :f<Nil> would work to set the default. 04:51
yoleaux skids: I'll pass your message to Zoffix.
04:56 bob777 left
TimToady thunky ops now warn in sink context 04:56
m: say [1,2,3] or 42
camelia rakudo-moar 5334cb: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant integer 42 in sink context (line 1)␤[1 2 3]␤»
TimToady m: 42 with [1,2,3] 04:57
camelia rakudo-moar 5334cb: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant integer 42 in sink context (line 1)␤»
05:05 bob777 joined 05:25 jack_rabbit left 05:27 skids left 05:33 AlexDaniel left 05:35 cosimo left, adu left 05:37 BenGoldberg left, cosimo joined 05:38 domidumont joined 05:43 domidumont left, kanishka left 05:44 domidumont joined 05:50 KaitoDaumoto left
FROGGS_ Xliff: not that I am aware of 05:53
05:56 sno left 06:03 domidumont left 06:05 CIAvash joined 06:17 maybekoo2 joined 06:24 firstdayonthejob joined 06:26 trnh joined 06:30 KevinFrench left 06:35 zakharyas joined, trnh left 06:36 trnh joined, trnh left, trnh joined 06:43 firstdayonthejob left 06:44 rurban joined, cyphase left 06:49 cyphase joined
ufobat my hands feel so funny, i just wrote perl6 code ;-) 06:54
06:55 sno joined
ufobat good morning 06:56
07:05 trnh left 07:17 trnh joined, CQ joined 07:19 zakharyas left 07:20 domidumont joined 07:22 tbrowder left 07:23 huggable left 07:24 tbrowder joined 07:25 zakharyas joined, rurban1 joined 07:28 darutoko joined, rurban2 joined 07:29 rurban left 07:31 rurban1 left 07:32 Brass_Lantern joined, BrassLantern left 07:36 zhmylove_ joined 07:37 danaj left 07:38 nemo joined, skaji left, Timbus joined, nemo is now known as Guest58213 07:39 f3ew joined, skaji joined 07:40 danaj joined 07:42 sftp left, holyghost joined 07:43 wamba joined, shadowpaste joined
holyghost Does it somewhere have a meaning to buy an Amiga A500 ? 07:43
or should I wait for the A4000 ? 07:44
07:44 rurban2 left 07:45 trnh left 07:46 zakharyas left, cyphase left 07:47 zakharyas joined
holyghost ok nm 07:47
07:51 cyphase joined, abraxxa left, abraxxa joined 07:56 mohae left, mohae_ joined 08:00 trnh joined, trnh left, trnh joined 08:01 jonas2 joined 08:03 CQ left 08:06 MorayJ joined, zakharyas left 08:08 DrParis joined
DrForr m: my $t = Int; $t.new(3); say $t.WHAT 08:09
camelia rakudo-moar 5334cb: OUTPUT«(Int)␤»
08:10 risou left
DrForr m: my %x=(a=>Int); my $t=%a<a>; $t.new(3); say $t.WHAT 08:10
camelia rakudo-moar 5334cb: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '%a' is not declared␤at <tmp>:1␤------> 3my %x=(a=>Int); my $t=7⏏5%a<a>; $t.new(3); say $t.WHAT␤»
DrForr m: my %x=(a=>Int); my $t=%x<a>; $t.new(3); say $t.WHAT
camelia rakudo-moar 5334cb: OUTPUT«(Int)␤»
DrForr Mumble. 08:11
08:11 risou_ joined 08:14 mithaldu_ joined 08:21 dakkar joined 08:29 prammer joined, prammer left
lizmat m: say Int.new(:value(3)) 08:37
camelia rakudo-moar 5334cb: OUTPUT«0␤»
lizmat hmmm
DrForr Well, I'm trying to do: 08:38
lizmat m: say Int.new(3) 08:39
camelia rakudo-moar 5334cb: OUTPUT«3␤»
08:39 zakharyas joined
DrForr Let me rephrase. The last code I put up works fine with the 'Int' builtin, but... 08:40
m: class Y { has $.v }; my %x=('$'=>Y); my $z = %x{'$'}.new(:v(1)); $z.WHAT 08:41
camelia ( no output )
psch m: class Y { has $.v }; my %x=('$'=>Y); my $z = %x{'$'}.new(:v(1)); say $z.WHAT 08:43
camelia rakudo-moar 5334cb: OUTPUT«(Y)␤»
DrForr Hrm, maybe I'm debugging something incorrectly then. 08:44
(and forgetting that this evalbot doesn't print the return value as well.) 08:45
08:50 RabidGravy joined 08:55 brrt joined 09:16 cibs left, maybekoo2 left 09:18 cibs joined 09:20 dakkar_ joined 09:23 dakkar left 09:29 rurban joined 09:30 rurban left 09:37 dakkar_ is now known as dakkar 09:41 trnh left 09:56 trnh joined, ParsonsNose joined
El_Che I did some perl5 the last days, and while I loved perl5 I must say I really missed quite a few things of perl6. It's crazy how fast one takes stuff for granted 10:00
DrForr Mmhmm.
10:01 mcmillhj joined 10:02 brrt left 10:05 mcmillhj left 10:06 TEttinger left, hwcomcn joined 10:10 rindolf joined 10:24 rurban1 joined
Zoffix . 10:26
yoleaux 04:51Z <skids> Zoffix: f(:$f = "foo") { $f.VAR.default.say } -- I wonder if a design modification could be sold that this should say "foo" in which case :f<Nil> would work to set the default.
Zoffix That doesn't really help, since I'm passing Any:U and not Nil. Also, that default is different from the signature defaults. 10:27
m: my $x is default(42) = 72; dd $x; $x = Nil; dd $x
camelia rakudo-moar 5334cb: OUTPUT«Int $x = 72␤Int $x = 42␤»
10:33 cibs left, trnh left 10:35 cibs joined 10:38 rurban1 left 10:47 trnh joined 10:58 davidcsi joined, labster left 11:00 cibs left
davidcsi hello guys, i'm trying to establish a memcached connection via a tunnel, the tunnel needs to be created by perl... has anyone ever done this? I've been able to do it by creating the tunnel with "my $pid = open(myh, 'ssh -L xxx:1.1.1.1:yyyy server -l user');" but the pid returned is NOT the pid for the ssh for some reason... 11:01
11:01 Zoffix left 11:02 cibs joined 11:06 rindolf left
DrForr davidcsi: I think you want #perl, one door over. Unless this is perl 6 code and youv'e got the syntax wrong, for some reason :) 11:08
11:13 davidcsi left 11:16 ParsonsNose left 11:17 davidcsi joined
davidcsi sorry :) 11:19
DrForr No worries.
11:27 ParsonsNose joined 11:30 salv0 joined
El_Che DrForr: the noisy neighbours next door? :) 11:31
davidcsi: irc network: irc.perl.org, channel: #perl 11:33
DrForr He's already over on the other channel. 11:34
El_Che yeah, I am Mr Obvious today it seems 11:36
DrForr: now you answer "onviously" :) 11:38
CIAvash El_Che: IIRC mst said that don't refer people to #perl on irc.perl.org 11:40
11:41 kid51 joined
El_Che why? 11:41
CIAvash irclog.perlgeek.de/perl6/2016-05-23#i_12529400
irclog.perlgeek.de/perl6/2016-07-08#i_12807145 11:42
El_Che CIAvash: thx 11:44
11:45 kid511 joined, davidcsi left, kid51 left 11:49 kid51 joined, kid511 left
FROGGS_ mst++ 11:59
12:05 gregf_ joined 12:12 Guest58213 is now known as nemo, davidcsi joined, davidcsi left 12:16 sftp joined 12:21 cog_ joined 12:25 hwcomcn left 12:29 FROGGS_ left 12:34 sufrostico joined
dalek c: fc83049 | (Daniel Dehennin)++ | doc/Language/concurrency.pod6:
Fix name of Supply method which returns a Channel
12:43
c: 9fbfc11 | (Zoffix Znet)++ | doc/Language/concurrency.pod6:
Merge pull request #766 from baby-gnu/fix/channel-method-on-supply

Fix name of Supply method which returns a Channel
nebuchadnezzar ho, merge was quick 12:44
moritz nebuchadnezzar: what's your github username? 12:45
nebuchadnezzar baby-gnu ;-)
my DNS domaine
moritz nebuchadnezzar: invitation to the perl6 org sent 12:46
nebuchadnezzar ho thanks
moritz nebuchadnezzar: if you accept, you don't need to wait for merges at all :-)
(and we have less work merging)
masak Zoffix++ # blogs.perl.org/users/zoffix_znet/20...p-you.html 12:47
12:50 kurahaupo joined
nebuchadnezzar Shouldn't we inverse the sythax colorization between code and output in docs.perl6.org/language/quoting ? 12:54
masak 'We used maybe 50 or 60 competing design principles in the design of Perl 6, but the most important one is: "There is no single most important design principle, including this one."' 12:55
TimToady: ...I see what you did there.
(from developers.slashdot.org/story/16/0...arry-wall)
nebuchadnezzar well for some the example blocks at least 12:56
12:57 mcmillhj joined
moritz nebuchadnezzar: it would likely be easier to switch off syntax hilighting for blocks that aren't propery hilighted 12:59
nebuchadnezzar moritz: yes, I saw that the first code blocs require B to emphasize the quote characters 13:01
moritz which disables the rest of the syntax hilighting, because those two don't mix
nebuchadnezzar that's what I supposed, thanks to confirm it 13:02
13:03 matt_ joined, matt_ is now known as Guest67302 13:04 Ptolemarch joined 13:06 Ptolemarch left 13:08 ptolemarch joined, Guest67302 is now known as matt_ 13:10 mcmillhj left 13:11 mcmillhj joined 13:20 pmurias joined 13:24 salv0 left, canopus left 13:25 Sgeo left 13:30 canopus joined, molaf joined 13:36 salv0 joined 13:39 kid51 left 13:41 kid51 joined
dalek c: 9498349 | (Zoffix Znet)++ | doc/Type/Instant.pod6:
Document future leap second behaviour

Related to rt.perl.org/Ticket/Display.html?id=126119
13:42
timotimo maybe at some point we should consider offering newer builds of older rakudo releases and rakudo star releases that have more leap seconds in them 13:44
13:47 cibs left 13:49 unmatched} joined 13:50 cibs joined
[Coke] timotimo: I think if someone cares that much about leap seconds, they can get the latest copy of rakudo 13:50
(or we can write up a doc on how they can update the leapseconds table and do a build themselves) 13:51
unmatched} Seems a bad idea. Right now you can workaround it by doing $*VM.version before '2016.07', for example, but that would either break if you use the same version number for the updated release or it'd require more conditionals for the new version
[Coke] maybe we can do a meta table that shows which seconds were available in which compiler. 13:52
(I am... only mostly kidding)
unmatched} Wouldn't be a bad idea for a module
Leap::BackToTheFuture :) 13:53
[Coke] there we go. push to module space, people who really care have a place to go. 13:57
13:59 jkramer joined
jkramer Ahoy 13:59
unmatched} \o
jkramer Is there a way to check if an Array of stuff or something else matches a Signature? 14:00
timotimo sure, you can just smartmatch against the signature, can't you?
jkramer Like $r.signature ~~ ['string', 123, SomeClass $foo]
timotimo well, you have the smart match the wrong way around :) 14:01
jkramer Don't know, didn't try because I didn't find anything in the docs :)
Oh
14:01 zakharyas left
jkramer Ah actually it is right there in the docs -_- 14:01
14:01 zakharyas joined
timotimo m: my Signature $s = :(Str $a, Int $b, Rat $c); say \("hello", 1234, 1.5) ~~ $s 14:01
camelia rakudo-moar 6d1e95: OUTPUT«True␤»
timotimo m: my Signature $s = :(Str $a, Int $b, Rat $c); say \("hello", 1234, "lol") ~~ $s
camelia rakudo-moar 6d1e95: OUTPUT«False␤»
jkramer \o/ 14:02
thx
timotimo np
14:04 sena_kun joined 14:06 zakharyas left
dalek c: d0c34fa | (Zoffix Znet)++ | doc/Type/Instant.pod6:
Move prose on future leap seconds to its own section

There are many methods that have this caveat, not just .from-posix
14:06
c: 0ffd2a1 | (Zoffix Znet)++ | .gitignore:
Add html/perl6.xhtml to .gitignore
c: 1366219 | (Zoffix Znet)++ | Makefile:
Add make ctest for testing just content (tabs/traling ws)

This makes it easier to test for just the content warts, without having to install prereqs like ::ToBigPage
c: 9d6b726 | (Zoffix Znet)++ | Makefile:
Update make help
14:07
c: aabab44 | (Zoffix Znet)++ | doc/ (3 files):
Strip accumulated trailing whitespace
14:09
unmatched} [Coke]: BTW, I opened a ticket that may need to be forwarded to RT admins. Unless I'm misunderstanding how email-to-comments-on-RT-ticket works: rt.perl.org/Ticket/Display.html?id=128749 14:10
14:12 rurban joined
unmatched} oh, you responded. *reads* 14:12
jkramer Also is there a way to check if something has a trait? E.g. $routine.has-trait('foo') or something 14:13
unmatched} Well, I've no idea what address is the right one. It's just not the first time I see replies to tickets in the compiler list that are basically lost, since there's nothing replicated to the ticket *shrug* 14:14
14:15 rindolf joined
dalek c: dc52b87 | coke++ | doc/Language/faq.pod6:
use actual version literal
14:15
lizmat m: sub a() is hidden-from-backtrace {}; say &a.?is-hidden-from-backtrace 14:18
camelia rakudo-moar 6d1e95: OUTPUT«True␤»
lizmat m: sub a() {}; say &a.?is-hidden-from-backtrace
camelia rakudo-moar 6d1e95: OUTPUT«Nil␤»
lizmat jkramer: something like that? ^^^
jkramer lizmat: Yes, but for random traits :) Like, my own self-defined ones
lizmat well, if they consist of mixing in something into the sub, than that would be the way to do it 14:19
unmatched} m: say $*VM.version after 2016.07
camelia rakudo-moar 6d1e95: OUTPUT«True␤»
unmatched} m: say $*VM.version before 2016.07
camelia rakudo-moar 6d1e95: OUTPUT«False␤»
jkramer You mean just inject a is-my-trait method?
unmatched} Version has this magic treatment of Rats?
m: say $*VM.version.Rat 14:20
camelia rakudo-moar 6d1e95: OUTPUT«Method 'Rat' not found for invocant of class 'Version'␤ in block <unit> at <tmp> line 1␤␤»
lizmat jkramer: you see, when you add a trait, you're basically just executing a sub at compile time
jkramer: whatever that sub does, is up to you
unmatched} m: say 2016.07.Version
camelia rakudo-moar 6d1e95: OUTPUT«Method 'Version' not found for invocant of class 'Rat'␤ in block <unit> at <tmp> line 1␤␤»
jkramer Yeah I know. I just thought it would keep track of that somewhere and I could check it later :)
lizmat this is the implementation of is-hidden-from-backtrace: 14:21
multi sub trait_mod:<is>(Routine:D $r, :$hidden-from-backtrace!) {
$r.^mixin( role { method is-hidden-from-backtrace { True } } );
}
dalek c: 17969cf | (Zoffix Znet)++ | doc/Type/Instant.pod6:
Use version literal
lizmat jkramer: there is no keeping track unless you do it yourself :-)
14:26 rurban left
jkramer lizmat: Alright, thanks :) 14:27
14:29 abraxxa1 joined, abraxxa left
holyghost lizmat: thanks for that (^mixin) 14:33
now I understand roles 14:34
14:35 FROGGS joined 14:38 abraxxa1 left
unmatched} m: DateTime.new("2016-12-31T23:59:60") 14:38
camelia ( no output )
unmatched} star: DateTime.new("2016-12-31T23:59:60")
camelia star-m 2016.04: OUTPUT«Second out of range. Is: 60, should be in 0..^60; There is no leap second on UTC 2016-12-31␤ in block <unit> at <tmp> line 1␤␤»
14:38 abraxxa joined
unmatched} ^ another worm from the leap second can :) 14:38
harmil Sorry for the utterly weird bug report, but it was strange enough behavior I thought I should rakudobug it. 14:40
rt.perl.org/Public/Bug/Display.html?id=128751
timotimo right, you can apparently make a program crash if you can supply it with a date that's valid to the rest of the system, but not to rakudo 14:41
unmatched} I wonder how evil an idea would be to expose this to the user: github.com/rakudo/rakudo/blob/6d1e...ls.pm#L841
And have a module that adds new seconds to it. So you can keep updating the module with new leap seconds that will be effectively updating the Rakudo's leap second table 14:42
bisect: for 1..100 -> $i { say (((^$i).map: {^$_}) <<(-)>> ((^($i+1)).map: {$_ xx $i})) } 14:43
Oh shit
timotimo isn't it supposed to be "bisectable:"? 14:44
unmatched} bisect: 2+2
bisectable: 2+2
I think both work. And now it's churning my first one.
timotimo mhm 14:45
m: for 1..100 -> $i { say (((^$i).map: {^$_}) <<(-)>> ((^($i+1)).map: {$_ xx $i})) }
camelia rakudo-moar 6d1e95: OUTPUT«(timeout)WARNINGS for <tmp>:␤Useless use of $_ in sink context (line 1)␤(() ())␤(() (set(0) set(0)) ())␤(() (set(0) set(0) set(0)) (set(0) set(1) set(0)) ())␤(() (set(0) set(0) set(0) set(0)) (set(0) set(1) set(0) set(1)) (set(0) set(1) set(2) se…»
timotimo m: .perl.say for [\,] ^100 14:46
camelia rakudo-moar 6d1e95: OUTPUT«(0,)␤(0, 1)␤(0, 1, 2)␤(0, 1, 2, 3)␤(0, 1, 2, 3, 4)␤(0, 1, 2, 3, 4, 5)␤(0, 1, 2, 3, 4, 5, 6)␤(0, 1, 2, 3, 4, 5, 6, 7)␤(0, 1, 2, 3, 4, 5, 6, 7, 8)␤(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)␤(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)␤(0, 1, 2, 3, 4, 5, 6, 7…»
timotimo are you interested in this kind of thing?
14:47 bisectable left
unmatched} I was just trying to see if bisectable could point to a commit that shows what fixed harmil's bug 14:47
14:48 ribasushi left
unmatched} harmil: there's a newer R*. Are you able to try with it? rakudo.org/downloads/star/rakudo-st...0(JIT).msi 14:48
harmil will do later, got a delivery so now I'm off to @job[0] 14:49
unmatched} I should probably do the same...
lizmat unmatched}: all for exposing the dates / posix values 14:52
but would probably not be in favour of allowing it to be added upon
rather, so it can serve as a basis of a module that *does* allow adding ?
14:52 sufrostico left
lizmat hmmm... 14:52
14:53 wamba left
nebuchadnezzar Is it on purpose that some module names or method references are not links to their definition ? like the antepenultimite and last paragraphes in docs.perl6.org/language/ipc ? 14:53
unmatched} The module can even be updated automatically, by setting a script to watch when Rakudo adds new seconds 14:54
14:54 ribasushi joined 14:55 skids joined
unmatched} nebuchadnezzar: don't think there's any hard reason. Just the person writing it used a C<> Pod marker rather than an L<> OTOH, I've no idea if L<IO::Path> would automatically make a link to that type 14:55
moritz nebuchadnezzar: probably just laziness on part of the authors
14:56 acrussell joined
nebuchadnezzar moritz: ok, so it does not hurt if I convert some C<> to L<> ? 14:56
unmatched} nebuchadnezzar: also RE your previous comments about highlighting on docs.perl6.org/language/quoting The reason code is not highlighted is because there's a bug that prevents highlighting when B<> or the like are used in the code sample. And I'm guessing the plain-text samples are highlighted as code simply because they're marked up as code. 14:57
moritz nebuchadnezzar: it would be appreciated if you do that
nebuchadnezzar unmatched}: yes, moritz confirm that too
unmatched} oh
nebuchadnezzar moritz: ok, I'll do that, it's frustrating to search a clickable link when jumping to a part of a documentation 14:59
15:00 cyphase left 15:05 cyphase joined, Tonik joined
dalek c/css_animation: 917be4d | Altai-man++ | html/ (2 files):
Css-based animation for TOC.
15:10
15:11 rurban joined
sena_kun Ah. 15:11
Wrong file.
unmatched} I'd say: 1 missing file. Both sass and css need to be updated 15:12
(at least until next week)
15:12 khw joined
sena_kun unmatched}, I noticed it just now. :) I'll update it now... 15:12
15:12 rindolf left
dalek c/css_animation: 5c3916b | Altai-man++ | assets/sass/style.scss:
Actually needed SASS-file, fix for of previous commit
15:13
sena_kun Autocomplete of filepaths is evil sometimes. 15:15
15:16 rindolf joined
sena_kun Ah, I've ruined all the PR. Maybe not my day. 15:17
s/PR/branch
unmatched} sena_kun: how did you ruin the branch? 15:18
dalek osystem: e9af3ed | (Peter Pentchev)++ | META.list:
Add Test::Deeply::Relaxed to the ecosystem.

Loosely compare two data structures in depth.
osystem: 204be27 | Altai-man++ | META.list:
Merge pull request #229 from ppentchev/roam-test-deeply-relaxed

Add Test::Deeply::Relaxed to the ecosystem.
sena_kun unmatched}, I forked it not from master, but from another branch, so it can't be merged without this another branch changes. 15:19
unmatched} github.com/ppentchev/perl6-Test-Deeply-Relaxed
I'm still waiting for someone to do P6 version of P5's Test::Deep(ly?) 15:20
So you could, say, compare data structures that have timestamps or other volatile info by checkign them with regexes, while doing exact matches for other keys in a hash or array
[Coke] unmatched}: I've already pinged the rt bug admins and pointed them to that ticket, I'll let you know what I hear back.
unmatched} [Coke]++ 15:21
dalek c/animated_css: 8d8f62f | Altai-man++ | / (2 files):
Css-based TOC animation
15:25
15:25 rurban left 15:31 travis-ci joined
travis-ci Doc build passed. Altai-man 'Css-based animation for TOC.' 15:31
travis-ci.org/perl6/doc/builds/147786240 github.com/perl6/doc/commit/917be4d16b76
15:31 travis-ci left 15:35 travis-ci joined
travis-ci Doc build passed. Altai-man 'Actually needed SASS-file, fix for of previous commit' 15:35
travis-ci.org/perl6/doc/builds/147787164 github.com/perl6/doc/compare/917be...3916bbb963
15:35 travis-ci left 15:36 bisectable joined
bisectable unmatched}: Exit code is 0 on both starting points, bisecting by using the output 15:36
unmatched}: bisect log: gist.github.com/e83b51a5a4032fced1...8d37a5cbe9
unmatched}: (2015-12-25) github.com/rakudo/rakudo/commit/07fecb5 15:37
unmatched}: On both starting points the exit code is 0 and the output is identical as well
unmatched}: Output on both points: WARNINGS for /tmp/Q_XxJSFL8Q:␤Useless use of "+" in expression "2+2" in sink context (line 1)
unmatched}: On both starting points the exit code is 0 and the output is identical as well
unmatched}: Output on both points: WARNINGS for /tmp/fY8PKahj4r:␤Useless use of "+" in expression "2+2" in sink context (line 1)
unmatched} :D
FWIW that animation code can be greatly simlified. The JS bit can just be Cookies.set('toc_state', el.text() == '[hide]' ? 'hidden' : 'shown'); el.parents('nav').find('tbody').toggleClass('hiddenTOC'); or something similar and the CSS code can use one class/classless to style + the vendor prefixes can all go away, since all browsers that we support can handle `transition` 15:39
15:39 sno left
unmatched} sena_kun: this needs to be converted to a class toggle too: github.com/perl6/doc/blob/8d8f62fe...ain.js#L40 15:40
Right now once you hide toc you can't unhide it, from what I see
err... well, the conditional below it... that still calls .hide() 15:41
15:42 jkramer left
sena_kun unmatched}, ah, right, this should be changed too. I didn't know about safe prefixes, so I went with all-case variant. Yes, I'll update it now. 15:42
unmatched} sena_kun++ 15:43
15:44 travis-ci joined
travis-ci Doc build passed. Altai-man 'Css-based TOC animation' 15:44
travis-ci.org/perl6/doc/builds/147789719 github.com/perl6/doc/commit/8d8f62fe7203
15:44 travis-ci left 15:51 cdg joined 15:53 MorayJ left 16:03 mcmillhj left 16:06 domidumont left 16:07 andrewb joined 16:08 andrewb is now known as Guest60689 16:09 Guest60689 left 16:18 Aggressively_Alp joined 16:21 ParsonsNose left 16:25 abraxxa left 16:28 cdg left 16:30 zakharyas joined 16:31 ParsonsNose joined 16:32 cdg joined 16:35 Aggressively_Alp left 16:37 salv0 left 16:40 acrussell left 16:42 kurahaupo left 16:43 hursh joined 16:44 zakharyas left 16:46 mcmillhj joined
hursh Does anyone know if the latest star release should build on SLES11? 16:47
"make_path" is not exported by the File::Path module
moritz hursh: what's the perl 5 version? 16:48
hursh Looks like perl 5.10 is too old. I'm just wondering if that's intentional.
dalek c: 62cc649 | (Jan-Olof Hendig)++ | doc/Type/Pair.pod6:
Added docs for Pair.keys
moritz hursh: no, we don't intentionally break the build :-)
though 5.10 is *OLD* 16:49
hursh :-) I mean stop supportting version of perl older than ???
SLES11 is old.
ok
moritz afaict we still try to support 5.10.1 at least
or maybe 5.10.0
hursh I'm building it for the systems in my cluster. Just wondering I need to skip sles11. 16:50
stmuk I think there are recent dependencies on versions of perl > 5.10
hursh perl-base-5.10.0-64.72.1 is the problem here. File::Path is too old.
TimToady m: 42 xx 42 16:51
camelia rakudo-moar 4c848b: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant integer 42 in sink context (line 1)␤»
TimToady m: my method bar($a) { $a xx 42 }
camelia ( no output )
TimToady with latest change, finds a real bug in the setting 16:52
in src/core/Block.pm: my $need_cap = $sig.count == Inf and not ($slurp_p and $slurp_n);
skids: ^^^ your code, according to git :) 16:53
16:53 trnh left
TimToady oh, this isn't -dev oops 16:54
16:54 hursh left
dalek c/animated_css: 21893b2 | Altai-man++ | / (2 files):
Simplification of both js and css code for animation
16:56
sena_kun afk for an hour, reviews are still welcome. 17:00
unmatched} sena_kun: looks good to me
17:05 firstdayonthejob joined 17:08 trnh joined 17:13 spider-mario joined, AlexDaniel joined, spider-mario left 17:14 spider-mario joined 17:26 Coleoid_n joined 17:27 Aggressively_Alp joined 17:28 rurban joined
Coleoid_n Hi, #perl6! 17:29
unmatched} \o
Coleoid_n I updated to R* 2016.07 and the REPL seems kaput, is that a known issue?
unmatched} Coleoid_n: nope. What's the issue? 17:30
17:30 ParsonsNose left 17:31 dakkar left, ParsonsNose joined
Coleoid_n I enter perl6 on the command line and it returns without output. I'll put together a paste if that's useful. 17:32
unmatched} 0.o
What OS?
Coleoid_n I'm on Win 10 in Powershell.
17:32 huggable joined
Coleoid_n I'll try it in cmd... 17:33
17:34 Aggressively_Alp left
Coleoid_n Also weird, in cmd it reports "Access is denied." and exits. 17:34
unmatched} Coleoid_n: Would you please report it as a bug? Testing such basic operation of REPL is part of the build process, so it's really weird that it slipped through. Please include some details about OS and any installed tools and modules that may affect this.
huggable: rakudobug 17:35
huggable unmatched}, To report a bug, email detailed description and any test cases to [email@hidden.address] or use perl6 query on rt.perl.org ; see github.com/rakudo/rakudo/#reporting-bugs
Coleoid_n I'm newly updated to Win 10, so it could be an issue with that.
unmatched} I got Win10 at home and REPL worked fine there last time I tried.
(via cmd.exe)
Coleoid_n I'll send that report, after poking it a bit more. Thanks! 17:36
17:37 domidumont joined
stmuk maybe it's a perms/ownership issue? 17:38
do you get the same error opening a cmd.exe windows as Adminstrator? 17:39
Coleoid_n perl6 -v works in a shell with admin permissions, otherwise another "access denied", and I'm having other perms issues, so I believe you're right, stmuk.
stmuk :) 17:40
gfldex Coleoid_n: can't reproduce on a clean Win10 VM. I didn't upgrade tho (hence clean). 17:41
Coleoid_n Oh, that's another possibility. When I was upgrading, I ran into file overwrite problems. I'll do an uninstall and clean reinstall. 17:42
(of R*)
17:42 Aggressively_Alp joined 17:44 sufrostico joined 17:46 ParsonsNose left 17:50 trnh left, trnh joined, trnh left, trnh joined
[Coke] ok, this is so off topic, but I was just followed by "Beverage Consulting, liquid brands management"... probably because I've got a coke in my name... and their handle is @liquidbm 17:55
I realize younger than me and you probably won't get why that's a.. crappy nick, but damn. 17:56
Coleoid_n Blugh.
Guess I'm >= your age, then, Coke.
unmatched} doesn't get why that's a crappy nick
[Coke] bm is what my grandmother called a bowel movement. 17:57
unmatched} heh 17:58
Yeah, google search corroborates that usage.... Right after showing Beverage Consulting as first result :P
[Coke] is 40 something.
unmatched} is 15
dalek sectbot: eee0383 | (Aleks-Daniel Jakimenko-Aleksejev)++ | bisectable.pl:
Reduce bisectable timout

Given that this timeout is per each run, 200 is a bit too much. Each bisect query should test about 12 commits, so with the previous limit it meant that it would hang for half an hour.
Now it will hang for two minutes, but that's okay.
17:59
AlexDaniel unmatched}: ↑ hehe 18:00
[Coke] unmatched}: seriously? huh.
stmuk is 31 (but not in base 10) 18:01
unmatched} [Coke]: sure, why not. It's not like I would make something like this up.
And my 10-years of Perl experience are also true :) 18:02
I started writing code when I was 3. My mother read me programming manuals in leu of children's books :D 18:03
hoelzro didn't start coding until 17 =/
unmatched}: good on you for getting an early start =)
unmatched} :D
18:04 mcmillhj left
AlexDaniel how can I do that with a loop? 18:04
m: say :4<31>; say :5<31>; say :6<31>; say :7<31>; say :8<31>; say :9<31>; say :10<31>; say :11<31>; say :12<31>;
camelia rakudo-moar 4c848b: OUTPUT«13␤16␤19␤22␤25␤28␤31␤34␤37␤»
18:06 bisectable left, zacts joined, bisectable joined
AlexDaniel bisect: for 1..100 -> $i { say (((^$i).map: {^$_}) <<(-)>> ((^($i+1)).map: {$_ xx $i})) } 18:07
:P
[Coke] started somewhere between zz and hoelzro 18:10
18:11 lambd0x joined
lambd0x Hi everyone o/ 18:11
unmatched} I was kidding lol. I'm 30 and I started coding at 14 :)
hoelzro o/ lambd0x
gah
I'm way too gullible =S
unmatched} lol
18:11 bisectable left
AlexDaniel nah, still not enough 18:12
18:12 mst left, mst joined
lambd0x people is there a way to take an existing image open it and show it in a program? 18:13
perlpilot lambd0x: "is there a way to ..." style questions mostly have an answer of "yes, but ..." and it's the "but ..." part you really need to know about :) 18:14
[Coke] jnthn: found another segfault for you in RT #123434 18:15
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123434
[Coke] ww
18:16 bisectable joined
unmatched} m: use MONKEY-GUTS; nqp::radix($_, "31", 0, 0)[0].say for 4..12 18:17
camelia rakudo-moar 4c848b: OUTPUT«13␤16␤19␤22␤25␤28␤31␤34␤37␤»
unmatched} AlexDaniel: there's that. No idea how to do with P6 tho
lambd0x perlpilot: I wanted to display an image to the user I've found inumerous ways of read, manipulation, etc. but not that though. 18:18
perlpilot lambd0x: maybe one of the SDL or Gtk modules has something for you? 18:19
18:19 itaipu joined
perlpilot lambd0x: there may be others, search modules.perl6.org 18:19
gfldex m: 31.base($_).say for 2..16;
camelia rakudo-moar 4c848b: OUTPUT«11111␤1011␤133␤111␤51␤43␤37␤34␤31␤29␤27␤25␤23␤21␤1F␤»
18:20 Tonik left
lambd0x perlpilot: In our modules there're some about that creates an image and even apply some effect or resize it. But not for displaying it really. 18:21
unmatched} lambd0x: there are some GTK modules modules.perl6.org/#q=GTK%3A%3A and SDL2 module: github.com/timo/SDL2_raw-p6
lambd0x: but it also depends on your audience and purpose. `run "eog", $image` works fine on my box :) 18:22
lambd0x perlpilot: yes, but I wanted something OS independent.. 18:23
unmatched} Show it in a browser :P
There's probably a way to queue what the system's default thing for browing is
18:24 mcmillhj joined
lambd0x unmatched}: unmatched} hm... true. Is there a native way of doing it. or better rakudo perl already support it? 18:24
unmatched} No idea.
lambd0x unmatched}: ahahah 18:25
unmatched} heh
lambd0x unmatched}: Prob in perl 5 there is.
if not in rakudo perl 6 :)
thanks guys
geekosaur windows has a reliable way to open the default browser. os x has one with some edge cases. most linux does *not* have a reliable way; the documented one (xdg-open) is widely mis-implemented and often buggy 18:28
hoelzro hehe, edge cases =P
lambd0x ahahaha 18:30
skids Well, on sensible linux systems, you have sensible-browser 18:32
unmatched} lol. I ran it not expecting much, but turns out it works 18:34
lambd0x :)
unmatched} Event starts lynx on my headless debian server
sena_kun Since nobody is against, I'm merging css-animation for the TOC now. 18:38
unmatched} sena_kun++
dalek c: 8d8f62f | Altai-man++ | / (2 files):
Css-based TOC animation
c: 21893b2 | Altai-man++ | / (2 files):
Simplification of both js and css code for animation
c: 60aa1dd | Altai-man++ | / (2 files):
Merge pull request #767 from perl6/animated_css

Css-based TOC animation
18:42 acrussell joined 18:45 wamba joined, rurban1 joined 18:47 ParsonsNose joined, Aggressively_Alp left 18:49 trnh left 18:50 rurban left, rurban1 left 18:54 rurban joined, rurban left, lambd0x left 18:55 Actualeyes left 18:56 labster joined 19:04 zacts left, trnh joined 19:05 domidumont left
harmil m: say [*] set(1,2,3) 19:06
camelia rakudo-moar debc7c: OUTPUT«set(3, 1, 2)␤»
harmil Is it wrong of me to expect that to be 9?
moritz yes
a set is not a list
harmil Is it wrong of me to think that I'm not the last person who is going to ask that? 19:08
unmatched} Well, also 9 is a wrong number :)
m: say [*] set(1,2,3).keys
camelia rakudo-moar debc7c: OUTPUT«6␤»
harmil Sorry, I 'm upside down :)
I meant 6
unmatched} m: say [*] set(1,2,3), set(4,5,6) 19:09
camelia rakudo-moar debc7c: OUTPUT«9␤»
unmatched} ehehe
harmil Well, obviously. 19:10
perlpilot harmil: what would a reasonable person think the result of multiplying two sets should be? (or a set by a number?)
hoelzro I understand the concern that unmatched}'s snippet above doesn't look like multiplying sets together 19:11
harmil I would expect that either it would warn, error or resort to a hyperoperation of the requested nonsensical operation.
[Coke] Looks fine to me.
m: say +set(1,2,3)
camelia rakudo-moar f0abe8: OUTPUT«3␤»
hoelzro to me as well - but I understand how newbies could get tripped up on that
[Coke] ^^ good luck keeping that and making [*] warn instead of using it.
19:11 rangerprice joined
hoelzro my $a = set(1..3); my $b = set(4..6); say [*] $a, $b; 19:12
that makes it more obvious
[Coke] m: my $a = set(1..3); my $b = set(4..6); say [*] $a, $b;
camelia rakudo-moar f0abe8: OUTPUT«9␤»
harmil The idea that set(1,2,3) and [1,2,3] are fundamentally incompatible views of collections of integers seems confusing to me
One is an ordered list one is unordered. That's really the end of it
19:13 sno joined
harmil ((logically)) 19:13
hoelzro my first "real" programming language was Java, so I'm biased in thinking that it makes sense
(because the Java collections API defines a List as an ordered sequence of values, and a Set as an unordered collection of values) 19:14
the important thing about a list is order; whereas the important thing about a set is membership
unmatched} harmil: set is a collection of pairs, really 19:15
m: dd set(1,2,3)
camelia rakudo-moar f0abe8: OUTPUT«set(3,1,2)␤»
unmatched} m: dd |set(1,2,3)
camelia rakudo-moar f0abe8: OUTPUT«3 => Bool::True␤1 => Bool::True␤2 => Bool::True␤»
perlpilot Some multis for infix:<*> that took into account Set and warned might still be useful and non-onerus for those that would use sets
unmatched} m: my $s = SetHash.new: 1,2,3; $s<2> = 42; say $s 19:16
camelia rakudo-moar f0abe8: OUTPUT«SetHash.new(3, 2, 1, 2)␤»
unmatched} harmil: ^ this in particular is a curious effect.
m: my $s = SetHash.new: 1,2,3; $s<2> = 42; dd|$s
camelia rakudo-moar f0abe8: OUTPUT«WARNINGS for <tmp>:␤Useless use of "|" in expression "dd|$s" in sink context (line 1)␤block <unit>␤»
unmatched} m: my $s = SetHash.new: 1,2,3; $s<2> = 42; dd |$s
camelia rakudo-moar f0abe8: OUTPUT«3 => Bool::True␤IntStr.new(2, "2") => Bool::True␤1 => Bool::True␤2 => Bool::True␤»
unmatched} m: my $s = SetHash.new: 1,2,3; $s{2} = 42; say $s 19:17
camelia rakudo-moar f0abe8: OUTPUT«SetHash.new(3, 1, 2)␤»
unmatched} This, I guess is better. You can't have more than one member.
That's the same
harmil I understand the implementation and the concept of bags, etc. I'm just asking why we're exposing that complexity at the level of trying to iterate over an object ala [*] [1,2,3] (which does produce 6,)
[Coke] m: say "this".path.WHAT
camelia rakudo-moar f0abe8: OUTPUT«(Path)␤»
unmatched} m: say Set ~~ Iterable 19:18
camelia rakudo-moar f0abe8: OUTPUT«False␤»
unmatched} m: say [] ~~ Iterable
camelia rakudo-moar f0abe8: OUTPUT«True␤»
unmatched} m: say Hash ~~ Iterable
camelia rakudo-moar f0abe8: OUTPUT«True␤»
unmatched} *shrug*
m: say [*] set(1,2,3) but Iterable 19:20
camelia rakudo-moar f0abe8: OUTPUT«Cannot resolve caller Numeric(Pair: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at <tmp> line 1␤␤»
unmatched} m: use MONKEY-TYPING; augment class Pair { method Numeric { self.key } }; say [*] set(1,2,3) but Iterable 19:21
camelia rakudo-moar f0abe8: OUTPUT«6␤»
unmatched} ehehe. I ♥ Perl 6 :)
19:22 darutoko left 19:23 rangerprice left, rangerprice joined, rangerprice left
mniip so uh, any good resource for jumping straight into perl6? 19:25
unmatched} m: use MONKEY-TYPING; augment class Set does Iterable {}; augment class Pair { method Numeric { self.key } }; say [*] |set(1,2,3), |set(4,5,6)
camelia rakudo-moar f0abe8: OUTPUT«720␤»
unmatched} mniip: straight from where?
mniip I don't know, generic programming experience? 19:26
perl 5 perhaps?
harmil I highly recommend the docs site. It has a lot of good high-level starting points
unmatched} mniip: for P5 we have a few 5-to tuts here: docs.perl6.org/language.html
mniip: general; I guess Learn X in Y is a good site: learnxinyminutes.com/docs/perl6/
mniip what I mean is I'm not looking for tutorials on programming 19:27
unmatched} huggable: new
huggable unmatched}, See "For Newcomers" section on perl6.org/documentation/
hoelzro oh, hi mniip =)
unmatched} mniip: yeah, LearnXinY is a good place. It just goes through concepts
s/concepts/ways to do things in P6/; 19:28
mniip mhm
also hi hoelzro
what happened between you and lua :p
unmatched} There's also perl6intro.com/ but I've no idea what its target readers are 19:29
hoelzro I still use it - I've just been taking a break from #lua
19:29 lichtkind joined
[Coke] also, rosettacode is good for "I know how to solve this problem in X, how do I solve it in Y?" 19:30
Perl 6 has pretty good coverage there.
mniip huh 19:33
identifiers can contain apostrophes but not at the end? 19:34
hoelzro yup
unmatched} And hyphens too
m: my \this-is-friggin'-awesome;
camelia rakudo-moar f0abe8: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Term definition requires an initializer␤at <tmp>:1␤------> 3my \this-is-friggin7⏏5'-awesome;␤»
unmatched} m: my \this-is-friggin'-awesome = 'meow';
camelia rakudo-moar f0abe8: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Term definition requires an initializer␤at <tmp>:1␤------> 3my \this-is-friggin7⏏5'-awesome = 'meow';␤»
mniip I think you need an alpha between ' and -
unmatched} heh. I guess not followed by a hyphen either :D
m: my \this-is-friggin'so-awesome = 'meow'; 19:35
camelia ( no output )
unmatched} m: my \Δ = 42; say Δ
camelia rakudo-moar f0abe8: OUTPUT«42␤»
unmatched} ^_^
gfldex m: say 'foo{my $a'b}bar'
camelia rakudo-moar f0abe8: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3say 'foo{my $a'7⏏5b}bar'␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end␤ statement modifie…»
gfldex m: say Q:c'foo{my $a'b}bar' 19:36
camelia rakudo-moar f0abe8: OUTPUT«5===SORRY!5===␤Unrecognized adverb: :c'foo␤at <tmp>:1␤------> 3say Q:c'foo7⏏5{my $a'b}bar'␤Strange text after block (missing semicolon or comma?)␤at <tmp>:1␤------> 3say Q:c'foo{my $a'b}7⏏5bar'␤ expecting any of:␤ …»
mniip in haskell you add ' at the end of a function name to denote some small difference, e.g more strictness, not sure what the point of having ' in identifiers is in perl with that restriction
gfldex m: say Q:c 'foo{my $a'b}bar'
camelia rakudo-moar f0abe8: OUTPUT«Use of uninitialized value $a'b of type Any in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block <unit> at <tmp> line 1␤foobar␤»
unmatched} Probably something to do with single-parse parsing and it needing to know where terms end and stuff 19:39
19:39 TEttinger joined
[Coke] .u u+F8F6 19:40
yoleaux No characters found
mniip no I mean I understand why it might be ambiguous without the restriction but then why have ' at all
unmatched} mniip: to write things like doesn't-hang() (actual sub from our test suite)
There was a talk about ditching it before Christmas release, but luckily reason prevailed ^_^ 19:41
m: "\x[F8F6]".uninames.say
camelia rakudo-moar f0abe8: OUTPUT«(<Private Use>)␤»
mniip is glad he isn't using his 'm' nickname on a regular basis 19:42
unmatched} :D 19:43
mniip "Reduction operators work on lists of values. They are formed by surrounding the operator with brackets []" 19:44
is that a right fold, a left fold, or is associativity assumed
unmatched} m: say [*] ^4
camelia rakudo-moar f0abe8: OUTPUT«0␤»
unmatched} m: say [*] 1, 2, 3
camelia rakudo-moar f0abe8: OUTPUT«6␤»
unmatched} m: say [\*] 1, 2, 3 19:45
camelia rakudo-moar f0abe8: OUTPUT«(1 2 6)␤»
unmatched} I don't know what folds are :(
[Coke] [*] is on a single list, does that even have a fold? 19:46
19:46 hursh joined
geekosaur somehow I think you are talking different languages... 19:47
gfldex mniip: you may want to watch youtu.be/BJIfPFpaMRI?t=2053
[Coke] [*] and [\*] operate left to right, fwiw.
19:50 acrussell left
hoelzro [*] is a fold, [\*] is a scan 19:50
m: [*] ^10
camelia ( no output )
hoelzro m: say [*] ^10
camelia rakudo-moar f0abe8: OUTPUT«0␤»
hursh Hi. I have a stupid question. Where do we report bugs for the star releases?
hoelzro oh, ha
m: say [*] 1..10
camelia rakudo-moar f0abe8: OUTPUT«3628800␤»
hoelzro m: say [-] 1..10 19:51
camelia rakudo-moar f0abe8: OUTPUT«-53␤»
hoelzro m: say [R-] 1..10
camelia rakudo-moar f0abe8: OUTPUT«-35␤»
hoelzro I *think* using [R-] would be the right way to effectively make the fold go the other way
gfldex hursh: [email@hidden.address] 19:52
mniip hmm
geekosaur my recollection is it's supposed to introspect the operator to determine associativity? (because iirc someone was noting it didn't work with exponentiation the other day?)
hursh gfldex: Thanks 19:54
mniip all these functional-ish features crammed into syntax 19:55
harmil Tried to do the monkey typing on set... less than clear on my results: 19:56
m: use MONKEY-TYPING; augment class Set does Iterable { method iterator { self.keys }; method lazy { self.iterator.lazy } }; say [*] set(1,2,3)
camelia rakudo-moar f0abe8: OUTPUT«Cannot resolve caller Numeric(Pair: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at <tmp> line 1␤␤»
dalek c: c23d0f7 | (Jan-Olof Hendig)++ | doc/Type/Pair.pod6:
Added docs for Pair.values
19:57 mantovani joined
[Coke] if you augment an existing class, you might have to re compose it. 19:58
jnthn um...that method iterator ain't gonna work out well, it's not returning an iterator. 20:00
harmil Should i be calling .keys.iterator? 20:02
THat gives the same error
20:04 ZoffixMobile joined
ZoffixMobile The error is because pair can't do Numeric. See unmatched's examples above 20:04
Also note: augmentation affects your entire program. You shouldn't be using it willy-nilly 20:05
harmil m: use MONKEY-TYPING; augment class Set does Iterable { method iterator { self.keys.iterator }; method lazy { self.keys.lazy } }; say [*] set(1,2,3)
camelia rakudo-moar f0abe8: OUTPUT«Cannot resolve caller Numeric(Pair: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at <tmp> line 1␤␤»
harmil But why should a pair be produced when I'm explicitly iterating over the keys? 20:06
I'
ZoffixMobile dunno 20:07
harmil Hmm... I'll work on this more tomorrow.
konobi pmurias: how goes? 20:09
20:12 mcmillhj left 20:14 CIAvash left
mniip why is Mu called what way? is it related to the least fixed point combinator? 20:15
ZoffixMobile huggable, Mu name
huggable ZoffixMobile, "M"ost "u"ndefined. Or philosophical: "The nothing from which everything proceeds"
20:18 molaf left 20:19 mcmillhj joined
rindolf ZoffixMobile: meow! Sup? 20:21
ZoffixMobile Hi
20:23 mcmillhj left
jdv79 rindolf: hows tge weather? 20:24
rindolf jdv79: it's very warm.
jdv79: and sunny - though now it's past nightfall. 20:25
jdv79 its a bit of a scorcher here as well
rindolf jdv79: how is it there?
jdv79: ah.
20:27 ZoffixMobile left
AlexDaniel re [*] set(1,2,3) discussion 20:35
m: say [*] set(1,2,3) # ok, I get it
camelia rakudo-moar f0abe8: OUTPUT«set(3, 1, 2)␤»
AlexDaniel m: say [*] set(1,2,3), set(4,5,6) # hmmm… 20:36
camelia rakudo-moar f0abe8: OUTPUT«9␤»
gfldex m: say [*] 3, 3
camelia rakudo-moar f0abe8: OUTPUT«9␤»
AlexDaniel gfldex: sure, I am just surprised that the first one is not 3
gfldex the first one should produce some undefined value 20:37
m: say 3 * NaN
camelia rakudo-moar f0abe8: OUTPUT«NaN␤»
[Coke] m: say [*] 3
camelia rakudo-moar f0abe8: OUTPUT«3␤»
[Coke] m: m: say [*] set(1,2,3) 20:38
camelia rakudo-moar f0abe8: OUTPUT«set(3, 1, 2)␤»
20:39 mcmillhj joined
[Coke] the metaop might be returning $arg there, instead of +$arg 20:41
20:43 mcmillhj left
[Coke] m: say set(1,2,3).Numeric.perl; 20:44
camelia rakudo-moar f0abe8: OUTPUT«3␤»
20:47 mcmillhj joined
AlexDaniel soooo… is it a bug? 20:47
[Coke] m: say [*] (3i+2)
camelia rakudo-moar f0abe8: OUTPUT«2+3i␤»
[Coke] m: say [*] bag(1,2,3) 20:48
camelia rakudo-moar f0abe8: OUTPUT«bag(3, 1, 2)␤»
20:48 jonas2 left
[Coke] m: infix:<*>(3).say 20:48
camelia rakudo-moar f0abe8: OUTPUT«3␤»
perlpilot m: say [+] set(6,7,8)
camelia rakudo-moar f0abe8: OUTPUT«Cannot resolve caller Numeric(Pair: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at <tmp> line 1␤␤»
[Coke] m: infix:<*>(set(1,2,3)).say
camelia rakudo-moar f0abe8: OUTPUT«3␤»
[Coke] O_O; 20:49
gfldex AlexDaniel: there is a bug somewhere
perlpilot concurs
[Coke] I would expect [*] *THING* to match infix:<*>(*THING*)
20:49 kurahaupo joined
jnthn Not the *THING* is iterable you wouldn't :) 20:50
[Coke] I would also expect [*] *THING* to be the same as [*] +*THING*
gfldex also there is ENODOCS because we don't doc what happens with lists with 1 element
jnthn I guess the set iterates through its elements
m: my @a = 1,2,3; say [+] @a
camelia rakudo-moar f0abe8: OUTPUT«6␤»
jnthn m: my @a = 1,2,3; say infix:<+> @a
camelia rakudo-moar f0abe8: OUTPUT«3␤»
jnthn Just like that 20:51
20:51 kurahaupo left
jnthn m: my @a = 1,2,3; say [+] @a, 4 20:51
camelia rakudo-moar 8ede35: OUTPUT«7␤»
[Coke] gfldex: for [*] ops, we should. (there's a default condition for each of the ops - [*] is the same as *1 on a single list, [+] is the same as +0...)
jnthn Single arg rule in action :)
gfldex m: dd [*] 3; 20:53
camelia rakudo-moar 8ede35: OUTPUT«3␤»
gfldex m: dd [*] (3,);
camelia rakudo-moar 8ede35: OUTPUT«3␤»
gfldex m: dd [-] (3,); 20:55
camelia rakudo-moar 8ede35: OUTPUT«3␤»
AlexDaniel m: 'say [*] ‘abc’
camelia rakudo-moar 8ede35: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in single quotes; couldn't find final "'" ␤at <tmp>:1␤------> 3'say [*] ‘abc’7⏏5<EOL>␤ expecting any of:␤ single quotes␤ term␤»
AlexDaniel m: say [*] ‘abc’
camelia rakudo-moar 8ede35: OUTPUT«abc␤»
sena_kun On docs.perl6.org, how update works? Isn't it preprocesses SASS file to use? It seems I need to push locally generated style.css. No good.
AlexDaniel m: say [/] ‘abc’
camelia rakudo-moar 8ede35: OUTPUT«abc␤»
AlexDaniel m: say [+] ‘abc’
[Coke] identity is the word I was trying to remember there, I think.
camelia rakudo-moar 8ede35: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5abc' (indicated by ⏏)␤ in block <unit> at <tmp> line 1␤␤Actually thrown at:␤ in block <unit> at <tmp> line 1␤␤»
AlexDaniel m: say [-] ‘abc’
camelia rakudo-moar 8ede35: OUTPUT«abc␤»
AlexDaniel WAT
[Coke] sena_kun: yes, you need to build the sass file and commit it 20:56
sena_kun [Coke], thanks.
gfldex AlexDaniel++ bugs++
[Coke] commit the generated file, that is.
committable [Coke]: ¦«the»: Cannot find this revision
[Coke] commit or die!
committable [Coke]: ¦«or»: Cannot find this revision
sena_kun AlexDaniel, thanks for your notice, I've fixed animation now.
dalek c: 318cd11 | (Wenzel P. P. Peppmeyer)++ | doc/Language/operators.pod6:
doc reduction of single element lists
20:57
[Coke] maybe make commit only respond to "commit:" ?
AlexDaniel sena_kun: it seems like you have to update .css file every time you change sass file
perlpilot [Coke]: +1
hursh Is there any methods or tricks to easily commafy a number? (1000000 => 1,000,000)
moritz isn't there an sprintf formatter for that, or something?
AlexDaniel [Coke]: sure-sure, but no. I mean, we are going to rewrite these bots in Perl 6 soon and the thing will go away. 20:58
[Coke] m: say 1000000.flip.comb(3).join(',').flip.say
camelia rakudo-moar 8ede35: OUTPUT«1,000,000␤True␤»
20:58 kurahaupo joined
[Coke] m: 1000000.flip.comb(3).join(',').flip.say # only need one say 20:58
camelia rakudo-moar 8ede35: OUTPUT«1,000,000␤»
dalek c: dc817e6 | Altai-man++ | html/css/style.css:
Style.css was updated
AlexDaniel sena_kun: related: github.com/perl6/doc/issues/662 20:59
sena_kun Thanks. 21:00
hursh [Coke]: cool. Thanks
moritz: I didn't see any.
21:00 kaare__ left 21:01 skids left 21:03 Coleoid_n left
AlexDaniel m: ‘1000000’.comb(-69).say 21:03
camelia rakudo-moar 8ede35: OUTPUT«(1 0 0 0 0 0 0)␤»
21:05 Zoffix joined
Zoffix sena_kun, FWIW, my comments ( github.com/perl6/doc/pull/767#issu...-235719136 ) are based on the locally built version. The ToC doesn't lose its height on narrow pages and briefly looking at it, the reason seems to be font-size on table cells. 21:06
sena_kun Zoffix, can you point me to example of the narrow page? 21:08
Zoffix sena_kun, just resize your browser a bit. The ToC will be at the top of the page instead of the side
sena_kun Zoffix, let's try it...
Zoffix sena_kun, this is what I see when I hide the ToC: blob:http%3A//imgur.com/d279d9df-4560-4e40-a06f-c3bded35dff3 21:09
sena_kun Zoffix, yes, it doesn't, I know. 21:10
Zoffix I mean i.imgur.com/ct2zOGz.png
AlexDaniel right, seeing the same thing here 21:11
Zoffix: should it also stop taking any horizontal space when it is on the left?
otherwise why hide it? 21:12
21:12 rindolf left
sena_kun Zoffix, the reason is: we need to know *exact* max-height of the element to "slide down". The solution can use js to determine it, but it's additional computations. We can just set some "really big" value, but it's terrible solution. Animation I used based on padding and font-size, so height is untouched. 21:12
Zoffix sena_kun, how come do we need exact max-height? 21:13
sena_kun Zoffix, to make animation with css, you need to change (max-)height - minimal(obviously 0px) and normal. This number of different for every page with ToC.
*to know two heights 21:14
21:15 firstdayonthejob left
Zoffix I'd think `auto` would work just fine 21:16
sena_kun Zoffix, no.
21:16 girafe joined, hursh left
sena_kun It doesn't work. 21:16
21:16 mcmillhj left
sena_kun If it were so simple, I wouldn't come up with such solutions like font-size or padding changes. 21:17
21:18 atweiden joined 21:19 itaipu left
sena_kun Of course, we can throw away idea of css-animations(since they're quite restricted) and just use js variant. Or I'm just dumb and someone smarter can patch it. 21:20
AlexDaniel noooo! js animations… 21:22
perhaps we can throw away the idea of animations…
although I have to admit that it looks nice 21:23
Zoffix I thought it was fine before with JS. 21:25
sena_kun Zoffix, jsfiddle.net/thechrisjordan/3Fc7D/23/ - you can try to play with this fiddle if you want.
Zoffix sena_kun, nah. I just tried to fix it and I can make it show/hide fine but not animate 21:26
sena_kun Also, we can use some css-framework with nice no-js animations. But it's a bit too much overkill here.
Zoffix Then I got bored with it :)
Meh. My opinion is we should revert to JS version and be done with it. We're breaking our backs for a some hypothetical case that some hypothetical person who hypothetically actually uses the show/hide slider so often that they will hypothetically dislike our animation style so much that they will hypothetically make their own user stylesheets to override it. 21:27
People with that mentality of doing some sort of nerd features are the same folks who overengineered www.wechall.net/ :) 21:28
AlexDaniel #128757 128758 21:29
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128757
AlexDaniel #128758 21:30
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128758
sena_kun There are one more way(maybe a bit hacky): check browser's width and if it's not wide enough, just hide insted. But it's ridiculously hacky.
Zoffix :o
Just hide? Then people would have to scan the entire document to get what they want 21:31
sena_kun Zoffix, no-no.
I meant "just hide, do not use animation".
Zoffix ah
¯\_(ツ)_/¯
Zoffix opens up an ice-cream shaped like a slice of watermelon and leaves to put finishing touches on IRC::Client 21:32
21:32 FROGGS left, Zoffix left, huggable left
sena_kun AlexDaniel, why do you oppose js-animations so much? We don't use them TOO MUCH, and we already have jquery, so it can't be helped. 21:33
21:33 bdmatatu joined
geekosaur finds websites with animations anywhere from annoying to near impossible to use... 21:35
(sensory issues)
21:37 ptolemarch left 21:38 hursh joined
hursh p6: $_=[+]((1,2,4...*)[1..8**2]) 21:38
camelia ( no output )
hursh p6: .say
camelia rakudo-moar 8ede35: OUTPUT«(Any)␤»
hursh p6: $_=[+]((1,2,4...*)[1..8**2]) ; .say 21:39
camelia rakudo-moar 8ede35: OUTPUT«36893488147419103230␤»
hursh p6: $_=[+]((1,2,4...*)[1..8**2]) ; .=flip
camelia ( no output )
hursh p6: $_=[+]((1,2,4...*)[1..8**2]) ; .=flip ; .say
camelia rakudo-moar 8ede35: OUTPUT«03230191474188439863␤»
hursh p6: $_=[+]((1,2,4...*)[1..8**2]) ; .=flip ; .=comb(3) ; .say 21:40
camelia rakudo-moar 8ede35: OUTPUT«(032 301 914 741 884 398 63)␤»
hursh p6: $_=[+]((1,2,4...*)[1..8**2]) ; .=flip ; .=comb(3) ; .=join(',') ; .say
camelia rakudo-moar 8ede35: OUTPUT«032,301,914,741,884,398,63␤»
hursh p6: $_=[+]((1,2,4...*)[1..8**2]) ; .=flip ; .=comb(3) ; .=flip ; .=join(',') ; .say
camelia rakudo-moar 8ede35: OUTPUT«36 893 488 147 419 103 230␤»
hursh p6: $_=[+]((1,2,4...*)[1..8**2]) ; .=flip ; .=comb(3) ; .=flip ; .=join(",") ; .say 21:41
camelia rakudo-moar 8ede35: OUTPUT«36 893 488 147 419 103 230␤»
hursh rakudo: $_=[+]((1,2,4...*)[1..8**2]) ; .=flip ; .=comb(3) ; .=flip ; .=join(",") ; .say
camelia rakudo-moar 8ede35: OUTPUT«36 893 488 147 419 103 230␤»
21:42 mcmillhj joined, ufobat left
AlexDaniel sena_kun: well, did I say that I oppose it “so much”? :) I slightly oppose all animations (they are rarely useful, most of the time they are just time wasters), but if there are animations, then it feels wrong to do them on JS side… If it has to be done this way, then fine, but I think that “why should we have an animation there?” is a good question 21:43
21:44 hursh left
sena_kun AlexDaniel, I'll reopen issue about this now... 21:44
We need some voting system for a questions like this, eh. And the solution still wouldn't be good for everyone. Eeeh. 21:45
21:46 mantovani left 21:47 mcmillhj left
AlexDaniel sena_kun: 👍 👎 on GitHub work OK as a voting system, however, we are not going to have many votes ;) 21:48
sena_kun We sure aren't...
21:49 mantovani joined, maybekoo2 joined
sena_kun Also, AlexDaniel, I wanted to ask you about my PR for binded search links, can you look at it, please? With this thing merged(or something similar), we can resolve part of Glossary page items and revive search terms like "Regular Expression". 21:49
AlexDaniel sena_kun: I liked it. The number of lines changed is so small! 21:51
21:53 mantovani left
sena_kun It's because I just moved things around, without any parsing/checking/etc. 21:54
I think, if gfldex is agree with merging, we can accept it. 21:55
AlexDaniel yeah. Like, we can have a discussion about whether we should have manually defined items or not, but we already do, so… 21:56
22:00 mcmillhj joined 22:01 maybekoo2 left, mantovani joined 22:03 RabidGravy left 22:04 atweiden left, mcmillhj left 22:05 mantovani left
gfldex sena_kun: code and content should not get mixed if possible, unless is requires tons of work 22:06
dalek c: 2141eca | Altai-man++ | / (3 files):
Now we take predefined search values from outer file
c: ea3b332 | (Wenzel P. P. Peppmeyer)++ | / (3 files):
Merge pull request #763 from perl6/predefined_search

Now we take predefined search values from outer file
AlexDaniel by the way, what about github.com/perl6/doc/pull/762 ? 22:08
everything looks sane, but I know nothing about Callframes
sena_kun gfldex, actually, I've proposed to format search items with some simple markup and parse it manually in htmlify. It will be a bit more work, but for sure much reusable. What do you think about this approach? I can implement it quite easily, I suppose. 22:09
gfldex AlexDaniel: that's actually a language designer question. It may just be an implementation detail that may or may not be subject to change.
sena_kun: unless you know LaTeX well, don't fiddle with anything indexy or ToCy. We need less automatic magic in htmlify rather then more. 22:11
22:12 mcmillhj joined
sena_kun gfldex, I used LaTeX, but. Things pull out other things, and the other things pull out more and more. 22:13
gfldex AlexDaniel: thinking about it, there are already modules in eco that depend on Callframe. I will merge it. 22:14
dalek c: e864f30 | (Sterling Hanenkamp)++ | doc/Language/5to6-perlfunc.pod6:
Update the caller 5-to-6 info
c: cf5210d | (Sterling Hanenkamp)++ | doc/Type/Routine.pod6:
Add documentation for Routine.package
c: ff60064 | (Sterling Hanenkamp)++ | doc/Type/CallFrame.pod6:
Add documentation for CallFrame
c: e1c155e | (Wenzel P. P. Peppmeyer)++ | doc/ (3 files):
Merge pull request #762 from zostay/callframe

Add documentation for Callframe
22:17 mcmillhj left 22:18 firstdayonthejob joined 22:21 mantovani joined
zostay comparing CallFrame/callframe to Backtrace and S06, callframe is missing pieces, but it'll be pretty important to future introspection, profiling, debugging, etc. as the language matures 22:22
gfldex sena_kun: in a ideal world the entire search index and targets for L<> would depend in X<>. Right now there are tons of shortcuts that depend on htmlify. If you write L<Foo> it rewrites the link to L</type/Foo> what corresponds to doc/Type/Foo.pod. That violates S26 and makes LaTeX output really hard.
zostay e.g., there's at least one method that is marked with an NYI exception and the .my information has seems to have some omissions when you actually try to use it 22:23
gfldex sena_kun: my current idea to fix that is Pod::To::Source, that takes $=pod and turnes it back into Perl 6 code. That would allow to transform all bad links into good ones and would allow us to add missing X<> entries for headings. Many headings already got them, so something has to be done there anyway. 22:24
22:26 mantovani left, mcmillhj joined
gfldex sena_kun: also, there are quite a few duplicated anchors thanks to generating them automatically from headings, without taking heading numbers into account. That needs to be fixed for sure. 22:27
22:28 skids joined
sena_kun gfldex, I can be sleepy or dumb right now, but how will it fix our need for pairs of "Term -> Page address(not anchor)"? We really need to fix indexing for sure, I agree with that, but it seems to be a bit different issue. Except that htmlify is overflowing with magic now, of course. 22:29
22:31 mcmillhj left, lichtkind_ joined
gfldex sena_kun: if you parse $=pod and rewrite it you also must have checks. With the checks we can catch all missing bits and problems. Not everything can be fixed automatically but we can warn on odd stuff and fix that by hand. 22:32
sena_kun It's time to read S26.
gfldex, and hard-coded content surely "pass" all checks by design... Yes, it's a problem. 22:34
22:34 spider-mario left 22:35 lichtkind left 22:37 pmurias left 22:39 mcmillhj joined 22:44 mcmillhj left 22:45 sena_kun left 22:47 mohae joined 22:49 mohae_ left 22:50 sena_kun joined 22:52 firstdayonthejob left 23:05 zacts_raincity joined 23:13 cog_ left 23:18 _sri joined
tbrowder re Hinrik's emacs perl6-mode: I have submitted a PR that adds a rudimentary imemu Index for subs and vars. If interested my fork is at github.com/tbrowder/perl6-mode (branch "my-branch") 23:21
sena_kun tbrowder, I doubt he is here now. But updates of emacs perl6-mode are always welcome(at least for me). 23:27
.seen hinrik
yoleaux I haven't seen hinrik around.
tbrowder sena_kun: give it a try if you have time--it doesn't sort names yet, but PRs are welcome! 23:31
sena_kun tbrowder, my elisp code is terrible, sorry. Hinrik merged my little typo fix a few month ago quite quickly, so, I suppose, he can merge your PR too. 23:33
23:35 mcmillhj joined 23:39 labster left, mcmillhj left 23:41 mantovani joined, zacts_raincity left 23:48 labster joined, s34n left, bdmatatu left 23:50 kurahaupo left 23:52 nightfrog joined 23:54 mcmillhj joined 23:55 cdg left 23:58 adu joined, mcmillhj left 23:59 sufrostico left