Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-05-25

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:01 Zoffix And I was wrong about chaining after postfix ops:
00:01 Zoffix m: sub postfix:<.sq>($n) { $n * $n }; 42.sq.say
00:01 camelia rakudo-moar 19e91e: OUTPUT«1764␤»
00:05 gfldex m: class Foo { has $!bar = 'meow'; }; my method baz { say $!bar }; Foo.new.&baz
00:05 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/yM5N4z8wP5␤Cannot understand $!bar in this context␤at /tmp/yM5N4z8wP5:1␤------> 3r = 'meow'; }; my method baz { say $!bar7⏏5 }; Foo.new.&baz␤»
00:08 finanalyst_ joined #perl6
00:09 pierre joined #perl6
00:09 Actualeyes left #perl6
00:09 gfldex m: class Foo { has $!bar = 'meow'; }; use MONKEY-TYPING; augment class Foo { method baz { say $!bar } }; Foo.new.&baz
00:09 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oQG_IVDDY3␤Undeclared routine:␤    baz used at line 1. Did you mean 'bag'?␤␤»
00:14 Zoffix m: class Foo { has $!bar = 'meow'; }; use MONKEY-TYPING; augment class Foo { method baz { say $!bar } }; Foo.new.baz
00:14 camelia rakudo-moar 19e91e: OUTPUT«meow␤»
00:22 cpage_ joined #perl6
00:32 huggable joined #perl6
00:47 TimToady joined #perl6
00:53 sufrostico joined #perl6
01:05 Actualeyes joined #perl6
01:28 BenGoldberg joined #perl6
01:30 gorgonzola joined #perl6
01:47 ilbot3 joined #perl6
01:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
01:50 MasterDuke joined #perl6
01:52 molaf joined #perl6
01:59 TreyHarr1 joined #perl6
02:10 pierre joined #perl6
02:30 finanalyst_ joined #perl6
02:51 noganex_ joined #perl6
03:11 pierre joined #perl6
03:13 cpage_ joined #perl6
03:26 MadcapJake So I'm almost finished with my database build script for this Perl 6 webapp!
03:26 MadcapJake (been some time since I've done SQL so I hope I'm doing everything right :S
03:46 jdv79 what does it do?
04:05 pierre joined #perl6
04:11 pierre joined #perl6
04:15 bjz_ joined #perl6
04:29 pierre joined #perl6
04:31 MadcapJake It's Perl 6's S99 glossary + Urban Dictionary style voting (users can upvote/downvote term descriptions and the best will be shown on the main page)
04:32 MadcapJake so my db has users, terms, entries, and votes tables
04:36 MadcapJake I'm trying to decide how new terms will be added: (a) users submit term + description, (b) users submit only term and term sits in "probationary" period until enough users request an explanation, or (c) users submit only term and term waits for at least one (or two?) explanations (basically answered/unanswered statuses)
04:37 pierre joined #perl6
04:38 Actualeyes joined #perl6
04:39 Cabanossi joined #perl6
04:51 buharin joined #perl6
04:51 zacts joined #perl6
04:54 _28_ria joined #perl6
04:58 bjz joined #perl6
05:02 mojca joined #perl6
05:15 ssotka joined #perl6
05:17 azawawi joined #perl6
05:17 azawawi hi
05:18 azawawi .tell RabidGravy Please take a look at https://github.com/perl6/gtk-simple/pull/33
05:18 yoleaux azawawi: I'll pass your message to RabidGravy.
05:18 azawawi .seen RabidGravy
05:18 yoleaux I saw RabidGravy 24 May 2016 19:40Z in #perl6: <RabidGravy> no http://doc.perl6.org/language/glossary#Allomorph is fine, just missed a character
05:23 _mg_ joined #perl6
05:24 buharin hi :)
05:34 xinming joined #perl6
05:45 CIAvash joined #perl6
06:30 jack_rabbit joined #perl6
06:33 jjido joined #perl6
06:34 grondilu joined #perl6
06:39 firstdayonthejob joined #perl6
06:41 wamba joined #perl6
06:42 pierre_ joined #perl6
06:43 moritz \o
06:47 jjido joined #perl6
06:52 rindolf joined #perl6
06:53 aries_liuxueyang joined #perl6
06:54 azawawi joined #perl6
06:54 azawawi Good morning
06:55 azawawi https://github.com/perl6/gtk-simple/pull/33  # Feedback is welcome
06:58 ufobat joined #perl6
07:00 ufobat morning
07:05 labster joined #perl6
07:12 _dolmen_ joined #perl6
07:17 CIAvash joined #perl6
07:32 abraxxa joined #perl6
07:36 mojca joined #perl6
07:40 Xliff joined #perl6
07:40 Xliff \o
07:40 Xliff What is the named args equivalend of @_?
07:40 Xliff s/equivalend/equivalent/
07:40 bjz_ joined #perl6
07:41 nine m: sub foo(*%args) { say %args.keys }; foo(:foo(1), :bar(2));
07:41 camelia rakudo-moar 19e91e: OUTPUT«(bar foo)␤»
07:42 nine m: sub foo(*@args) { say @args }; foo(1, 2);
07:42 camelia rakudo-moar 19e91e: OUTPUT«[1 2]␤»
07:43 Xliff nine: But you expressly used a slurpy hash there. If you use the signature (:$foo, :$bar) can you still access them without using :$foo and :$bar?
07:48 g4 joined #perl6
07:48 g4 joined #perl6
07:49 nine m: sub foo($foo, $bar) { say @_; }; foo(1, 2); # doesn't work with positionals either
07:49 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5spYWk2_L3␤Placeholder variable '@_' cannot override existing signature␤at /tmp/5spYWk2_L3:1␤------> 3sub7⏏5 foo($foo, $bar) { say @_; }; foo(1, 2);␤»
07:49 nine Xliff: ^^^
07:50 telex joined #perl6
07:51 llfourn_ Xliff: nah you can't I don't think. I often find myself wanting to though :\.
07:52 nine This being Perl 6, I'd not be surprised if there's some way through the meta layer. Probably through the callframe.
07:53 llfourn_ yeah there is an nqp::capture..something
07:53 llfourn_ I would love to be able to get a p6 Capture from some magic variable for the current call frame
07:54 llfourn_ or even callframe.capture. Though I guess it might get in the way of inlining or something
07:55 darutoko joined #perl6
07:56 buharin joined #perl6
07:58 Xliff llfourn_++ and nine++: Thanks.
08:01 kurahaupo joined #perl6
08:05 tharkun joined #perl6
08:12 dakkar joined #perl6
08:15 Xliff Hrm.
08:15 Xliff I thought I had what I needed with XML::Class, but it's tied to namespaces.
08:24 Xliff Damn. And XML::Parser::Tiny isn't passing its test cases. Time to check CPAN
08:25 Xliff Will XS modules run with rakudo?
08:28 Xliff nine: Inline::Perl5 is failing zef install.
08:28 Xliff Known bug?
08:30 Xliff Looks like it's installing fine using panda.
08:30 tadzik sounds like a zefbug then
08:30 tadzik or a pandabug, and Inline::Perl5 doing something it's not supposed to :D
08:32 huggable joined #perl6
08:33 Xliff zefbug
08:33 Xliff It installs and works fine after panda install.
08:34 Xliff tadzik: Where can I report this?
08:34 Xliff Nevermind. Using https://github.com/ugexe/zef/issues/new
08:38 zacts joined #perl6
08:38 Xliff m: use v6.c
08:38 camelia rakudo-moar 19e91e: ( no output )
08:41 domidumont joined #perl6
08:44 nadim joined #perl6
08:44 Xliff m: my $a = 1; if $a == 0 { say "Noseeme"; } elsif $a == 1 { say "Peekaboo!" }
08:44 camelia rakudo-moar 19e91e: OUTPUT«Peekaboo!␤»
08:45 Xliff m: my $a = [1]; if $a.^name eq 'Str' { say "Noseeme"; } elsif $a.^name eq 'Array' { say "Peekaboo!" }
08:45 camelia rakudo-moar 19e91e: OUTPUT«Peekaboo!␤»
08:45 Xliff sub t (:$a!) { if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" } } t(:a([1]))
08:45 Xliff m: sub t (:$a!) { if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" } } t(:a([1]))
08:45 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/cwIisRapqC␤Strange text after block (missing semicolon or comma?)␤at /tmp/cwIisRapqC:1␤------> 3a.^name eq 'Array' { say "Peekaboo!" } }7⏏5 t(:a([1]))␤    expecting any of:␤        infix␤     …»
08:46 domidumont joined #perl6
08:47 Xliff m: sub t (:$a!) { if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" } }; t(:a([1]))
08:47 camelia rakudo-moar 19e91e: ( no output )
08:47 Xliff m: sub t (:$a!) { if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" }; say :$a.^name }; t(:a([1]))
08:47 camelia rakudo-moar 19e91e: OUTPUT«Pair␤»
08:47 RabidGravy joined #perl6
08:48 Xliff m: sub t (:$a!) { if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" }; say :$a.^name }; my $b = [1]; t(:a($b))
08:48 camelia rakudo-moar 19e91e: OUTPUT«Pair␤»
08:48 moritz m: sub t (:$a!) { say $a.perl }; t(:a([1])); t(:a[1])
08:48 camelia rakudo-moar 19e91e: OUTPUT«$[1]␤$[1]␤»
08:48 moritz m: sub t (:$a!) { dd $a }; t(:a([1])); t(:a[1])
08:48 camelia rakudo-moar 19e91e: OUTPUT«Array $a = $[1]␤Array $a = $[1]␤»
08:48 Xliff m: sub t (:$a!) { if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" }; say :$a.^name }; t(:a[1])
08:48 camelia rakudo-moar 19e91e: OUTPUT«Pair␤»
08:48 moritz ah, you're checking :$a, not $a
08:49 moritz well, it's no surprise that :$a is a Pair, because :$a is a pair construction syntax :-)
08:49 Xliff m: my $a = [1]; if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" }; say :$a.^name }
08:49 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/TZwdyozoDV␤Unexpected closing bracket␤at /tmp/TZwdyozoDV:1␤------> 3ray' { say "Peekaboo!" }; say :$a.^name 7⏏5}␤»
08:49 Xliff m: my $a = [1]; if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" }; say :$a.^name };
08:49 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xfX2PPjvxq␤Unexpected closing bracket␤at /tmp/xfX2PPjvxq:1␤------> 3ray' { say "Peekaboo!" }; say :$a.^name 7⏏5};␤»
08:49 Xliff m: my $a = [1]; if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" }; say :$a.^name } };
08:49 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/vXg4labMma␤Unexpected closing bracket␤at /tmp/vXg4labMma:1␤------> 3ray' { say "Peekaboo!" }; say :$a.^name 7⏏5} };␤»
08:49 Xliff m: my $a = [1]; if :$a.^name eq 'Str' { say "Noseeme"; } elsif :$a.^name eq 'Array' { say "Peekaboo!" }; say :$a.^name;
08:49 camelia rakudo-moar 19e91e: OUTPUT«Pair␤»
08:50 Xliff Grrr.....
08:50 Xliff I think I have barked up the wrong tree.
08:50 moritz Xliff: why are you using :$a instead of $a inside the function?
08:51 Xliff That's a good question!
08:53 shadowpaste "xliff" at 217.168.150.38 pasted "What am I missing here?" (24 lines) at http://fpaste.scsys.co.uk/518199
08:53 Xliff moritz: The paste is the actual use case.
08:53 Xliff And error
08:54 moritz Xliff: the first thing you're missing is ~~ for type checks
08:54 moritz if $thing ~~ Str { ... }
08:54 moritz that works also for subclasses of Str
08:54 moritz checking .^name directly is very fragile
08:55 Xliff I started using ~~ and keep having the interpreter telling me to use .^name.
08:55 moritz huh?
08:55 dalek doc: 42a5c98 | (Daniel Green)++ | doc/Type/ (4 files):
08:55 dalek doc: Fix some typos in the docs for the allomorph types
08:55 dalek doc: review: https://github.com/perl6/doc/commit/42a5c9891f
08:55 dalek doc: 4ec6150 | RabidGravy++ | doc/Type/ (4 files):
08:55 dalek doc: Merge pull request #548 from MasterDuke17/master
08:55 dalek doc:
08:55 dalek doc: Fix some typos in the docs for the allomorph types
08:55 dalek doc: review: https://github.com/perl6/doc/commit/4ec6150aaa
08:55 moritz Xliff: anyway, you don't close the curly brace from the if block
08:55 CIAvash joined #perl6
08:55 Xliff moritz: There's some warning rakudo keeps emitting when I use ~~.
08:56 Xliff Or maybe it is when I interpolate.
08:56 moritz yes, when you interpolate
08:56 moritz which isn't the same as checking
08:56 Xliff Oh geez. That's my brain telling me its way past time to go to bed.
08:57 moritz m: if 1 { elsif { }
08:57 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5===␤Function 'elsif' needs parens to avoid gobbling block␤at /tmp/79hvbRahZh:1␤------> 3if 1 { elsif { }7⏏5<EOL>␤Missing block (apparently claimed by 'elsif')␤at /tmp/79hvbRahZh:1␤------> 3if 1 7⏏5{ elsif { }␤␤»
08:58 Xliff m: $a = [1]; say "Y" if $a ~~ Array
08:58 camelia rakudo-moar 19e91e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/PYCySMOXDL␤Variable '$a' is not declared␤at /tmp/PYCySMOXDL:1␤------> 3<BOL>7⏏5$a = [1]; say "Y" if $a ~~ Array␤»
08:58 Xliff m: my $a = [1]; say "Y" if $a ~~ Array
08:58 camelia rakudo-moar 19e91e: OUTPUT«Y␤»
08:59 Xliff OK. Fixed. Thanks, moritz!
08:59 moritz also I don't think you even need a branch here
09:00 moritz m: sub t($x) { my $url = ''; $url ~= "a=$_" for $x.list; return $url }; say t 'bla'; say t ['bla', 'blubb']
09:00 camelia rakudo-moar 19e91e: OUTPUT«a=bla␤a=blaa=blubb␤»
09:00 moritz m: sub t($x) { my $url = ''; $url ~= "&a=$_" for $x.list; return $url }; say t 'bla'; say t ['bla', 'blubb']
09:00 camelia rakudo-moar 19e91e: OUTPUT«&a=bla␤&a=bla&a=blubb␤»
09:07 pmurias joined #perl6
09:07 g4 joined #perl6
09:13 sno joined #perl6
09:13 finanalyst_ joined #perl6
09:20 moritz I found http://joelgrus.com/2016/05/​23/fizz-buzz-in-tensorflow/ quite amusing
09:21 xinming_ joined #perl6
09:25 Xliff moritz: Ooh! Nice optimization!
09:30 mojca left #perl6
09:30 Ulti something recent made a 4% speedup in my tests yay #perl6++
09:32 kaare_ joined #perl6
09:35 RabidGravy given that «» is actually qqww and not qqw, are there short quotes for qqw ?
09:35 yoleaux 05:18Z <azawawi> RabidGravy: Please take a look at https://github.com/perl6/gtk-simple/pull/33
09:36 domidumont joined #perl6
09:40 RabidGravy .tell azawawi seems reasonable to me, I'm documenting at the moment but will test later, would like more feedback though
09:40 yoleaux RabidGravy: I'll pass your message to azawawi.
09:40 iH2O joined #perl6
09:42 iH2O left #perl6
09:47 Xliff WAT?
09:48 Xliff So I have a class WebService::EveOnline::EveCentral. When I do:  perl6 -Ilib -e 'use WebService::EveOnline::EveCentral; my $ws = WebService::EveOnline::EveCentral.new(); $ws.getMarketStat(:typeID<34>)' -- I get the following error: Could not find symbol '&EveCentral'.
09:48 Xliff What am I missing?!
09:50 Xliff lib/WebService/EveOnline/EveCentral.pm6 and perl6 -c reports "Syntax OK!"
09:52 RabidGravy typoed some "module" or "class" name?
09:53 Xliff "class WebService::EveOnline::EveCentral {"
09:53 ocbtec joined #perl6
09:53 Xliff Believe me. I've looked at that line 3 times to Tuesday.
09:53 RabidGravy is there some other containing scope
09:54 Xliff Changed from "unit class WebService::EveOnline::EveCentral"
09:54 Xliff I don't think so.
09:54 Xliff code is here: https://github.com/Xliff/p6-we​bservice-eveonline-fitshopper
09:57 pierre_ joined #perl6
09:58 RabidGravy looks fine at first glance
09:59 vendethiel joined #perl6
09:59 Xliff Which means it's something hard-to-find-but-stupid.
10:00 Xliff Late night code binges have been good for ideas, but bad for coding accuracy and efficiency.
10:00 Xliff At least lately.
10:07 tbrowder_ joined #perl6
10:09 CIAvash joined #perl6
10:14 tbrowder_ joined #perl6
10:14 kid51 joined #perl6
10:19 azawawi joined #perl6
10:19 azawawi .
10:19 yoleaux 09:40Z <RabidGravy> azawawi: seems reasonable to me, I'm documenting at the moment but will test later, would like more feedback though
10:19 azawawi ..
10:19 azawawi ...
10:19 azawawi :)
10:20 RabidGravy boom
10:20 azawawi my eyes... :)
10:21 azawawi RabidGravy: one of the thing that worries me about GTK::Simple is the usage of the GTK::... namespace
10:21 azawawi RabidGravy: https://github.com/perl6/gtk​-simple/tree/master/lib/GTK
10:21 azawawi RabidGravy: namely GTK::GDK and GTK::NativeLib
10:22 RabidGravy yeah, I've thought that about other modules too
10:22 RabidGravy I was going to write something up about avoiding doing that
10:25 RabidGravy my general feeling is that for a given module Foo::Bar then you should attempt to only use the Foo::Bar::* namespace, otherwise it potentially blocks out someone else using Foo::
10:25 Ulti also there was a trend of calling nearly everything for Perl 6 thats the first implementation pass "Simple" rather than it just being the first version of the real deal
10:26 Ulti ::Simple was meant to mean something about the API not the authors attitude to their own work :3
10:26 RabidGravy which is probably a hostage to fortune to be honest
10:26 hahainternet i do think that Go's adoption of an import path being the authoritative name is quite lovely
10:27 hahainternet so good luck using 'github.com' as your namespace
10:27 Ulti I thought the way P6 packages worked is you had namespaces broken down by authority anyway
10:27 RabidGravy well if we could uniformly use the module long name everywhere then it wouldn't be a problem
10:28 pmurias Ulti: +1 using ::Simple how it was orginated in Perl 5
10:32 Ulti DBIish also >:P I always forget if its one 'i' or two, if you dont know what DBI was then its a bad name and if you do then you wonder why its not just DBI here and if there's meant to be a real one coming
10:32 grondilu joined #perl6
10:32 Ulti its an ecosystem of doubt :Z
10:33 pmurias is a real one coming?
10:34 Ulti fairly sure we can defacto say it is the real one, especially since its really functional
10:34 nine Well a new one with a redesigned API was in the works back then.
10:35 jnthn fwiw, GTK::Simple was originally written by me, for the purpose of demonstrating how supplies are a really nice way to deal with UI events. I didn't really think about how to make it handle all of GTK (knew I'd no way have time for that), so it was meant to handle simple use cases. :) I'm happy it's now in hands other than mine, but if it's going to support All The Things then a name change is likely sensible :)
10:36 * azawawi starts reading https://developer.gnome.org/gtk3/stable/ :)
10:38 Ulti nine I guess with Inline its nice to have the name be different too
10:42 pmurias Ulti: Tim Bunce had plans how the Perl 6 version of DBI would look like (with a JDBC style standardized api for backends), it's understandable that people didn't want to "steal" then namespace from him
10:42 Zoffix .seen stmuk
10:42 yoleaux I saw stmuk 24 May 2016 09:56Z in #perl6: <stmuk> something like that is better
10:42 Zoffix Don't we have :auth<> stuff? :)
10:43 stmuk Zoffix: just saw this buffer!
10:43 Ulti ^ this
10:43 Ulti DBI:auth<tim> would have been that one, with a major version number bump ahead of what anyone else was doing?
10:44 Ulti I thought that was meant to be the Perl 6 way of handling the namespace camping issue?
10:45 Ulti I guess at the time we didnt have much versioining in modules either :)
10:45 Ulti as in the ability to do it
10:45 Zoffix Well, version is supposed to irrelevant. :auth stuff alone is sufficient.... were people to actually use it.
10:46 Ulti well the version number bump makes it easier to discuss since you could say DBI 2 rather than DBI-the-tim-bunce-one
10:46 Zoffix heh
10:46 andreoss joined #perl6
10:47 Ulti authority is more often going to be you trust someones patches and release schedule rather than its a fork or parallel project you'd hope?
10:48 skingsbu joined #perl6
10:49 Zoffix I'd think it's more to prevent stuff like this: (4 top results): https://metacpan.org/search?size=20&amp;q=%​3A%3AButMaintained&amp;search_type=modules
10:50 Zoffix :auth basically gives each author an ability to name their module anything they want, regardless of what other authors name their stuff.
10:50 Zoffix It also creates a problem that without :auth, you may or may not get what you want :/
10:51 * Zoffix foresees module installers having a "trusted authors" list in the future
10:53 Zoffix stmuk, if you have no idea why perl6.party desn't show up on pl6anet, then I could try replicating another feed to-the-letter... I just didn't wanna do the work if I didn't have to :)
10:53 Zoffix And if all else fails, I guess we can revert it back to blogs.perl.org :/
11:03 pmurias joined #perl6
11:23 RabidGravy in the pod parser that docs uses can I use any matching characters around an X< > if I want to have both << and « inside?
11:24 RabidGravy e.g X{blah blah, << >>, «»}
11:25 RabidGravy or is it only angley brackets
11:32 wamba joined #perl6
11:34 RabidGravy of course I can just generate the html and see what happens
11:36 g4 joined #perl6
11:44 zhmylove_ joined #perl6
11:45 Xliff Maybe now that there are more folks on....
11:45 Xliff So I have a class WebService::EveOnline::EveCentral. When I do:  perl6 -Ilib -e 'use WebService::EveOnline::EveCentral; my $ws = WebService::EveOnline::EveCentral.new(); $ws.getMarketStat(:typeID<34>)' -- I get the following error: Could not find symbol '&EveCentral'.
11:45 RabidGravy ah, it's just increase the number of chevrons
11:45 Xliff code is here: https://github.com/Xliff/p6-we​bservice-eveonline-fitshopper
11:45 Xliff And that name is getting changed.
11:50 RabidGravy have you tried it with RAKUDO_MODULE_DEBUG=1
11:50 Xliff Didn't know that existed.
11:52 RabidGravy it'll tell you what it is doing when it tries to load the module
11:53 Xliff 1233  3409 RMD: /home/cbwood/projects/p6-webservice-eveonline-fi​tshopper/lib/WebService/EveOnline/EveCentral.pm6 aborted precompilation without failure
11:53 CIAvash joined #perl6
11:54 Xliff Is that a good or a bad thing. The message isn't clear, but "aborted" has me leaning to "not good"
11:54 RabidGravy what happens if you put "no precompilation;" at the top of the file
11:55 RabidGravy it would suggest you are doing something that it doesn't like at compile time
11:56 psch joined #perl6
11:58 Xliff No change. It looks like it doesn't parse the pragma until the attempt to precompile has already been made.
11:58 psch m: sub f { say %_ }; f :1a, :2b
11:58 camelia rakudo-moar 19e91e: OUTPUT«{a => 1, b => 2}␤»
11:58 psch Xliff: ^^^ you looked for that in the backlog i think?
11:58 Xliff psch: O_O
11:59 Xliff Missed that! My client was net-farting, earlier. I might have not been online to see it.
11:59 RabidGravy Xliff, you did put it above the "unit class" right?
11:59 * Xliff hugs psch++
11:59 Xliff RabidGravy, first line.
11:59 Xliff Even before "use v6.x"
12:00 psch Xliff: i don't think anyone mentioned it before
12:00 psch well, today at least :)
12:00 Xliff And I've switched it from "unit class" to a regular class definition.
12:00 psch .tell llfourn %_ exists, analogue to @_
12:00 yoleaux psch: I'll pass your message to llfourn.
12:01 dalek doc: c4101f5 | RabidGravy++ | doc/Language/quoting.pod:
12:01 dalek doc: Add qww and qqww
12:01 dalek doc:
12:01 dalek doc: Also move the « » from qqw to qqww
12:01 dalek doc: Not sure if there are appropriate unicode variants
12:01 dalek doc:
12:01 dalek doc: This may cover #533
12:01 dalek doc: review: https://github.com/perl6/doc/commit/c4101f526d
12:01 Xliff psch: Ahh! but %_ can't be used if there is a signature.
12:02 psch Xliff: well, not implicitely, no
12:03 psch m: sub f($a, $b, :$c, *%_, *@_) { say "$a $b $c"; say "other stuff: @_[]" , %_ }; f 1, 2, :3c, :10foo, "bar"
12:03 camelia rakudo-moar 19e91e: OUTPUT«1 2 3␤other stuff: bar{foo => 10}␤»
12:03 RabidGravy on a method it can, it just slurps all the otherwise not mention named parameters
12:03 psch right, interface consistency :)
12:04 Xliff Well, those things are good to know.
12:05 shadowpaste "xliff" at 217.168.150.38 pasted "Precompile, oh Precompile.... where for art thou, Precompile?!?" (137 lines) at http://fpaste.scsys.co.uk/518242
12:05 Xliff Yes. I am getting punchy in my exhaustion.
12:06 Xliff About to do a food run to compensate.
12:09 psch m: my method foo (Any: $a, $b, :$c) { say "a, b and c: $a $b $c"; say "other (named) stuff: " ~ %_ }; .&foo: 1, 2, :3c, :foo<bar>
12:09 camelia rakudo-moar 19e91e: OUTPUT«a, b and c: 1 2 3␤other (named) stuff: foo   bar␤»
12:09 psch ...probably don't do that in code you want maintainable :)
12:11 RabidGravy delete the .precomp directory
12:11 nicqbot joined #perl6
12:17 pmurias [Coke]: hi
12:17 AlexDaniel joined #perl6
12:18 pmurias [Coke]: the current build process is a horrible hack
12:18 pmurias :(
12:18 sufrostico joined #perl6
12:18 pmurias I ln -s the node_modules from nqp-js
12:19 ZoffixW joined #perl6
12:20 pmurias and ln -s nqp-bootstrapped.js
12:20 ZoffixW Xliff, it's something to do with XML::Hash::XS. If I comment out this line (and the use of its sub on 24) the problem disappears https://github.com/Xliff/p6-webservice​-eveonline-fitshopper/blob/master/lib/​WebService/EveOnline/EveCentral.pm6#L5
12:21 pmurias [Coke]: I think it's better that I figure out a sane way to build it rather then you duplicate my horrible setup
12:23 Xliff Zoffix: DAMMIT! I was worried about that.
12:24 Xliff I kinda need XML::Hash::XS, or something similar. I searched the ecosystem, but couldn't find anything that looked like it would work (at least not without serious work).
12:24 Xliff Zoffix++ -- Thanks for finding that.
12:25 Xliff Maybe I can cheat.
12:26 rindolf joined #perl6
12:29 Vishwanath joined #perl6
12:31 RabidGravy If the web service has a nice regular definition for the documents then XML::Class would fit the bill
12:32 nicqbot joined #perl6
12:32 lizmat joined #perl6
12:32 RabidGravy obviously you would have to define classes for all the messages
12:40 Xliff YES! I CAN!
12:41 Xliff Zoffix, more experimentation may need to be done, but I changed the calls to use the regular Inline::Perl5 method via .use and .call and it's working.
12:41 Xliff I've pushed if you wanna see.
12:43 Xliff RabidGravy: I was hoping to avoid that, because there are several nested classes and the docs of XML::Class didn't go very far in their explanation to my sleep-deprived brain.
12:43 RabidGravy it works fine, though if you can find an example that doesn't I would be keen to know about it
12:44 Xliff RabidGravy, the eventual goal is to build a data structure from this: http://api.eve-central.com/api/marketstat?typ​eid=34&amp;typeid=35&amp;regionlimit=10000002
12:45 Xliff Actually... that's the light case.
12:46 RabidGravy trivial
12:46 Xliff :P
12:47 Xliff Trivial this: http://api.eve-central.com/api/quicklook?typeid=34
12:47 Xliff =)
12:48 RabidGravy just big, not particularly complex
12:48 zhmylove joined #perl6
12:49 Xliff OK. However the docs didn't talk about how it would handle multiple tags. Ala the <order> tag in the last example.
12:49 Xliff Also... sleep-deprived!!!
12:49 Xliff But stubborn.
12:50 Xliff So class for quicklook. Class for Sell_orders. Class for Buy_orders. Class for order.
12:50 grondilu jeez eve-online stuff?  What a coincidence.  Last week I starting playing this until I realize I should really stop if don't want to end up doing that 100% of my time
12:50 Xliff I might actually try that after I sleep, however I have a working implementation and I didn't need to do the extra work.
12:51 Xliff grondilu, =)
12:51 grondilu at some point I was wishing the in-game chat would support IRC so that I can hang out here while playing.
12:52 cognominal joined #perl6
12:52 Xliff It's got a web browser....
12:52 grondilu it's pretty terrible though
12:52 Xliff Yes. Yes, it is.
12:52 Xliff The sad part is that it's actually gotten better than it used to be.
12:53 * ilmari wonders what Xliff's strange highlighting is
12:53 ilmari ct
12:53 ilmari showing up as inverted-video ] here (and I can create it by pressing ctrl-])
12:53 Xliff ilmari, italics
12:59 ilmari ah
13:07 bjz joined #perl6
13:12 aindilis joined #perl6
13:18 finanalyst_ joined #perl6
13:22 zxd joined #perl6
13:24 skids joined #perl6
13:27 [Coke] perl6
13:28 RabidGravy it is indeed
13:29 [Coke] ww. 
13:35 vendethiel- joined #perl6
13:37 bjz joined #perl6
13:46 zakharyas joined #perl6
13:47 brrt joined #perl6
13:54 pierre_ joined #perl6
13:55 cdg joined #perl6
13:59 Actualeyes joined #perl6
14:02 Tonik joined #perl6
14:04 MadcapJake_ joined #perl6
14:04 MadcapJake_ left #perl6
14:16 domidumont joined #perl6
14:21 AlexDaniel joined #perl6
14:25 khw joined #perl6
14:30 rindolf joined #perl6
14:34 nicqbot So, what is the difference between a 'Buf' object and an array?
14:35 nicqbot Seems like an array just has some extra methods to it.
14:36 ZoffixW joined #perl6
14:37 psch m: my $x = "foo".encode('ascii'); say $x
14:37 camelia rakudo-moar a5c46b: OUTPUT«Blob[uint8]:0x<66 6f 6f>␤»
14:37 psch ah, right, immutable
14:37 AlexDaniel m: my Buf $x = Buf.new(104, 101, 108, 108, 111); say $x ~ ‘ world’
14:37 psch nicqbot: a Buf is a mutable Blob.  as in, binary data
14:37 camelia rakudo-moar a5c46b: OUTPUT«Cannot use a Buf as a string, but you called the Stringy method on it␤  in block <unit> at /tmp/XPWlfax8gw line 1␤␤»
14:37 ZoffixW nicqbot, Buf is for binary data. Array is for itemized values. Hence the difference in methods. Sure, you can represent many things inside an Array, including strings, but it's better to have a specific type.
14:37 AlexDaniel docs claim that it is Stringy
14:37 psch m: my $x = Buf.new(70, 79, 79); say $x.decode('ascii');
14:37 camelia rakudo-moar a5c46b: OUTPUT«FOO␤»
14:37 psch m: say Buf ~~ Stringy
14:37 camelia rakudo-moar a5c46b: OUTPUT«True␤»
14:38 psch AlexDaniel: yeah, the Exception seems counterintuitive, but consider that you don't have an encoding on the Buf
14:38 ZoffixW New post: Perl 6 Hands-On Workshop: Weatherapp (Part 2): http://perl6.party/post/Perl-6-Han​ds-On-Workshop--Weatherapp--Part-2
14:38 AlexDaniel psch: eh? But then why is it stringy?
14:39 ZoffixW This workshop was a bad idea... I feel I'm out of my depth :/ Hello, Impostor Syndrome :P
14:39 cdg_ joined #perl6
14:39 jnthn A Buf is basically a binary string. It's an item.
14:39 jnthn An array is a bunch of items
14:39 andreoss m: my $x = Buf.new(class :: {} .new);say $x.perl;
14:39 camelia rakudo-moar a5c46b: OUTPUT«Type check failed in initializing element #0 to Buf; expected uint8 but got <anon|50804864> (<anon|50804864>.new)␤  in any  at gen/moar/m-Metamodel.nqp line 1736␤  in block <unit> at /tmp/byfJMat0dC line 1␤␤Actually thrown at:␤  in any  at gen/mo…»
14:39 andreoss m: my $x = Array.new(class :: {} .new);say $x.perl;
14:39 camelia rakudo-moar a5c46b: OUTPUT«$[<anon|66921696>.new]␤»
14:40 jnthn m: my int @a = 1..5; for @a { .say }
14:40 camelia rakudo-moar a5c46b: OUTPUT«1␤2␤3␤4␤5␤»
14:40 jnthn A native array can be iterated like that
14:40 jnthn But a buf is naturally an item
14:40 andreoss m: my $x = Buf.new(my Int $i = 1);say $x.perl;
14:40 camelia rakudo-moar a5c46b: OUTPUT«Buf.new(1)␤»
14:40 AlexDaniel but why can't Buf just be a Buf, what purpose serves the Stringy part of it?
14:41 xue_ joined #perl6
14:41 psch ...i'm wondering that too right now, actually
14:42 andreoss Buf can only handle native types?
14:42 nicqbot What do you mean 'it's naturally an item'? The entire 'Buf' object is an item, or the things within?
14:42 ugexe maybe so things like BufA ~ BufB make sense (and can be clearer than `push` everywhere sometimse)
14:42 moritz m: say Buf[Int].new(42)
14:42 camelia rakudo-moar a5c46b: OUTPUT«Could not instantiate role 'Blob':␤Method 'nativesize' not found for invocant of class 'Perl6::Metamodel::ClassHOW'␤  in any  at gen/moar/m-Metamodel.nqp line 2437␤  in any specialize at gen/moar/m-Metamodel.nqp line 2424␤  in any specialize at gen…»
14:42 AlexDaniel m: my Buf $x = Buf.new(104, 101, 108, 108, 111); say $x ~ $x
14:42 camelia rakudo-moar a5c46b: OUTPUT«Buf:0x<68 65 6c 6c 6f 68 65 6c 6c 6f>␤»
14:43 AlexDaniel mmm…
14:45 itaipu joined #perl6
14:45 psch m: my $x = Buf.new(70); $x = $x ~ Buf.new(79);
14:45 camelia rakudo-moar a5c46b: ( no output )
14:45 psch m: my $x = Buf.new(70); $x = $x ~ Buf.new(79) xx 2
14:45 camelia rakudo-moar a5c46b: OUTPUT«Cannot use a Buf as a string, but you called the Stringy method on it␤  in block <unit> at /tmp/KVCff_EGJz line 1␤␤»
14:46 andreoss m: say (Buf.new(72) ~ Buf.new(73)).decode: 'utf-8'
14:46 camelia rakudo-moar a5c46b: OUTPUT«HI␤»
14:46 ugexe has to be Buf.new(79 xx 2)
14:46 psch how does that even precedence?  xx tighter than = but looser than ~?
14:47 jnthn andreoss: You can only have a Buf of some native integer type, yes
14:47 psch m: my $x; $x = $x ~ 1 xx 2; say $x
14:47 camelia rakudo-moar a5c46b: OUTPUT«Use of uninitialized value $x of type Any in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at /tmp/W4IyZr6SkD line 1␤1 1␤»
14:47 psch m: my $x = 0; $x = $x ~ 1 xx 2; say $x
14:47 camelia rakudo-moar a5c46b: OUTPUT«01 1␤»
14:47 psch ah, so tighter than both, but stringy infix:<,>..?
14:51 nicqbot p6: my $buf = Buf.new(1,3,2,4); for $buf[] { .say }
14:51 camelia rakudo-moar a5c46b: OUTPUT«1␤3␤2␤4␤»
14:54 ugexe well Buf has a method list
14:55 ugexe Buf also has `array_type` trait
14:59 xue_ joined #perl6
15:02 ocbtec joined #perl6
15:05 colomon joined #perl6
15:13 mohae joined #perl6
15:13 andreoss what is [] in $buf[]?
15:14 andreoss is it the same as @$buf?
15:15 psch m: class A { method ZEN-POS { "[]" }; method list { "@" } }; say (A)[]; say @(A)
15:15 camelia rakudo-moar a5c46b: OUTPUT«[]␤@␤»
15:15 [Coke] p6: my $buf = Buf.new(1,3,2,4); say (@$buf).perl; say ($buf[]).perl;
15:15 camelia rakudo-moar a5c46b: OUTPUT«(1, 3, 2, 4).Seq␤Buf.new(1,3,2,4)␤»
15:15 nicqbot Not entirely sure, I honestly just tried it and it worked. From what I can tell, it tells perl6 that this is like an array
15:16 [Coke] andreoss: so, no, not the same.
15:16 psch andreoss: postcircumfix:<[ ]> without a second argument is a zen slice, that is a slice of all elements.  prefix:<@> is equivalent to .list
15:17 psch zen slices are mostly for qq interpolation of @-sigiled variables, afaik
15:17 psch m: my @a = ^5; say "@a"; say "@a[]"
15:17 camelia rakudo-moar a5c46b: OUTPUT«@a␤0 1 2 3 4␤»
15:18 andreoss okay, thanks
15:23 hoelzro o/ #perl6
15:26 brrt ohai hoelzro
15:26 hoelzro o/ brrt
15:34 _28_ria joined #perl6
15:36 llfourn joined #perl6
15:39 psch oh, now i notice how badly i skimmed the %_ discussion earlier today in the clog :/
15:39 Xliff Heh.
15:40 Xliff We love you anyway, psch.
15:40 psch >_>
15:40 Xliff ^_^
15:41 psch m: sub f( *%f (:$a, :$b) ) { say $a }; f :1a
15:41 camelia rakudo-moar a5c46b: OUTPUT«1␤»
15:41 psch the opposite works... vOv
15:43 psch m: sub f( *%f (:$a!, :$b) ) { say $a }; f :1b
15:43 camelia rakudo-moar a5c46b: OUTPUT«Required named argument 'a' not passed in sub-signature of parameter %f␤  in sub f at /tmp/ONO0A8LZRt line 1␤  in block <unit> at /tmp/ONO0A8LZRt line 1␤␤»
15:44 kurahaupo joined #perl6
15:44 llfourn m: sub f( *%f (:$a, :$b) ) { say %f.perl }; f :1a
15:44 yoleaux 12:00Z <psch> llfourn: %_ exists, analogue to @_
15:44 camelia rakudo-moar a5c46b: OUTPUT«{:a(1)}␤»
15:45 llfourn psch: I knew about %_ but I never thought of unpacking it psch++
15:45 llfourn now if only we could unpack a capture...
15:46 llfourn m: sub f( |a(:$a,:$b) ) { say %f.perl }; f :1a
15:46 camelia rakudo-moar a5c46b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/pgvEu2LfGv␤Variable '%f' is not declared␤at /tmp/pgvEu2LfGv:1␤------> 3sub f( |a(:$a,:$b) ) { say 7⏏5%f.perl }; f :1a␤»
15:46 llfourn m: sub f( |a(:$a,:$b) ) { say a.perl }; f :1a
15:46 camelia rakudo-moar a5c46b: OUTPUT«\(:a(1))␤»
15:46 llfourn m: sub f( |a(:$a,:$b) ) { say $a.perl }; f :1a
15:46 camelia rakudo-moar a5c46b: OUTPUT«1␤»
15:46 llfourn wow. My life just changed.
15:46 ssotka joined #perl6
15:47 llfourn that is so damn cool!
15:47 psch huh
15:47 psch unpacking of implicit %_ sounds like a wonderfully terrible idea for a slang :P
15:47 psch something like < sub f ( (:$a, :$b) ) { say %_ } >
15:48 llfourn m: sub f( |a(:$a,:$b,$c) ) { say $a.perl; say a; say $c }; f "foo",:1a
15:48 camelia rakudo-moar a5c46b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Jc5kfDRgqw␤Cannot put required parameter $c after variadic parameters␤at /tmp/Jc5kfDRgqw:1␤------> 3sub f( |a(:$a,:$b,$c7⏏5) ) { say $a.perl; say a; say $c }; f "f␤    expecting any of:␤        …»
15:48 llfourn m: sub f( |a($c,:$a,:$b) ) { say $a.perl; say a; say $c }; f "foo",:1a
15:48 camelia rakudo-moar a5c46b: OUTPUT«1␤\("foo", :a(1))␤foo␤»
15:48 llfourn \o/
15:49 llfourn psch, does that work?
15:49 psch m: sub f( |a(*@b ($c, *@))) { say $c }; f 1,2,3
15:49 camelia rakudo-moar a5c46b: OUTPUT«1␤»
15:49 llfourn m: sub f ( (:$a, :$b) ) { say %_ } f :a<weee>;
15:49 camelia rakudo-moar a5c46b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/CL_TjzbWVO␤Placeholder variable '%_' cannot override existing signature␤at /tmp/CL_TjzbWVO:1␤------> 3sub7⏏5 f ( (:$a, :$b) ) { say %_ } f :a<weee>;␤»
15:49 llfourn hmm
15:49 psch llfourn: it can't.  %_ isn't declared if there is a signature at all
15:49 llfourn right.
15:49 psch well, excepting if %_ is in the signature :)
15:49 _28_ria joined #perl6
15:50 llfourn this is a really great discovery for me
15:50 psch m: sub f( |a(*@b ($c, *@ ($d)))) { say $d }; f 1,2,3
15:50 camelia rakudo-moar a5c46b: OUTPUT«Too many positionals passed; expected 1 argument but got 2 in sub-signature in sub-signature of parameter @b in sub-signature of parameter a␤  in sub f at /tmp/d3tKwd9ZjH line 1␤  in block <unit> at /tmp/d3tKwd9ZjH line 1␤␤»
15:50 psch m: sub f( |a(*@b ($c, *@ ($d, *@)))) { say $d }; f 1,2,3
15:50 camelia rakudo-moar a5c46b: OUTPUT«2␤»
15:51 psch subsubsubsubsignatures /o\
15:51 llfourn m: sub f( |a($c,:$a,:$b) ) { say $a.perl; say a; say $c }; f "foo","bar",:1a
15:51 camelia rakudo-moar a5c46b: OUTPUT«Too many positionals passed; expected 1 argument but got 2 in sub-signature of parameter a␤  in sub f at /tmp/K4mi5Vk0YR line 1␤  in block <unit> at /tmp/K4mi5Vk0YR line 1␤␤»
15:51 llfourn good.
15:51 llfourn perl6devs++ for thinking so far ahead to make unpacking captures work
15:52 llfourn so I can make subs with sigs that proxy to methods without having to write out all the params again
15:52 * llfourn becomes eurphoric
15:53 mst I don't understand what insanity you're planning to perpetrate there, but I think you should make it into a blog post (or make zoffix write one)
15:55 llfourn mst: I think that's a great idea. I will think of some mischief to do with it and do that.
15:56 Ulti llfourn do you know about 'handles' too?
15:57 llfourn Ulti: I don't think so... but ready to learn ^_^
15:58 Emeric1 joined #perl6
15:58 Ulti so for a Cat class you might do:    has $whisker handles <twitch sense> = Whisker.new();
15:59 Ulti then Cat.twitch will just proxy to the whisker objects method
15:59 Ulti iirc
15:59 llfourn ah yeah I did know about handles :)
15:59 llfourn you can also put a role name
15:59 moritz m: class A { has @.array handles <push pop shift unshift> }; given A.new(array => [1, 2]) { .push(42); say .array.perl }
15:59 camelia rakudo-moar a5c46b: OUTPUT«[1, 2, 42]␤»
16:00 llfourn moritz: but iirc you can't put a class name...
16:00 moritz llfourn: maybe, but I've yet to see a case where that's a good idea
16:00 llfourn m: class A { has @.a handles Array; } A.new.push("foo").say
16:00 camelia rakudo-moar a5c46b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XiXSPo9fdP␤Strange text after block (missing semicolon or comma?)␤at /tmp/XiXSPo9fdP:1␤------> 3class A { has @.a handles Array; }7⏏5 A.new.push("foo").say␤    expecting any of:␤        infix␤…»
16:00 llfourn m: class A { has @.a handles Array; }; A.new.push("foo").say
16:00 camelia rakudo-moar a5c46b: OUTPUT«Cannot call push(A: Str); none of these signatures match:␤    (Any:U \SELF: |values is raw)␤  in block <unit> at /tmp/bGKzdzJrsb line 1␤␤»
16:00 Ulti probably because you would need an instance whereas a Role would be mixed in to the class with the handles
16:00 psch m: class A { has @.a handles Positional; }; A.new.push("foo").say
16:00 camelia rakudo-moar a5c46b: OUTPUT«Cannot call push(A: Str); none of these signatures match:␤    (Any:U \SELF: |values is raw)␤  in block <unit> at /tmp/z8iNzdlQer line 1␤␤»
16:01 llfourn is there a role with .push in it?
16:01 Ulti Pushable :3
16:01 psch curious that it's only the Any:U there
16:01 llfourn moritz: handles Array is not a good idea?
16:01 RabidGravy the syntax highlighter that is used by the docs htmlify doesn't understand some of the quoting thingies BTW
16:02 llfourn hmmm
16:02 moritz llfourn: do you want it to handle everything that Array does? incuding .Bool and .ACCEPTS and what not?
16:02 moritz llfourn: or did I misunderstand what 'handles Array' does?
16:02 llfourn moritz: that's a good point
16:04 phi__ joined #perl6
16:07 phi__ Hello, is it normal for "join + @array" to return a blank string? e.g., my @fields = <1 2 3>; my $c = join + @fields; say $c
16:09 phi__ I'm using the latest version of Perl 6 (2016-05-11)
16:09 RabidGravy I'm surprised it isn't an error
16:09 psch m: say &join.candidates>>.signature
16:09 camelia rakudo-moar a5c46b: OUTPUT«(($sep = "", *@values))␤»
16:09 psch well, it joins nothing with the number of elements in the array as Str
16:09 psch m: say join +[1,2,3,4]
16:09 camelia rakudo-moar a5c46b: OUTPUT«␤»
16:09 psch m: say join +[1,2,3,4], "foo", "bar"
16:09 camelia rakudo-moar a5c46b: OUTPUT«foo4bar␤»
16:10 jnthn Indeed, the + there is prefix +, not infix +
16:10 psch m: say join +<a b c>, "foo", "bar"
16:10 camelia rakudo-moar a5c46b: OUTPUT«foo3bar␤»
16:10 jnthn So nothing strange
16:10 psch phi__: i'd guess your intention was 'join "+", @fields'?
16:10 psch m: my @fields = <1 2 3>; my $c = join '+', @fields; say $c
16:10 camelia rakudo-moar a5c46b: OUTPUT«1+2+3␤»
16:11 geekosaur or they've confused join with reduce on a conceptual level
16:11 phi__ @psch, yes, my intention was +, but why doesn't perl6 complain about the lack of comma?
16:11 psch phi__: because it's valid syntax :)
16:11 psch m: say +[1,2,3]
16:11 camelia rakudo-moar a5c46b: OUTPUT«3␤»
16:11 psch m: my @a = ^10; say +@a
16:11 camelia rakudo-moar a5c46b: OUTPUT«10␤»
16:12 timotimo m: say +, [1, 2, 3]
16:12 camelia rakudo-moar a5c46b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VbxQCZCSqf␤Prefix + requires an argument, but no valid term found␤at /tmp/VbxQCZCSqf:1␤------> 3say +7⏏5, [1, 2, 3]␤    expecting any of:␤        prefix␤»
16:12 timotimo there's your syntax error for "too many commas"
16:12 phi__ ok. Thanks. Another question: what is the equivalent in P6 of foldLeft and foldRight?
16:13 cognominal joined #perl6
16:13 timotimo one equivalent is the reduce metaoperator, like [+]
16:14 timotimo it'll choose between left and right based on the associativity of the operator you give it
16:14 psch m: my @a = ^5; say @a.reduce(&[**]); say @a.reverse.reduce(&[**])
16:14 camelia rakudo-moar a5c46b: OUTPUT«0␤262144␤»
16:14 psch not sure if we have "force associativity" in that sense
16:15 psch but yeah, what timotimo++ says is the more perlish one, in my opinion
16:15 llfourn m: class A { has @.a handles BEGIN Array.^method_table.keys.grep({ ! Mu.can($_) }).List }; my $a = A.new; $a.push("foo"); say $a[0] # sorry to interrupt but this is coolish
16:15 camelia rakudo-moar a5c46b: OUTPUT«foo␤»
16:15 llfourn moritz: ^ I think that's what I want handles Array to do :o
16:16 psch m: class A { has @.a handles BEGIN Array.^method_table.keys.grep({ ! Mu.can($_) }).List }; my $a = A.new; $a.push("foo"); say $a
16:16 camelia rakudo-moar a5c46b: OUTPUT«A.new(a => ["foo"])␤»
16:16 * psch ponders what we have in Any that makes that awkward...
16:16 llfourn push :)
16:17 llfourn m: say ? Any.can('push')
16:17 camelia rakudo-moar a5c46b: OUTPUT«True␤»
16:17 psch nah, i think that's fine
16:17 psch cause you want to push to @.a, not to A
16:17 RabidGravy yeah, handels <*> blows up on a positional too
16:17 llfourn psch: what do you mean?
16:18 psch m: class A { has @.a handles BEGIN Array.^method_table.keys.grep({ ! Mu.can($_) }).List }; my $a = A.new; $a.push("foo"); my $b = A.new.push("bar"); say ($a|$b) ~~ /"foo"/;
16:18 camelia rakudo-moar a5c46b: OUTPUT«any(Nil, Nil)␤»
16:18 psch that's looks pretty awkward to me :)
16:19 psch oh, no, actually
16:19 psch i'm not paying enough attention again :P
16:19 dogbert17 o/ #perl6
16:21 psch m: say Array.^method_table.keys.grep({ !Mu.can($_) })
16:21 camelia rakudo-moar a5c46b: OUTPUT«(STORE name List AT-POS BIND-POS unshift splice of shift pop default DELETE-POS reification-target dynamic flat push from-iterator shape ASSIGN-POS append prepend)␤»
16:21 psch m: class A { has @.a handles BEGIN Array.^method_table.keys.grep({ ! Mu.can($_) }).List }; my $a = A.new; $a.push("foo"); say $a.name
16:21 camelia rakudo-moar a5c46b: OUTPUT«@!a␤»
16:21 psch *that* is awkward .P
16:22 llfourn o.o lol
16:22 dogbert17 have tried to document a few methods in Complex with the help of S32, if anyone wants to review I'd be grateful. https://gist.github.com/dogbert17​/50d2cdaf45861a40291b2ec5240f1626
16:22 psch m: class A { has @.a handles BEGIN Array.^method_table.keys.grep({ ! Mu.can($_) }).List; method name { "kitty!" } };
16:22 camelia rakudo-moar a5c46b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/29r0s3g4dq␤Package 'A' already has a method 'name' (did you mean to declare a multi-method?)␤at /tmp/29r0s3g4dq:1␤»
16:22 llfourn m: [].name.say
16:22 camelia rakudo-moar a5c46b: OUTPUT«Nil␤»
16:23 llfourn so attrs have a .name method that somehow gets called o.o?
16:23 psch m: my $x = "foo"; say $x.VAR.name
16:23 camelia rakudo-moar a5c46b: OUTPUT«$x␤»
16:23 llfourn m: class A { has @.a; method foo { @!a.name.say } }; A.new.foo
16:23 camelia rakudo-moar a5c46b: OUTPUT«@!a␤»
16:23 psch llfourn: containers have a .name method
16:24 llfourn m: my $a; say $a.name
16:24 camelia rakudo-moar a5c46b: OUTPUT«Method 'name' not found for invocant of class 'Any'␤  in block <unit> at /tmp/uNA_oOh1mF line 1␤␤»
16:24 llfourn ? do you mean attributes?
16:24 llfourn or am I missing something
16:24 psch llfourn: methodop on a scalar calls the method on the value inside the container, not the container
16:25 psch m: say (my $x).VAR.^methods
16:25 camelia rakudo-moar a5c46b: OUTPUT«(<anon> <anon> name of default dynamic WHICH)␤»
16:25 llfourn but so do method ops on attributes usually?
16:25 psch llfourn: but Array is a container
16:25 pierre_ joined #perl6
16:25 psch m: my @a; say @a.name
16:25 camelia rakudo-moar a5c46b: OUTPUT«@a␤»
16:25 psch a container container, even :)
16:25 llfourn eh >.<
16:26 llfourn I think I need time to absorb that
16:27 RabidGravy the thing about this is that when the expression is a type or a whatever it adds a fallback method to do it rather than explicitly adding a method
16:27 timotimo why wouldn't the RHS of handles be BEGIN-evaluated already without saying "BEGIN"?
16:28 llfourn timotimo: because Array.^method_table is not a compile time value
16:28 llfourn but maybe it should be wrapped in an implicit BEGIN
16:28 llfourn so to speak
16:28 psch m: class A { has @.a handles Array.^method_table.keys.grep({ ! Mu.can($_) }).List; method name { "kitty!" } };
16:28 camelia rakudo-moar a5c46b: ( no output )
16:28 psch m: class A { has @.a handles Array.^method_table.keys.grep({ ! Mu.can($_) }).List; }; say A.new.push("foo")
16:28 camelia rakudo-moar a5c46b: OUTPUT«Cannot call push(A: Str); none of these signatures match:␤    (Any:U \SELF: |values is raw)␤  in block <unit> at /tmp/RSeFPqmVql line 1␤␤»
16:29 psch yeah, i think that should be implicit there
16:29 llfourn if you give handles a bogus value it seems not to report and error which is another problem
16:29 llfourn report an error*
16:35 RabidGravy yeah, the way it is constructed is that doesn't happen until the method gets called
16:38 timotimo oh, i see
16:41 nebg left #perl6
16:43 llfourn m: class A { has @.a handles ({; <push> }.()); }; my $a = A.new; $a.push("foo"); say $a.perl
16:44 camelia rakudo-moar a5c46b: OUTPUT«A.new(a => ["foo"])␤»
16:44 llfourn that should be runtime
16:44 timotimo you can put a few "say" in there to locate the time it runs
16:45 psch m: my $x; class A { has @.a handles OUTERS::<$x> }; $x = "push"; say A.new.push("foo");
16:45 camelia rakudo-moar a5c46b: OUTPUT«Cannot call push(A: Str); none of these signatures match:␤    (Any:U \SELF: |values is raw)␤  in block <unit> at /tmp/1C69j6WFi2 line 1␤␤»
16:45 psch vOv
16:45 llfourn m: class A { has @.a handles ({say "HELLO"; <push> }.()); }; say "RUNTIME"; my $a = A.new; $a.push("foo"); say $a.perl # good point
16:45 camelia rakudo-moar a5c46b: OUTPUT«HELLO␤RUNTIME␤A.new(a => ["foo"])␤»
16:46 psch m: my $x = "push"; class A { has @.a handles OUTERS::<$x> }; say A.new.push("foo");
16:46 camelia rakudo-moar a5c46b: OUTPUT«Cannot call push(A: Str); none of these signatures match:␤    (Any:U \SELF: |values is raw)␤  in block <unit> at /tmp/GUK3UDAiWU line 1␤␤»
16:46 llfourn m: class A { has @.a handles ({say "HELLO"; <push> }.()); }; say "RUNTIME"; my $a = A.new; say "CONSTRUCTED"; $a.push("foo"); say $a.perl # good point
16:46 camelia rakudo-moar a5c46b: OUTPUT«HELLO␤RUNTIME␤CONSTRUCTED␤A.new(a => ["foo"])␤»
16:46 timotimo put a say before the class definition?
16:46 llfourn m: say "BEFORE CLASS"; class A { has @.a handles ({say "HELLO"; <push> }.()); }; say "RUNTIME"; my $a = A.new; say "CONSTRUCTED"; $a.push("foo"); say $a.perl # good point
16:46 camelia rakudo-moar a5c46b: OUTPUT«HELLO␤BEFORE CLASS␤RUNTIME␤CONSTRUCTED␤A.new(a => ["foo"])␤»
16:46 timotimo so it is begin time, eh?
16:47 llfourn m: INIT say "INIT"; class A { has @.a handles ({say "HELLO"; <push> }.()); }; say "RUNTIME"; my $a = A.new; say "CONSTRUCTED"; $a.push("foo"); say $a.perl # good point
16:47 camelia rakudo-moar a5c46b: OUTPUT«HELLO␤INIT␤RUNTIME␤CONSTRUCTED␤A.new(a => ["foo"])␤»
16:47 llfourn hmm
16:47 llfourn m: class A { has @.a handles INIT <push>; }; my $a = A.new; $a.push("foo"); say $a.perl
16:47 camelia rakudo-moar a5c46b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/NlXsJJDjAe␤Type check failed in binding $expr; expected Any but got Mu (Mu)␤at /tmp/NlXsJJDjAe:1␤»
16:48 llfourn im kinda not sure what's happening now
16:48 psch m: say INIT <foo>
16:48 camelia rakudo-moar a5c46b: OUTPUT«WARNINGS for /tmp/OJa416xihZ:␤Useless use of constant value foo in sink context (line 1)␤foo␤»
16:48 llfourn m: say "RUNTIME"; class A { has @.a handles (say "HELLO") }; my $a = A.new; $a.push("foo"); say $a.perl
16:49 camelia rakudo-moar a5c46b: OUTPUT«HELLO␤RUNTIME␤Cannot call push(A: Str); none of these signatures match:␤    (Any:U \SELF: |values is raw)␤  in block <unit> at /tmp/boe9lPTUHd line 1␤␤»
16:50 itaipu joined #perl6
16:51 llfourn so handles is run at compile time but unless the value returned from handles is known at the compile time of the compile time it won't work :S
16:51 llfourn returned to*
16:52 llfourn passed to*
17:00 dalek doc: a495b5a | (Jan-Olof Hendig)++ | doc/Type/Complex.pod:
17:00 dalek doc: Added docs for methods floor, ceiling, round and truncate in class Complex
17:00 dalek doc: review: https://github.com/perl6/doc/commit/a495b5a27c
17:08 |2701 joined #perl6
17:16 domidumont joined #perl6
17:30 RabidGravy m: role F {}; my @a = <a b c d>;  $_ does F for @a; # is there a way to do this and not get the warning?
17:30 camelia rakudo-moar a5c46b: OUTPUT«WARNINGS for /tmp/HU7xpsOrYw:␤Useless use of $_ in sink context (use Nil instead to suppress this warning) (line 1)␤»
17:31 acrussell joined #perl6
17:31 psch m: role F {}; my @a = <a b c d>; $= $_ does F for @a;
17:31 camelia rakudo-moar a5c46b: ( no output )
17:32 psch m: role F {}; my @a = <a b c d>; $_ does F for @a; @a[0].WHAT.say
17:32 camelia rakudo-moar a5c46b: OUTPUT«WARNINGS for /tmp/FbmYMUeSaP:␤Useless use of $_ in sink context (use Nil instead to suppress this warning) (line 1)␤(Str+{F})␤»
17:32 psch i think the warning is misplaced there, fwiw
17:32 RabidGravy yeah
17:33 psch m: my @a = ^4; $_++ for @a; say @a[0]
17:33 camelia rakudo-moar a5c46b: OUTPUT«1␤»
17:33 psch or it's missing there
17:39 baest joined #perl6
17:40 RabidGravy m: role F {}; my @a = <a b c d>;  Nil // $_ does F for @a; say $_.WHAT for @a ; # shuts it up but eugh
17:40 camelia rakudo-moar a5c46b: OUTPUT«(Str+{F})␤(Str+{F})␤(Str+{F})␤(Str+{F})␤»
17:41 psch yeah i think $= is a bit prettier there :)
17:41 RabidGravy yeah
17:42 sortiz joined #perl6
17:42 psch m: role F {}; my @a = <a b c d>; { no warnings; $_ but= F for @a; } @a[0].WHAT.say
17:42 camelia rakudo-moar a5c46b: OUTPUT«===SORRY!===␤Don't know how to 'no warnings' just yet␤»
17:43 RabidGravy boo!
17:44 sortiz \o #perl6
17:45 AlexDaniel where's the line number
17:55 spider-mario joined #perl6
17:56 jjido joined #perl6
17:56 labster joined #perl6
17:59 jjido joined #perl6
17:59 tmtowtdi joined #perl6
18:00 bdmatatu joined #perl6
18:02 _dolmen_ joined #perl6
18:03 xtreak_ joined #perl6
18:04 sortiz RabidGravy++ # The care for GTK::Simple, lot of work
18:05 RabidGravy I only wanted to make one aoolication with it :)
18:08 bdmatatu Is it possible to have a Date attribute be coerced from a Str?  (<https://git.io/vrPKl>)
18:09 psch bdmatatu: i think you have to do that yourself in BUILD
18:09 bdmatatu Okay, thanks
18:10 psch m: sub f(Date(Str) $x) { say $x }; f "2015-12-25"
18:10 camelia rakudo-moar a5c46b: OUTPUT«Method 'Date' not found for invocant of class 'Str'␤  in sub f at /tmp/4tXzM7sxc3 line 1␤  in block <unit> at /tmp/4tXzM7sxc3 line 1␤␤»
18:10 mst oh, application, I'd been wondering if you were inventing terms again
18:10 psch bdmatatu: the coercion as such doesn't exist in the first place, unlike e.g. Str(Cool)
18:11 psch ...although ISTR that coercion in general is somewhat underimplemented still
18:13 perlpilot bdmatatu: Is it possible?  Yes.  You just have to be prepared to do some more work than just declaring your vars with Date(Str)  ;)
18:14 bdmatatu ok...I just tried making a "Date" method for "Str" but got "This type cannot box a native string"
18:15 mst natives don't box, they prefer cricket
18:16 * mst twiddles moustache, adjusts monocle
18:16 psch m: class C { has Date $.x; submethod BUILD(Str :$x) { $!x = Date.new($x) } }; say C.new(x => "2015-12-25")
18:16 camelia rakudo-moar a5c46b: OUTPUT«C.new(x => Date.new(2015,12,25))␤»
18:17 timotimo tee hee, ms
18:17 timotimo mst
18:20 azawawi joined #perl6
18:20 azawawi ;
18:21 acrussell does perl6 migrate concurrent code to other cores? Suppose I have three functions running to completetion using promises, are all three migrated to different cores?
18:21 Zoffix__ joined #perl6
18:22 TimToady acrussell: yes
18:22 TimToady assuming real threads are doing that in your underlying OS, of course
18:22 TimToady if you don't have multiple cores, well, then, no :)
18:23 acrussell TimToady: great, thanks for clarifying!
18:23 TimToady we use a number of worker threads to schedule in-process concurrency
18:23 TimToady currently defaults to 16 I think
18:24 psch m: say $*SCHEDULER.perl
18:24 camelia rakudo-moar a5c46b: OUTPUT«ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable)␤»
18:24 TimToady should probably revisit that default sometime before everyone has 1000 cores... :)
18:25 perlpilot I'm sure we'll have a "dynamic default" at some point :)
18:25 azawawi so we need a 22-core cpu for optimal performance...  :) i.e. http://ark.intel.com/products/91317/Intel-X​eon-Processor-E5-2699-v4-55M-Cache-2_20-GHz
18:26 TimToady .oO(Our Core Values)
18:26 azawawi :)
18:27 RabidGravy is anyone running it on some 64 core sparc monster?
18:27 azawawi RabidGravy: what about https://github.com/perl6/gtk-simple/pull/33 ? :)
18:29 RabidGravy I'm going to merge it, just giving a consulatation period ;-)
18:29 RabidGravy consultation
18:30 dogbert17 does anyone want to review my attempt to doc methods abs, conj, gist and perl in class Complex? https://gist.github.com/dogbert17​/c8891f3ea49171618e01d27a159152a4
18:31 azawawi RabidGravy: :(
18:31 azawawi RabidGravy: :)
18:32 gorgonzola joined #perl6
18:32 azawawi RabidGravy: anyway it will give me time to test glade to perl6 code
18:32 azawawi RabidGravy: anything like that so far?
18:34 perlpilot dogbert17++ looks good.
18:35 perlpilot dogbert17: Is there a reason $z is mentioned in the signature of the sub form?
18:35 perlpilot of abs
18:35 RabidGravy azawawi, take a look at https://github.com/perl6/gtk-simple/pull/16
18:36 RabidGravy just so you get an idea of the kind of code you'll be targetting
18:36 ZoffixW joined #perl6
18:36 ZoffixW m: 1000000000000066600000000000001.is-prime.say
18:36 camelia rakudo-moar a5c46b: OUTPUT«True␤»
18:36 ZoffixW Cool, no? :)
18:36 perlpilot dogbert17: Also, I might spell out the equation on the (3-4i).abs example i.e.  say (3-4i).abs;  #  sqrt(3*3 + 4*4) == 5
18:36 Zoffix joined #perl6
18:37 dogbert17 perlpilot: no obvious reason no, looked at some other docs and copied it. should I remove it?
18:38 perlpilot dogbert17: no, it's just something my eye picked out as slightly weird
18:38 dogbert17 perlpilot: I'll fix the example
18:39 dogbert17 done, gist updated
18:40 dogbert17 perlpilot: the code in Complex.pm looks like this 'multi sub abs(Complex:D \a) returns Num:D'
18:43 * dogbert17 and the precomp bug when running htmlify.p6 strikes again, grrr
18:43 azawawi RabidGravy: cool... just read it
18:46 azawawi RabidGravy: so basically something like what we did for Wx in Padre https://metacpan.org/pod/P​adre::Plugin::FormBuilder :)
18:49 dalek doc: 555615d | (Jan-Olof Hendig)++ | doc/Type/Complex.pod:
18:49 dalek doc: Added docs for methods abs, conj, gist and perl in class Complex. perlpilot++
18:49 dalek doc: review: https://github.com/perl6/doc/commit/555615d78b
18:49 azawawi RabidGravy: the on-the-fly XML to Class file translation in BEGIN { ... } looks cool until you have big UI projects with many dialogs/windows/components. It adds up to the cost of compiling Perl 6 code and slows down the work of IDEs trying to show errors
18:50 RabidGravy yeah, I'm not that keen on that part
18:50 azawawi RabidGravy: and you need to look at the timestamp of each glade file in question which adds more I/O
18:52 azawawi RabidGravy: Generating stuff in glade is done once at the start of a project to speed up development and then no one really uses it for maintenance
18:53 azawawi RabidGravy: though i could be wrong ofcourse
18:54 * azawawi reads https://developer.gnome.org/​gtk3/stable/GtkBuilder.html
18:55 RabidGravy I actually don't find glade any easier than building it by hand
18:56 geekosaur I thought glade got you some isolation from gnome3/gtk3 folks changing everything at the drop of a hat
18:57 azawawi RabidGravy: so more complete widget support is more important than glade translation support atm. I see.
18:57 geekosaur (that is, that was the main reason to prefer glade)
18:58 RabidGravy yeah, you'd need to support all the widgets to be able to use glade properly anyway
18:59 azawawi so why not create another project for glade XML -> class translation?
18:59 RabidGravy that would be cool
19:00 azawawi GTK::Simple -> widgets wrapper and App::GladeTranslator is a separate effort
19:02 azawawi and maybe GTK Scintilla editor support :)
19:09 willthechill joined #perl6
19:19 itaipu joined #perl6
19:31 dalek doc: 39d583a | (Jan-Olof Hendig)++ | doc/Type/Mix (2 files):
19:31 dalek doc: Fixed three broken links
19:31 dalek doc: review: https://github.com/perl6/doc/commit/39d583a97c
19:38 richi235 joined #perl6
19:39 ZoffixW joined #perl6
19:40 ZoffixW m: class Foo does Associative {}; my Foo $o .= new; say $o<foo>
19:40 camelia rakudo-moar a5c46b: OUTPUT«Associative indexing implementation missing from type Foo␤  in block <unit> at /tmp/Nju6Wj6YIN line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/Nju6Wj6YIN line 1␤␤»
19:41 ZoffixW Are there docs for what exactly "indexing implementation" looks like? Searching for Associative just gives the role docs
19:41 hoelzro ZoffixW: having the error message specify details on what needs doing would be really cool
19:43 nowan joined #perl6
19:44 RabidGravy yeah
19:44 RabidGravy http://docs.perl6.org/language/subscripts#Meth​ods_to_implement_for_associative_subscripting
19:44 ZoffixW Thanks
19:45 firstdayonthejob joined #perl6
19:45 sno joined #perl6
19:46 ZoffixW m: class Foo does Associative { method AT-KEY($key) { self.$key() }; method temp { 42 } }; my Foo $o .= new; say $o<temp>
19:46 camelia rakudo-moar a5c46b: OUTPUT«No such method 'CALL-ME' for invocant of type 'Str'␤  in method AT-KEY at /tmp/dIDPsF9tsK line 1␤  in block <unit> at /tmp/dIDPsF9tsK line 1␤␤»
19:46 ZoffixW Isn't this how to call methods with names stored in a variable :S
19:47 timotimo no
19:47 timotimo you do $foo."$methname"()
19:47 timotimo $foo.$bar is, i think, the same kind of thing $foo.&bar is
19:48 ZoffixW m: class Foo does Associative { method AT-KEY($key) { self."$key"() }; method temp { 42 } }; my Foo $o .= new; say $o<temp>
19:48 camelia rakudo-moar a5c46b: OUTPUT«42␤»
19:48 ZoffixW Thanks
19:48 timotimo YW
19:52 psch m: my $x = sub f($a) { say "!" }; Any.$x()
19:52 camelia rakudo-moar a5c46b: OUTPUT«!␤»
19:52 psch m: my $x = sub f($a) { say "!" }; $x(Any:)
19:52 camelia rakudo-moar a5c46b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/sS45cKuGYa␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/sS45cKuGYa:1␤------> 3my $x = sub f($a) { say "!" }; $x(Any:7⏏5)␤    expecting any of:␤        colon pair␤»
19:53 psch m: say(Any:)
19:53 camelia rakudo-moar a5c46b: OUTPUT«(Any)␤»
19:53 psch right, that's "where do we look for the Callable"
19:54 psch m: my @a = ^5; map (grep @a: * > 3): &say
19:54 camelia rakudo-moar a5c46b: OUTPUT«4␤»
19:54 colomon joined #perl6
19:54 psch it really never stops with that colon, does it
19:55 psch m: my @a = ^5; map( (grep @a: * > 3): &say )
19:55 camelia rakudo-moar a5c46b: OUTPUT«4␤»
19:58 dalek ecosystem: 68fedd3 | (Rajkumar Reddy)++ | META.list:
19:58 dalek ecosystem:  weather
19:58 dalek ecosystem:
19:58 dalek ecosystem: weather for openweathermao
19:58 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/68fedd3543
19:58 dalek ecosystem: e947656 | RabidGravy++ | META.list:
19:58 dalek ecosystem: Merge pull request #209 from palapitta/patch-1
19:58 dalek ecosystem:
19:58 dalek ecosystem:  weather
19:58 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/e9476567ec
19:59 dalek gtk-simple: 841ab17 | azawawi++ | t/01 (2 files):
19:59 dalek gtk-simple: Underscores to dashes in test file names
19:59 dalek gtk-simple: review: https://github.com/perl6/gt​k-simple/commit/841ab17ebe
19:59 dalek gtk-simple: 8a98a1c | azawawi++ | lib/GTK/Simple (5 files):
19:59 dalek gtk-simple: Move GTK::Simple::Widget into its own file along along with ::Common, ::Raw and ::PropertyFacade
19:59 dalek gtk-simple: review: https://github.com/perl6/gt​k-simple/commit/8a98a1c482
19:59 dalek gtk-simple: 57d81d1 | azawawi++ | lib/GTK/ (7 files):
19:59 dalek gtk-simple: Refactor ::ConnectionHandler, ::Container and ::Scheduler into their own files
19:59 dalek gtk-simple: review: https://github.com/perl6/gt​k-simple/commit/57d81d1a3f
19:59 dalek gtk-simple: a02b052 | azawawi++ | lib/GTK/Simple (8 files):
19:59 dalek gtk-simple: Refactor more classes into their own files
19:59 dalek gtk-simple: review: https://github.com/perl6/gt​k-simple/commit/a02b0525f8
19:59 dalek gtk-simple: e0538a0 | azawawi++ | lib/GTK/Simple (17 files):
19:59 dalek gtk-simple: All inner classes/roles have their own files now
19:59 dalek gtk-simple: review: https://github.com/perl6/gt​k-simple/commit/e0538a0086
19:59 dalek gtk-simple: 444744a | RabidGravy++ | / (35 files):
19:59 dalek gtk-simple: Merge pull request #33 from azawawi/master
19:59 dalek gtk-simple:
19:59 dalek gtk-simple: Refactor all inner classes and roles into their own files under GTK::Simple namespace
19:59 dalek gtk-simple: review: https://github.com/perl6/gt​k-simple/commit/444744a068
19:59 RabidGravy azawawi++ # nice one
20:04 cdg joined #perl6
20:09 ZoffixMobile joined #perl6
20:11 ZoffixMobile *notices Weather.pm6 go into the ecosystem* looks like people are actually reading my articles :)
20:11 dha joined #perl6
20:13 * ZoffixMobile tries hard not to comment on the implementation of that module...
20:16 cpage_ joined #perl6
20:17 dha Bleah.
20:17 yoleaux 23 May 2016 23:22Z <AlexDaniel> dha: now I understand your point about quote protection
20:17 yoleaux 23 May 2016 23:22Z <AlexDaniel> dha: I may be wrong, but it looks like you missed the point that under :ww 'hello world' is a single element
20:17 yoleaux 23 May 2016 23:22Z <AlexDaniel> dha: anyway, I've left a comment on your gist
20:18 grondilu joined #perl6
20:22 dha Bah. I forget the semantics for leaving messages via yoleaux
20:23 RabidGravy .tell dha it's use .tell
20:23 yoleaux RabidGravy: I'll pass your message to dha.
20:23 psch .ask dha do you want to ask instead?
20:23 yoleaux psch: I'll pass your message to dha.
20:23 psch (note, those are not actually different :) )
20:23 dha ah.
20:23 yoleaux 20:23Z <RabidGravy> dha: it's use .tell
20:23 yoleaux 20:23Z <psch> dha: do you want to ask instead?
20:23 RabidGravy all good :)
20:24 dha .tell AlexDaniel Yes, you are correct. Have commented back. :-)
20:24 yoleaux dha: I'll pass your message to AlexDaniel.
20:24 dha .kill all humans
20:24 psch .help
20:24 yoleaux psch: I'm yoleaux. Type .commands to see what I can do, or see http://dpk.io/yoleaux for a quick guide.
20:25 dha Suggested patch for yoleaux: have it msg that to anyone who msg's "help" to yoleaux...
20:26 brrt joined #perl6
20:26 dha Unless that dot-command thing became standard while I wasn't looking.
20:26 brrt .mangle who wants to go to yapc::eu
20:26 yoleaux And he wants to implement and yapcan ::
20:27 geekosaur there is no standard for bots. I think I'm in 2 other channels with different bots that have .-commands
20:27 brrt .tz
20:27 yoleaux brrt: I don't currently have a timezone preference set for you.
20:27 geekosaur (one of them has bots that respond to pretty much every other non-alphanumeric prefix though...)
20:28 dha That's what I figured. Hence my suggestion that if someone says "help" to the bot, which seems a fairly obvious thing to try, it would respond appropriately.
20:29 psch dha: fwiw, i don't think the author of yoleaux is around here
20:30 dha Ah.
20:49 jjido joined #perl6
20:51 nowan joined #perl6
20:57 dwarring joined #perl6
20:59 Xliff Oh, GHOD.
20:59 Xliff I hate OAuth2
21:00 jjido joined #perl6
21:03 RabidGravy yes, I keep meaning to spin out the partial implementation from webservice::soundcloud
21:03 RabidGravy but it's a pain
21:03 pmurias joined #perl6
21:04 dha RabidGravy++ #qqww doc patch
21:06 RabidGravy even the search works :)
21:13 dogbert17 "Initiates spawning of the external program. Returns a promise that will be kept with a Proc::Status object ..." - http://doc.perl6.org/type/Proc::Async#method_start # is this really correct?
21:14 dogbert17 Can't find this Proc::Status object in the src
21:17 geekosaur thought someone already fixed (or attempted to fix?) that
21:18 dogbert17 Running the code example it seems that a Proc object is returned
21:26 RabidGravy $!exit_promise.keep(Proc.new(:exitcode(status +> 8), :signal(status +& 0xFF)))
21:27 RabidGravy so yes, that doc is wrong
21:27 dogbert17 RabidGravy: then the doc will be fixed :) thanks for helping out
21:29 dalek doc: 3f93613 | (Jan-Olof Hendig)++ | doc/Type/Proc/Async.pod:
21:29 dalek doc: Fixed error in the documentation for method start. RabidGravy++
21:29 dalek doc: review: https://github.com/perl6/doc/commit/3f93613133
21:29 dogbert17 tada
21:30 dha Oh, and FWIW, I took a look at the grammar (I'm clearly insane). I still have no idea how :w and :ww figure out what are quotes.
21:31 * geekosaur has seen worse grammars...
21:31 Zoffix left #perl6
21:47 dha Oh, I'm sure.
21:49 psch dha: what do you mean "what are quotes"?
21:50 dha There's been discussion on how qqw and qqww work wrt quote preservation. In that context, what counts as a quote?
21:51 psch dha: did you see role ww?
21:51 dha straight quotes, curly quotes, japanese quotes all seem to work. But I think there should be an official description
21:51 dha yep. and japanese quotes, although they are considered quotes in this conext, apparently, are not listed there.
21:52 dha (AFAICT)
21:52 psch oh, that's the weird angle-y things, right?
21:52 psch like, the ones that Match.gist uses
21:52 dha Yep.
21:52 psch m: say "a" ~~ /(a)/ # just to have them for searching
21:52 camelia rakudo-moar a5c46b: OUTPUT«「a」␤ 0 => 「a」␤»
21:52 psch token metachar:sym<'> { <?[ ' " ‘ ‚ ’ “ „ ” 「 ]> <quote=.LANG('MAIN','quote')> <.SIGOK> }
21:53 psch ah, that's in RegexGrammar
21:54 dha ...and looking at role ww doesn't give any indication that I should be looking there (again, afaict).
21:55 dha So figuring out what the *actual* answer is to this, is, IMO, not obvious. (maybe someone who understands the grammar better than I do would be able to figure it out, but... I dunno).
21:55 psch dha: well, afaiu, QGrammar is what parses every q//
21:55 psch dha: and the adverb determin which of the roles inside of QGrammar are applied
21:55 psch +e
21:56 AlexDaniel joined #perl6
21:56 psch role ww says "if we are :ww, everything that uses one of these quote characters gets a new QGrammar with these roles instead, until we hit FAILGOAL
21:56 psch "
21:56 AlexDaniel .
21:56 yoleaux 20:24Z <dha> AlexDaniel: Yes, you are correct. Have commented back. :-)
21:57 dalek doc: 36044a5 | (Jan-Olof Hendig)++ | doc/Type/Supply.pod:
21:57 dalek doc: Two broken links fixed
21:57 dalek doc: review: https://github.com/perl6/doc/commit/36044a500f
21:57 dha psch - great. So where does it say "look at RegexGrammar too!"
21:57 dha ?
21:57 dha :-/
21:58 dha Also, I'm not really sure how to parse that line you posted from RegexGrammar
21:58 dha So... I still don't know how to answer the question. Also, since I don't know how RegexGrammar figures into this, I also don't know if there's something *else* that affects this.
21:58 dha Etc. Etc.... blah.. blah... :-)
21:59 psch dha: well, it declares a metachar token with the symbol <'> that can be any of those quotes, and inside switches to the quote language
21:59 psch s/can be any/gets matched when any of the opening quote characters match/
22:00 psch dha: so, basically, it states that where that rule is in effect a metchar that would match ' can also match e.g. 」
22:00 psch err
22:00 psch the opening one of those two.. :)
22:01 psch of course, that doesn't explain how that goes from Perl6::RegexGrammar into Perl6::QGrammar
22:01 dha Right.
22:01 dha which, again raises the question, what *else* might go into Perl6::QGrammar. :-/
22:02 dha Keep in mind, here, I JUST VOLUNTEERED TO WRITE SOME GOLDARNED DOCUMENTATION
22:02 dha ;-)
22:04 psch ...so what's the documentation-level question? :)
22:05 dha when :w does quote preservation... what counts as a quote?
22:05 psch everything that also counts as a quote in the main language
22:05 dha (or, conversely, when :ww *doesn't* do it)
22:05 psch m: .say for <a <b c>>
22:05 camelia rakudo-moar a5c46b: OUTPUT«Value of type List uselessly passed to val()  in block <unit> at /tmp/k7duwuvbLL line 1␤a␤<b␤c>␤»
22:05 psch grr
22:05 dha Great! What are those things?
22:05 psch well, except for "end and start character is identical" i suppose
22:06 psch if you want to pull that out of the grammar, it's all the "token quote:sym<..>" declaration
22:07 psch or you can hope someone volunteers to do that for you... :)
22:07 psch well, i suppose not all
22:07 psch e.g. token quote:sym<q> is the q// (without the //) construct
22:07 dha Aha.
22:07 psch eh, it's a bit more involved, anyway :/
22:08 psch like, quote:sym</ /> is obviously QRegex, not QGrammar
22:08 dha So, the stuff under 'proto token quote', then.
22:08 psch on a glance, apos, sapos, lapos, hapos, dblq, sdblq, ldblq, hdblq, crnr
22:09 psch those are definitely all variations on q// or qq//
22:09 dha (until the <q>, at least)
22:09 dha ok. *that* seems to be what I was trying to find.
22:10 dha No idea where to put it in the docs, but at least I know where to find it now.
22:10 psch in general, looking for 'nibble(self.quote_lang' is a good hint, yeah
22:10 Zoffix joined #perl6
22:10 Zoffix m: class Foo is Hash { method weather { self = temp => 42, wind => 'NW'; }; method temp { self<temp> }; method wind { self<wind> } }; my $x = Foo.new; $x.weather; say $x; say .temp, .wind given $x; say $x<temp wind>;
22:10 camelia rakudo-moar a5c46b: OUTPUT«{temp => 42, wind => NW}␤42NW␤(42 NW)␤»
22:10 psch that's where we switch into QGrammar
22:10 Zoffix Curious, why does this work? Doesn't weather() overwrite the self with a plain hash?
22:12 psch Zoffix: what does "plain" mean here?
22:12 Zoffix psch, one that doesn't have methods temp and wind.
22:12 psch Zoffix: my gut answer is "assignment calls STORE, which is inherited"
22:13 psch m: class Foo is Hash { method weather { self = Hash.new(temp => 42, wind => 'NW'); }; method temp { self<temp> }; method wind { self<wind> } }; my $x = Foo.new; $x.weather; say $x; say .temp, .wind given $x; say $x<temp wind>;
22:13 camelia rakudo-moar a5c46b: OUTPUT«{}␤(Any)(Any)␤((Any) (Any))␤»
22:13 dha psch++
22:13 dha Thanks!
22:13 psch m: class Foo is Hash { method STORE { die "no candoozeville, babydoll!" }; method weather { self = Hash.new(temp => 42, wind => 'NW'); }; method temp { self<temp> }; method wind { self<wind> } }; my $x = Foo.new; $x.weather; say $x; say .temp, .wind given $x; say $x<temp wind>;
22:13 camelia rakudo-moar a5c46b: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in method STORE at /tmp/XJ2j8Zvtau line 1␤  in method weather at /tmp/XJ2j8Zvtau line 1␤  in block <unit> at /tmp/XJ2j8Zvtau line 1␤␤»
22:14 psch Zoffix: ^^^ i think my gut is in good shape :)
22:15 psch m: class Foo is Hash { method STORE($:$) { die "no candoozeville, babydoll!" }; method weather { self = Hash.new(temp => 42, wind => 'NW'); }; method temp { self<temp> }; method wind { self<wind> } }; my $x = Foo.new; $x.weather; say $x; say .temp, .wind given $x; say $x<temp wind>;
22:15 camelia rakudo-moar a5c46b: OUTPUT«no candoozeville, babydoll!␤  in method STORE at /tmp/4h4C1f7mF6 line 1␤  in method weather at /tmp/4h4C1f7mF6 line 1␤  in block <unit> at /tmp/4h4C1f7mF6 line 1␤␤»
22:15 psch ...i forget which movie that quote was from
22:16 dha Looks like it's from How I Met Your Mother. https://www.youtube.com/watch?v=MAnX98MbfNo
22:17 psch yeah, found that too
22:17 psch i don't even like that show :S
22:17 dha I'm not a huge fan either. :-)
22:17 Zoffix m: class Foo { method STORE ($a, $b) { .say for $a, $b} }; my $x = Foo.new; $x= 42;
22:17 camelia rakudo-moar a5c46b: ( no output )
22:17 psch m: class Foo is Hash { method STORE ($a, $b) { .say for $a, $b} }; my $x = Foo.new; $x= 42;
22:17 camelia rakudo-moar a5c46b: ( no output )
22:18 psch m: class Foo is Hash { method STORE ($a, $b) { .say for $a, $b} }; my $x = Foo.new; $x<a> = 42;
22:18 camelia rakudo-moar a5c46b: ( no output )
22:18 Zoffix Ah, k: https://github.com/rakudo/raku​do/blob/nom/src/core/Map.pm#L9
22:18 Zoffix psch++ thanks
22:18 Zoffix Wait...
22:18 dha anyway...
22:18 Zoffix What does "self = blah" do? Does it call .new?
22:18 psch m: class A { method new { die "yes" }; method foo { self = "foo" } }; A.foo
22:18 camelia rakudo-moar a5c46b: OUTPUT«Cannot modify an immutable A␤  in method foo at /tmp/Lnnrcm13UM line 1␤  in block <unit> at /tmp/Lnnrcm13UM line 1␤␤»
22:18 psch hrm
22:19 psch m: class A { has $.a; method new() { die "yes" }; method foo { self = "foo" } }; A.foo(:1a)
22:19 camelia rakudo-moar a5c46b: OUTPUT«Cannot modify an immutable A␤  in method foo at /tmp/XH8Histvxu line 1␤  in block <unit> at /tmp/XH8Histvxu line 1␤␤»
22:19 psch m: class A { has $.a; method new() { die "yes" }; method foo { self = "foo" } }; A.new(:1a).foo
22:19 camelia rakudo-moar a5c46b: OUTPUT«yes␤  in method new at /tmp/edvbiukFgh line 1␤  in block <unit> at /tmp/edvbiukFgh line 1␤␤»
22:19 psch there's *probably* a good reason for that... :)
22:20 psch m: use nqp; class A { method new { self = nqp::create(self.WHAT) } }; A.new # i'm thinking this timeouts..?
22:20 camelia rakudo-moar a5c46b: OUTPUT«Cannot modify an immutable A␤  in method new at /tmp/EvaAgwnSKB line 1␤  in block <unit> at /tmp/EvaAgwnSKB line 1␤␤»
22:20 psch ah, no, 'cause we haven't blessed yet..?
22:21 psch m: use nqp; class A { method new { self.bless; self = nqp::create(self.WHAT) } }; A.new # i'm thinking this timeouts..?
22:21 camelia rakudo-moar a5c46b: OUTPUT«Cannot modify an immutable A␤  in method new at /tmp/z2Sc34WhS1 line 1␤  in block <unit> at /tmp/z2Sc34WhS1 line 1␤␤»
22:21 psch ...OO is weird :P
22:21 Zoffix m: class Foo { method STORE ($a: $b) { .say for $a, $b}; method meow { self = 42;} }; my $x := Foo.new; $x.meow
22:21 camelia rakudo-moar a5c46b: OUTPUT«Foo.new␤42␤»
22:21 Zoffix Well, I think I get it :)
22:22 sufrostico joined #perl6
22:23 Possum joined #perl6
22:24 psch m: class Foo { method STORE ($a: $b) { .say for $a, $b}; method meow { self = 42;} }; my $x = Foo.new; $x.meow
22:24 camelia rakudo-moar a5c46b: OUTPUT«Foo.new␤42␤»
22:24 * psch hopes the resulting blogpost explains it well
22:24 psch cause i think i don't :)
22:24 Sgeo joined #perl6
22:25 psch Zoffix++ # lotsa blogging
22:26 Zoffix That's not for a blog, I'm arguing: https://www.reddit.com/r/programmi​ng/comments/4kzyug/perl_6_handson_​workshop_weatherapp_part_2/d3jfzcw
22:27 Zoffix https://xkcd.com/386/
22:27 skids joined #perl6
22:30 jjido joined #perl6
22:31 TEttinger joined #perl6
22:31 psch Zoffix: i want to knee-jerk "but you can return a Hash and 'but' an update method on it if you need it"... :)
22:31 psch Zoffix: i'm also not really far into the comment chain :D
22:32 AlexDaniel MasterDuke: hey
22:32 MasterDuke AlexDaniel: hey hey
22:32 Zoffix psch, heh, right :) I forgot about but :)
22:33 AlexDaniel MasterDuke: ok, so one way is to make an account. Then reply button will start working
22:33 Zoffix But the entire argument is pointless really. Both sides are reasonable, I just chose one over the other.
22:33 AlexDaniel MasterDuke: another way is to just write an email with [perl #128214] in subject
22:33 synopsebot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=128214
22:33 AlexDaniel
22:33 psch Zoffix: that really is a thing, and i staunchly blame larry for that
22:33 psch (forgetting features, i mean)
22:33 AlexDaniel MasterDuke: to perl6-bugs-followup@perl.org I believe
22:34 psch Zoffix: also, yeah, the argument is pointless, especially considering the previous point, which implies timtowtdi
22:34 psch Zoffix: but that's why you linked the xkcd, isn't it
22:34 Zoffix ;)
22:35 psch oh hm
22:35 MasterDuke ahh, thanks, good to know
22:35 psch "Built-in data types are nice because they're guaranteed not to have weird behavior."
22:35 Zoffix "is Hash" done
22:35 psch that is such a weird argument to me
22:36 psch i mean, it's literally "i don't use modules", isn't it
22:36 psch because that's the only way to be completely sure of that
22:36 MasterDuke AlexDaniel: i do have an account. i thought i tried replying/commenting when logged in, but maybe no
22:37 psch m: module Fooey { use MONKEY-TYPING; augment class Int { method foo { "this isn't particularly Int-y" } } }; import Fooey; say 5.foo
22:37 camelia rakudo-moar a5c46b: OUTPUT«this isn't particularly Int-y␤»
22:37 peteretep joined #perl6
22:38 psch Zoffix: in the i'd say you missed the opportunity to say "sure, it could be a hash with all those methods stuffed in there, but isn't it weird to expect users to have to look up what new methods a module adds to a built-in data type?", but that'd probably just make them fume
22:40 psch Zoffix: ah, the final comment there concretizes my understanding.  they don't like OO :)
22:40 MasterDuke AlexDaniel: just logged in. however, i can't see anything when logged in. the "display" url (https://rt.perl.org//Public/​Bug/Display.html?id=128214) doesn't work, and the "goto ticket"
22:41 MasterDuke box say no permission to display that ticket
22:41 AlexDaniel MasterDuke: in other words, your account is broken when you're logged in?
22:41 AlexDaniel MasterDuke: OK, it seems like every new account has this problem
22:42 MasterDuke AlexDaniel: ah ha, any solution?
22:42 AlexDaniel MasterDuke: yes. I wrote an email to perlbug-admin@perl.org and somebody fixed my problem
22:42 MasterDuke thanks, i'll try the same
22:43 AlexDaniel MasterDuke: do you see SelfService when you login?
22:43 AlexDaniel or whenever you go anywhere
22:44 MasterDuke i see "Tickets" and "logged in as <my email>"
22:44 AlexDaniel MasterDuke: This? https://files.progarm.org/2016-​02-05-021403_666x501_scrot.png
22:44 geekosaur it'll be in the URL
22:45 MasterDuke yep
22:45 AlexDaniel okay, then it's definitely the same problem :)
22:46 AlexDaniel we should probably tell people to go bombard perlbug-admin@perl.org right after registering… I don't believe that it is possible to create an account without getting this problem
22:47 MasterDuke email sent
22:47 willthechill joined #perl6
22:47 MasterDuke hmm, not so user friendly
22:48 AlexDaniel MasterDuke: ok, now wait. I received a reply in two days
22:48 AlexDaniel MasterDuke: meanwhile you can write a comment by sending an email…
22:48 MasterDuke now to remember what i was going to say...
22:50 MasterDuke AlexDaniel: btw, you're in Estonia?
22:50 AlexDaniel MasterDuke: yes
22:50 MasterDuke i spent a week or so in Tallin a couple years ago, really enjoyed it
22:51 MasterDuke best salmon i've ever had in my life
22:51 AlexDaniel hah :)
22:52 AlexDaniel many things have changed over the last few years, e.g. it is much more bicycle-friendly now :)
22:53 AlexDaniel that is, you should probably visit it again ;)
22:53 jrandm joined #perl6
22:53 MasterDuke i hope to. vana tallinn shots at the dm bar was loads of fun
23:01 Zoffix m: my  %souped-up-hash = {temp => 42, wind => 'NW'} but role { method update { self<temp wind> = 100, 'SE' } };  say %souped-up-hash; %souped-up-hash.update; say %souped-up-hash;
23:01 camelia rakudo-moar a5c46b: OUTPUT«{temp => 42, wind => NW}␤Method 'update' not found for invocant of class 'Hash'␤  in block <unit> at /tmp/5c0VWcT66S line 1␤␤»
23:01 Zoffix No way to do the same as my $x = 42 but ....
23:01 Zoffix ?
23:02 Zoffix m: my  %souped-up-hash = temp => 42, wind => 'NW'; %souped-up-hash = %souped-up-hash but role { method update { self<temp wind> = 100, 'SE' } };  say %souped-up-hash; %souped-up-hash.update; say %souped-up-hash;
23:02 camelia rakudo-moar a5c46b: OUTPUT«{temp => 42, wind => NW}␤Method 'update' not found for invocant of class 'Hash'␤  in block <unit> at /tmp/HedILDbxar line 1␤␤»
23:02 Zoffix :S
23:03 Zoffix m: my  $souped-up-hash = %(temp => 42, wind => 'NW') but role { method update { self<temp wind> = 100, 'SE' } };  say $souped-up-hash; $souped-up-hash.update; say $souped-up-hash;
23:03 camelia rakudo-moar a5c46b: OUTPUT«{temp => 42, wind => NW}␤{temp => 100, wind => SE}␤»
23:03 Zoffix Something to do with containers...
23:05 bjz joined #perl6
23:08 bjz joined #perl6
23:14 _dolmen_ joined #perl6
23:15 Zoffix m: sub weather-for ($a, $b) { %( temp => $a, wind => $b ) };  say weather-for <Brampton ca>
23:15 camelia rakudo-moar a5c46b: OUTPUT«Too few positionals passed; expected 2 arguments but got 1␤  in sub weather-for at /tmp/c1jyMKzBDf line 1␤  in block <unit> at /tmp/c1jyMKzBDf line 1␤␤»
23:15 Zoffix I could've swore stuff like that auto-flattened :S
23:16 timotimo no, like that they'd never do that
23:16 timotimo only if you make it slurpy or flatten it with |
23:16 Zoffix k, I may be confusing this with Perl 5 :/
23:16 timotimo yeah, perl5 does it like that i believe
23:16 kid51 joined #perl6
23:16 timotimo because you always do $foo, $bar = @_
23:29 cpage_ joined #perl6
23:36 kid51 joined #perl6
23:47 cdg joined #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo