Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-11-09

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:00 dayangkun joined #perl6
00:01 timotimo all i had was my @pixels = 127 xx 255 * 255; $some_open_handle.write: Blob.new: @pixels
00:01 dayangkun joined #perl6
00:03 lizmat $ 6 'my @p = 127 xx 255 * 255; dd Blob.new(@p).elems'
00:03 lizmat Int $var = 65025
00:03 lizmat real0m0.207s
00:05 timotimo huh
00:05 timotimo that seems to already have been fast on my machine ?!?
00:06 lizmat well, it's faster now
00:06 timotimo on my machine it only takes 0.2s
00:06 timotimo was i completely mistaken about this?!
00:06 lizmat $ 6 'for ^1000 { Blob[uint16].new(^100) }'
00:06 lizmat real0m0.232s
00:07 timotimo it could have been the stringification perhaps?
00:07 lizmat $ 6 'for ^1000 { Blob[uint16].new(^100) }'
00:07 lizmat real0m2.577s
00:08 lizmat that was before
00:08 timotimo oh
00:08 lizmat seems I got the multiplication factor wrong
00:08 lizmat I thought it had been 5.912 secds
00:08 timotimo oh
00:09 lizmat ah, no, i *did* get it right
00:09 lizmat subtracting the startup and loop overhead (120 msecs)
00:09 timotimo ah
00:09 lizmat you get to something like 23.85
00:09 lizmat so 20x better is not a lie  :)
00:10 * lizmat goes off to get some sleep
00:10 timotimo wait, from 23 to 2.3 isn't 20x
00:10 timotimo i ...
00:10 timotimo dunno?
00:10 timotimo anyway, thanks!
00:10 timotimo i wonder what i did wrong in my measurements
00:11 lizmat m: say (2577 - 120) / (223 - 120)
00:11 camelia rakudo-moar 460d89: OUTPUT«23.854369␤»
00:12 timotimo oh
00:12 timotimo i thought i had to compare against the 2.5, but that was *before*!
00:12 timotimo thanks
00:20 BenGoldberg joined #perl6
00:42 dalek modules.perl6.org/mojo-app: 2295617 | (Zoffix Znet)++ | / (3 files):
00:42 dalek modules.perl6.org/mojo-app: Make builder script generate db for out app
00:42 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/2295617461
01:07 BenGoldberg j: for 8795..0xeffff { "(timeout at $_)".say, last if now > INIT { now + 3 }; my $name = .chr.uniname; next unless $name ~~ m:i/ << star >> /; say "$_: $name" }
01:07 BenGoldberg m: for 8795..0xeffff { "(timeout at $_)".say, last if now > INIT { now + 3 }; my $name = .chr.uniname; next unless $name ~~ m:i/ << star >> /; say "$_: $name" }
01:07 camelia rakudo-jvm 460d89: OUTPUT«8795: STAR EQUALS␤8902: STAR OPERATOR␤(timeout at 8981)␤»
01:07 camelia rakudo-moar 460d89: OUTPUT«8795: STAR EQUALS␤8902: STAR OPERATOR␤9055: APL FUNCTIONAL SYMBOL CIRCLE STAR␤9059: APL FUNCTIONAL SYMBOL STAR DIAERESIS␤9733: BLACK STAR␤9734: WHITE STAR␤9770: STAR AND CRESCENT␤9885: OUTLINED WHITE STAR␤10017: STAR OF DAVID␤10022: BLACK…»
01:09 zacts joined #perl6
01:09 * BenGoldberg wonders why jakudo is so much slower.
01:10 * mst wonders why unicode character names are always in caps
01:11 captainjimboba joined #perl6
01:11 captainjimboba hey...anybody currently on...never used IRC before
01:11 awwaiid greetings captainjimboba
01:11 BenGoldberg Of course there are people on.
01:12 captainjimboba what i assumed...my apologies though :)
01:12 BenGoldberg Doesn't your IRC client have a list of who is on the channel?
01:12 awwaiid BenGoldberg: I'm in plenty of channels where there are people in the channel but nobody's "on" :)
01:12 BenGoldberg Mine says there are 274 people on #perl6 right now.
01:12 captainjimboba it has a list on the side, but I'm not sure if those are active or just an overall list
01:12 BenGoldberg It's an overall list.
01:12 BenGoldberg Some are active, some not.
01:13 captainjimboba Thanks for the FYI! I am now clued in
01:14 captainjimboba I've been reading about Perl 6 lately and it is a nifty project. I have a few questions I'd like to ask though
01:14 BenGoldberg Ask them :)
01:15 BenGoldberg Here in #perl6, as with most channels on freenode, you should not ask whether or not you can ask your question, instead just ask it.
01:17 captainjimboba I was thinking about writing some documentation (something like a free pdf book) for kids on perl 6 at some point.  Does anyone know if there is a policy regarding the use of the Perl 6 "Camellia" logo?  It wouldn't be a hard copy book, just a PDF posted somewhere.
01:18 skids captainjimboba: yes there's a trademark, and a license, which is pretty liberal.
01:18 captainjimboba I think I've read its owned by Larry Wall....I'm not sure if it's ok to use the image as long as credit is given for a non-commercial project
01:18 mst I'd hope so
01:18 mst it'd be a bit weird if camelia was under a more restrictive license than perl or perl6
01:19 captainjimboba I agree lol, but I'd thought I'd ask the question anyway
01:19 skids https://github.com/perl6/mu/blob/master/misc/camelia.txt
01:20 mst captainjimboba: note that the list is clients connected, not necessarily people active at this instant, but there are a lot of people (like me) who both stay connected and will read back when we get online, so even if a channel seems quiet it's often worth saying something anyway then keeping an eye out for a few hours to see if you get a reply
01:20 captainjimboba thank you that is perfect
01:20 mst this one and #perl are both busy enough that's not so much of a big deal (#perl being the perl5 channel)
01:20 mst but it's worth knowing for IRC in general
01:21 captainjimboba thank u for the pointer mst! I've known about IRC in general, but this is the first time i've actually tried it out...so far my first impression is great!
01:21 mst it often confuses people to begin with because people don't tend to do 'hi/bye' very much except on small socially oriented channels
01:23 captainjimboba makes sense if you're always logged into the background....is anyone aware of how the concurrency/parallel support is coming along? I've heard its supposed to be pretty awesome, but i'm not sure if it will be available for Christmas (if it isn't already)
01:23 mst I was under the impression that MoarVM could do quite a bit of it now
01:24 skids jnthn implemented most I think of his latest concurrency streamlining, and intends to fix some bugs WRT IO before xmas I think.
01:25 skids docs/spec have to catch up to code a bit in that department.
01:25 skids react/whenever especially seems to already be working.
01:25 aborazmeh joined #perl6
01:25 aborazmeh joined #perl6
01:27 captainjimboba that is pretty awesome...i look forward to reading the documentation...i know ya'll have all heard it a 1000x, but perl can be a bit intimidating if you started in something like BASIC or Python with a lot less syntax to remember.  I will say that I've been very impressed with the ideals of the Perl 6 project and don't mind learning something new if it has some cool abilities
01:27 mr_ron joined #perl6
01:28 skids https://gist.github.com/jnthn/a56fd4a22e7c43080078 is a sort of "delta" doc based on what was working prior to that roud of changes.
01:28 skids *round
01:29 captainjimboba sweet, i'll check it out....it's always impressive to see these community projects do such awesome things without massive commercial backing
01:30 captainjimboba last question for the night...does anyone know any names of people planning on having a Perl 6 book out sometime not too terribly long after the xmas release?
01:31 captainjimboba I'm assuming the major Perl 5 authors might do something....I think I remember Randal Schwartz was going to wait until things were finalized after trying before when things weren't as stable.
01:32 captainjimboba I was just thinking that would be a really fun book to go through...the Perl 6 website is amazing...the doc is pretty good too and will only get better with time, I wish it had a few more examples though
01:34 skids A lot of rosettacode nodes have Perl6 solutions, so there are some additional examples to peruse that way.
01:37 captainjimboba I had planned on it..I def appreciate the reference...I might even contribute a few solutions at some point! I wonder how many of the code snippets there are idiomatic p6 and not just a translation
01:39 skids Some are better than others, but they do get talked about on the channel, so probably a good number are fine.
01:41 captainjimboba I'll keep that in mind...thanks for the great help everyone! My thanks to everyone working hard to make this project a reality.
01:42 awwaiid captainjimboba: also, the main docs on doc.perl6.org are open-source and welcome contributors. My understanding is you can fork and do PRs on https://github.com/perl6/doc
01:44 pochi joined #perl6
01:44 captainjimboba i didn't know that..thank you! Just checked out P6 on Rosetta Code for the first time in probably a year. The first one I landed on had a note that it ran with Rakudo version 11-03-2015...now that is impressive
01:45 captainjimboba "Statistics/Basic" was the code snippet I chose at random
01:46 Actualeyes joined #perl6
01:48 skids Though a lot of the syntax has been stable for a long time I suspect there are still some idioms yet to be discovered -- every once in a while I see a veteran go "ooh" when someone comes up with a good way to "word" something.
01:51 robertmeta joined #perl6
01:53 Zoffix joined #perl6
01:55 raiph joined #perl6
02:06 dalek ecosystem: 7c81f54 | loren++ | META.list:
02:06 dalek ecosystem: Update META.list
02:06 dalek ecosystem:
02:06 dalek ecosystem: add Net::Ftp to ecosystem See https://github.com/araraloren/Net-Ftp
02:06 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/7c81f548f8
02:06 dalek ecosystem: 8d8d822 | (Zoffix Znet)++ | META.list:
02:06 dalek ecosystem: Merge pull request #88 from araraloren/master
02:06 dalek ecosystem:
02:06 dalek ecosystem: Add Net::Ftp to eco: https://github.com/araraloren/Net-Ftp
02:06 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/8d8d822fc4
02:07 softmoth_ joined #perl6
02:13 vendethiel joined #perl6
02:16 xpen joined #perl6
02:22 xpen joined #perl6
02:28 owlbird joined #perl6
02:37 captainjimboba joined #perl6
02:47 dalek modules.perl6.org/mojo-app: c4251c8 | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6/Model/Dists.pm:
02:47 dalek modules.perl6.org/mojo-app: Initial work on model
02:47 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/c4251c8e1f
03:16 zengargoyle oh, eek.  anybody have an example of having travis.ci install a package...  totally didn't that it wouldn't have a library available.
03:16 Zoffix zengargoyle, https://github.com/zoffixznet/perl6-Pastebin-Gist/blob/master/.travis.yml#L7
03:19 Zoffix zengargoyle, oh, there's a doc too: http://docs.travis-ci.com/user/languages/perl6/#Dependency-Management
03:20 labster joined #perl6
03:20 zengargoyle hrm, found the magic for Ubuntu, now to find if Ubuntu has the package and what it's named, and maybe a bit of shell work that's required.
03:20 Zoffix Oh a package. I misunderstood it for module
03:21 zengargoyle Zoffix: i'm meaning a dis.. yeah, that. :)
03:21 kaare_ joined #perl6
03:36 zengargoyle hrm, there must be a way to make NativeCall use a library.so.1 vs library.so
03:37 zengargoyle the distro packages for the library i'm using for some reason don't make a .so link
03:38 zengargoyle oh, maybe i have to install the *-dev package to get the symlink...
03:38 zengargoyle duh
03:40 xpen joined #perl6
03:41 * zengargoyle crosses fingers and waits
03:44 geekosaur that would be usual, yes
03:44 geekosaur thing is, ideally you would be using the versioned one
03:45 geekosaur because a different version may not be compatible (see for example ncurses 6)
03:45 geekosaur especially for something like nativecall, you probably want to know what API version you are working with
03:46 zengargoyle bah! Disallowing packages: libdatrie-dev
03:47 * zengargoyle wonders how important the flashy badge is. :P
03:48 dalek doc: fb75c43 | (Brock Wilcox)++ | doc/ (8 files):
03:48 dalek doc: Find all the references to curly braces and make them consistent
03:48 dalek doc: review: https://github.com/perl6/doc/commit/fb75c431f6
03:48 dalek doc: 00fc350 | (Zoffix Znet)++ | doc/ (8 files):
03:48 dalek doc: Merge pull request #186 from awwaiid/curly-braces-consistency
03:48 dalek doc:
03:48 dalek doc: Find all the references to curly braces and make them consistent
03:48 dalek doc: review: https://github.com/perl6/doc/commit/00fc350379
03:53 aborazmeh joined #perl6
03:53 aborazmeh joined #perl6
03:57 dalek ecosystem: 3c1da1c | zengargoyle++ | META.list:
03:57 dalek ecosystem: Add Algorithm::Trie::libdatrie
03:57 dalek ecosystem:
03:57 dalek ecosystem: See: https://github.com/zengargoyle/p6-Algorithm-Trie-libdatrie
03:57 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/3c1da1caee
03:59 awwaiid Zoffix: is there some strategy I should be using for contributing to docs? My default is to just do lots of small PRs so they can be discussed individually, but I don't want it to be annoying if I get on a roll
04:00 dalek doc: 03e112e | (Brock Wilcox)++ | doc/ (2 files):
04:00 dalek doc: Fix a few links
04:00 dalek doc: review: https://github.com/perl6/doc/commit/03e112edda
04:00 dalek doc: fc36d45 | (Zoffix Znet)++ | doc/ (2 files):
04:00 dalek doc: Merge pull request #187 from awwaiid/fix-links
04:00 dalek doc:
04:00 dalek doc: Fix/add a few links
04:00 dalek doc: review: https://github.com/perl6/doc/commit/fc36d456dd
04:00 * geekosaur wonders if he should write something up on the whole shared object thing; the API information in the version number is rather important...
04:02 zengargoyle any NativeCall wizards maybe peek at https://github.com/zengargoyle/p6-Algorithm-Trie-libdatrie and let me know if there's anything i could do better.
04:03 awwaiid Zoffix: also, for like the sections in Language/syntax at the bottom (declaration, sub calls, etc), is it OK to PR partial work? Like code example snippets without all the prose.
04:04 zengargoyle and/or method to pull down source and build a library.so during installation.  (thinking of Linenoise like)
04:07 Zoffix awwaiid, not sure what you mean, but sure, partial work is fine. We need a lot of help :)
04:10 tokuhiro_ joined #perl6
04:10 geekosaur hm, actually ncurses 6 was a bad example, they went out of their way to keep the aspects of the API that NativeCall uses the same. (unless someone is actually grotting around inside WINDOWs)
04:11 geekosaur but API changes in many new library major versions will break scripts assuming that is native("foo") loading foo.so -> foo.so.latest is actually whatever API version they were expecting
04:12 geekosaur for example the gnome3 devs have a history of changing stuff constantly with no regard whatsoever for backward compatibility
04:13 geekosaur openssl < 1.0 would be another example, although 1.x versions have some API stability
04:14 geekosaur (openssl < 1.0 was a pathological case, in fact, since the API/ABI was not guaranteed to be compatible even between point releases)
04:34 adu joined #perl6
04:35 raiph joined #perl6
04:40 awwaiid Zoffix: ok cool. I'll keep sending PRs as I make changes.
04:40 xpen joined #perl6
04:45 mr_ron joined #perl6
04:50 zengargoyle i'm hoping that is native('libfoo') is just some simple case and maybe there's is native('libfoo' :ver('1.2')) or something.
04:52 dalek doc: 7fc6c40 | (Brock Wilcox)++ | doc/Language/syntax.pod:
04:52 dalek doc: Add some further stubs for syntax sections
04:52 dalek doc: review: https://github.com/perl6/doc/commit/7fc6c4026d
04:52 dalek doc: cecbf7a | LLFourn++ | doc/Language/syntax.pod:
04:52 dalek doc: Merge pull request #188 from awwaiid/syntax-additions
04:52 dalek doc:
04:52 dalek doc: Add some further stubs for syntax sections
04:52 dalek doc: review: https://github.com/perl6/doc/commit/cecbf7a6f1
04:52 zengargoyle i also wonder if there's a way to apply is native('foo') to a scope, it gets tiresome to cut/paste all of those is native blah onto every sub.
05:02 zengargoyle well, it seems you can do is native('libfoo.so.1') and it works..  wonder if that still gets the automagic libfoo.dll on windows that way?
05:32 dalek doc: 0046d89 | (Brock Wilcox)++ | doc/Language/syntax.pod:
05:32 dalek doc: Clarify Hash literal syntax. Expand on other things.
05:32 dalek doc: review: https://github.com/perl6/doc/commit/0046d894cf
05:32 dalek doc: 8058cb7 | LLFourn++ | doc/Language/syntax.pod:
05:32 dalek doc: Merge pull request #189 from awwaiid/syntax-additions
05:32 dalek doc:
05:32 dalek doc: Clarify Hash literal syntax. Expand on other things.
05:32 dalek doc: review: https://github.com/perl6/doc/commit/8058cb71a3
05:38 CIAvash joined #perl6
05:40 baest joined #perl6
05:49 zengargoyle hrm... $ panda --notests installdeps .
05:49 zengargoyle resolve stage failed for .: Project . not found in the ecosystem
05:55 zengargoyle yay! travis-ci passing obtained.
05:59 xfix joined #perl6
06:31 [particle] joined #perl6
06:54 masak morning, #perl6
06:54 yoleaux 8 Nov 2015 20:15Z <retupmoca> masak: I PR'd HTML::Template to make some warnings go away: https://github.com/masak/html-template/pull/12
06:55 masak retupmoca: looks good. merged.
07:01 geraud m: my $s; for "\x1F000" .. "\x1F021" -> $c { $s ~= $c x 4;}; say $s.comb.pick(14).perl;
07:01 camelia rakudo-moar 460d89: OUTPUT«("🀄", "🀗", "🀈", "🀔", "🀠", "🀃", "🀎", "🀁", "🀟", "🀆", "🀔", "🀙", "🀒", "🀂").Seq␤»
07:01 geraud nice...
07:02 mr-foobar joined #perl6
07:02 diana_olhovik_ joined #perl6
07:10 * masak tasks geraud with implementing mahjong in Perl 6
07:10 [Tux] test             50000    22.665    22.553
07:10 [Tux] test-t           50000    18.781    18.669
07:10 masak moin, [Tux]
07:11 [Tux] o/
07:11 masak [Tux]: remind me -- what's the difference between 'test' and 'test-t'?
07:11 masak is the second-last column "yesterday" and the last one "today"?
07:12 [Tux] test is the original implementation without feature, only changed to keep working after GLR and the like
07:12 [Tux] test is the full-featured module itself
07:12 masak ...and so what we're seeing is a slight (statistically insignificant?) speedup in both benchmarks?
07:12 [Tux] the second-last column is runtime, the last is runtime with startup subtracted
07:13 [Tux] no news today. this is all within noise
07:14 masak aha.
07:15 masak ok, so all the numbers are about today. got it.
07:30 mr_ron joined #perl6
07:38 FROGGS joined #perl6
07:43 masak general question: how would you spell an array concatenation operator?
07:43 masak (if you were defining it lexically in your program, say)
07:44 masak I wanted to go with infix:<++> in 007... but since 007 is less whitespace-sensitive than Perl 6, that would clash with any postfix:<++> people would introduce.
07:44 masak and I do think postfix:<++> has a better claim to that slot.
07:45 masak currently I'm so out-of-suggestions that I'm thinking of just giving up and making it a sub: `concat(a1, a2)`
07:47 masak walk &
07:48 RabidGravy joined #perl6
07:51 _mg_ joined #perl6
07:54 moritz \o
07:58 telex joined #perl6
08:02 RabidGravy marning
08:03 DrForr Just barely...
08:09 abraxxa joined #perl6
08:12 RabidGravy amazing, every year there's an RT, an email, a git hub issue or some other communication about the license of Term::ReadKey
08:13 RabidGravy every time I reply that I have absolutely no way of knowing what the intent of the original author was beyond the actual words in the files
08:14 darutoko joined #perl6
08:20 moritz what do they complain about?
08:28 RabidGravy well, when I took on the maintenance of the module some fifteen years the original author had "disappeared" completely, the only license statement in the module was "Unlimited distribution and/or modification is allowed as long as this copyright notice remains intact." and the (C) .....
08:29 RabidGravy previously I've had IP lawyers from Boeing, VMWare and all sorts of people getting confused because that didn't resolve to a "named open source license form"
08:31 RabidGravy and I've consistently said that's the license, in order to preserve what I see as the original intent I wasn't going to change it
08:33 moritz ah, fun
08:33 moritz sounds pretty similar to the MIT license
08:33 RabidGravy yeah
08:34 pdcawley joined #perl6
08:36 ely-se joined #perl6
08:40 RabidGravy anyway, some point in the last year because I was frankly getting bored of all this, I changed the README stating that you could choose to either accept the original terms or the Artistic license
08:43 RabidGravy now I've got some guy saying the Artistic isn't as permissive as the original terms.  WELL DUH
08:43 RabidGravy ACCEPT THE ORIGINAL TERMS
08:43 moritz [ ] you read what I wrote
08:46 RabidGravy :)
08:46 abraxxa morning guys!
08:46 masak abraxxa: mornin'
08:47 RabidGravy marnin
08:49 * masak hesitates between Perl's `elsif` and Python's `elif`, and realizes he finds `else if` more defensible syntactically
08:49 masak and on a Q level, allowing the `else` branch to contain either a Q::Block or a Q::Statement::If
08:50 moritz m: if 0 { } elsif my $x = 42 { }; say $x
08:50 camelia rakudo-moar 460d89: OUTPUT«42␤»
08:51 masak m: if 1 { } elsif my $x = 42 { }; say $x
08:51 camelia rakudo-moar 460d89: OUTPUT«(Any)␤»
08:51 moritz masak: as long as the else branch itself doesn't introduce a new scope, that's fine
08:51 moritz and I guess it doesn't, because it's not a Block
08:51 dalek rakudo/curli: 289fdc5 | jnthn++ | src/core/ (2 files):
08:51 dalek rakudo/curli: Sinking an unsuccessful Proc should throw.
08:51 dalek rakudo/curli:
08:51 dalek rakudo/curli: This means `run` anad `shell` in sink context will not fail silently
08:51 dalek rakudo/curli: if they are not successful.
08:51 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/289fdc5238
08:51 dalek rakudo/curli: 9fad7b4 | lizmat++ | src/core/Str.pm:
08:51 masak indeed.
08:51 dalek rakudo/curli: Fix several issues reported by Tux++
08:51 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/9fad7b407a
08:51 dalek rakudo/curli: 13d56d1 | lizmat++ | src/core/ (3 files):
08:51 dalek rakudo/curli: Merge branch 'nom' into curli
08:51 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/13d56d1142
08:52 moritz masak: C takes this approach; there's no real "else if", but it falls out of "else" accepting either a block or a statement
08:52 masak as does Java. and probably others.
08:52 dalek Heuristic branch merge: pushed 43 commits to rakudo/curli by lizmat
08:52 masak one advantage: easier to write code crawlers.
08:52 masak moritz: the only "sacrifice", model-wise, is that statements don't usually occur contained in something else like that, except in Q::StatementList
08:53 * masak does a double take on the word "sacrifice", and finds that he digs it immensely as a modeling term -- kind of reminiscent of HPMoR sacrificial rituals
08:54 masak as in "pay attention to what the consequences are down the line of you making this decision"
08:55 ollej left #perl6
09:01 [Sno] joined #perl6
09:06 andreoss joined #perl6
09:10 robertmeta left #perl6
09:11 zakharyas joined #perl6
09:15 dalek ecosystem: 80d1688 | loren++ | META.list:
09:15 dalek ecosystem: Update META.list
09:15 dalek ecosystem:
09:15 dalek ecosystem: update module name to Net::FTP
09:15 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/80d168835c
09:15 dalek ecosystem: f0a9673 | RabidGravy++ | META.list:
09:15 dalek ecosystem: Merge branch 'master' of https://github.com/araraloren/ecosystem
09:15 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/f0a9673f46
09:21 dakkar joined #perl6
09:30 pippo joined #perl6
09:31 mr_ron joined #perl6
09:36 eliasr joined #perl6
09:36 Psyche^ joined #perl6
09:47 lizmat good *, #perl6!
09:47 lizmat and another day that will see a Perl 6 Weekly!
09:47 lizmat so if you think you know something that should be in the P6W, let me know!
09:47 lizmat I'll probably publish in about 10 hours from now
09:48 moritz good morning, lizmat
09:48 masak moin, lizmat
09:49 lizmat moritz masak o/
09:49 * masak .oO( https://upload.wikimedia.org/wikipedia/commons/2/22/Max_und_Moritz.JPG )
09:51 lizmat an oldy but goody  :-)
09:53 mrf lizmat: how does one sign up for the p6 weekly
09:54 lizmat mrf: there is no mailing list, just a website: https://p6weekly.wordpress.com
09:54 mrf lizmat: that works for me.
09:54 * mrf bookmarks
09:56 moritz mrf: it's also on the pl6anet.org RSS feed
09:57 masak and surely the p6weekly has its own RSS feed too
09:58 lizmat masak: I have no idea, but guess so
09:58 CIAvash https://p6weekly.wordpress.com/feed/
09:58 masak stray Monday thought: the way operators work in Perl 6 (as "funnily-spelled routines") is quite cute/ingenious/wonderful, but... whoever came up with that did not have macros in mind. :)
09:59 mst masak: how so?
09:59 masak mst: let me quickly walk you through why it's brain-melty.
10:00 masak mst: using traits like `is looser(infix:<+>)`, the operators specify their precedence (and associativity)
10:00 masak mst: now, imagine a world where you can inject an *operator* into an expression. the exact operator is not known until macro injection time.
10:01 masak mst: usually, quasi-quote-like constructs create an AST with "holes" representing the things we haven't inserted yet.
10:01 masak mst: but with precedence/associativity hanging off the *operator* as in Perl 6, we can't even meaningfully form the tree until we have the operator.
10:02 masak mst: the best we can do is say "hm, we have these terms, operators, and various holes in a sequence"
10:02 masak and then form the tree once we have the operator in question.
10:02 moritz so the problem is that  1 mymacro 2 + 3  could mean (1 <thinginjectedfrommyamcro> 2) + 3 or 1  <thinginjectedfrommyamcro> ( 2 + 3) ?
10:03 masak yeah.
10:03 moritz then I'd form the tree based of the precedence and associativity of the macro
10:03 masak though you're in the wrong place. it's not about macros; it's about unquotes ({{{ }}})
10:03 masak they're like the parameters of the AST world.
10:04 masak in that we don't have them until later, when a (macro) call is made and we eval the quasi.
10:04 moritz because the precedence etc. is a lexical property, so it's fitting to be tied to the macro that's called, not to its result
10:05 masak it's not about macros, it's about unquotes.
10:05 masak you're right, of course. if the macro is an operator, it should work just like a sub.
10:05 masak that much is clear, and a non-issue.
10:05 moritz masak: could you please give an example+
10:05 moritz s/\+/?/
10:06 masak the situation is more like this (syntax conjectural and 007): `1 {{{myop @ Q::Infix}}} 2 + 3`
10:06 masak (inside a `quasi { ... }`)
10:06 masak and myop could be tighter or looser than +
10:06 timotimo i could totally see forcing parens directly around the arguments of a quasi'd infix op
10:06 timotimo as a "please, dear user, understand our plight" thing
10:06 masak yeah, maybe there's some nice compromise there.
10:06 masak timotimo++ # suggestion
10:07 moritz or infix:<{{{ }}}> having a fixed precedence
10:07 moritz just like any other infix operator
10:07 masak hm.
10:07 masak also a worthy suggestion.
10:07 moritz (though I have no idea what a sensible precende for a generic infix woudl be)
10:07 moritz *precedence
10:07 masak "tighter than everything" :)
10:07 timotimo or you could allow the user to put a precedence into the {{{ }}}
10:07 masak timotimo: yes, that has occurred to me too.
10:07 timotimo Q::Infix:like<+>
10:08 timotimo vs Q::Infix:like<*>
10:08 masak `is equal(infix:<+>)`, surely
10:08 timotimo that's a bit wordier, but the same meaning i meant
10:08 masak aye
10:08 masak (plus or minus a & in Perl 6) :)
10:08 timotimo i meant to mean that, too!
10:09 moritz so, not an unsurmountable problem, just one more thing[tm] to keep in mind/decide/implement
10:10 masak ok, I feel we've successfully de-teethed another dragon here which be. :)
10:10 masak here be which*
10:10 masak thank you for responding positively to my macro-related /me -- mst++ moritz++ timotimo++
10:12 lizmat All tests successful.
10:12 lizmat Files=1071, Tests=49722, 234 wallclock secs (12.70 usr  3.74 sys + 1428.79 cusr 129.70 csys = 1574.93 CPU)
10:12 timotimo sure :)
10:12 dalek rakudo/nom: ac750a9 | lizmat++ | src/core/Buf.pm:
10:12 dalek rakudo/nom: Make Blob/Buf.list 25% faster
10:12 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ac750a9a2f
10:13 mst I think I might have unqoutes binds -loosely- so people have to explicitly ()
10:13 mst i.e.
10:14 mst (1 mymacro 2)
10:14 mst easier to add quotes around the macro than around everything else
10:14 mst er
10:14 mst I mean (1 {{{ thing }}} 2)
10:14 CIAvash Is it possible to provide the MAIN's arguments processing as a core module?
10:14 dalek modules.perl6.org: ecf43bf | timotimo++ | web/index.tmpl:
10:14 dalek modules.perl6.org: move some scripts and sprite.css to the head section
10:14 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/ecf43bf612
10:15 timotimo CIAvash: what do you mean by "core module"?
10:16 timotimo lizmat: hm, IterationBuffer doesn't like having the contents of an int-typed VMArray nqp::splice'd into it?
10:16 andreoss masak: yapsi works again with my PRs
10:16 lizmat timotimo: you mean, I broke something ?
10:16 CIAvash timotimo: I read http://perlgeek.de/blog-en/perl-6/how-core-is-core.html but I'm not sure. But something like Date or Test
10:16 timotimo no, i was wondering why you don't do it like that :)
10:17 timotimo Date is not something you "use", it's "always there"
10:17 andreoss tardis does too, but returns statement in backward order for some reason
10:17 masak andreoss: thanks -- merged!
10:17 lizmat timotimo: because this way was faster ?
10:17 masak mst: good point.
10:17 CIAvash timotimo: You'r right, it's a type
10:17 timotimo lizmat: ah, cool
10:17 timotimo CIAvash: i think if you "use" a module that exports a MAIN_HELPER (or something?) it would end up being called instead of the one you get by default from the core setting
10:18 masak mst: actually, I might consider dying (at parse time) whenever there's *any* ambiguity. so (in a sense) unquoted operators would have no precedence, or Chthulu precedence.
10:18 mst masak: ooh, yes, and better still you can start off doing that and back off the die()s later without breaking anything working
10:18 pink_mist please tell me Chthulhu precedence is an actual thing :P
10:19 * moritz wants it too
10:19 * timotimo too
10:19 moritz but it should mean random precedence, really
10:19 * moritz cackles evilly
10:19 timotimo i think it should actually mean "always the wrong precedence"
10:19 mst nah, I think "when precedence of this thing is required, Cthulhu happens"
10:19 timotimo because with random precedence you have the random chance of making the programmer happy
10:19 masak what mst said.
10:19 mst I love this concept.
10:19 masak it means "you said you wanted this, and now there will be unworldly, abject pain"
10:20 masak the Chthulu that can be described is not the true Chthulu
10:20 mst the Cthulu that can be compiled is not the true Cthulhu
10:20 mst therefore all must die
10:20 pink_mist mst: you were up when I went to bed some 7-8 hours ago ... you're still up? 0_o
10:20 Actualeyes joined #perl6
10:23 xpen joined #perl6
10:27 CIAvash joined #perl6
10:27 andreoss how do i pre-compile a module with panda?
10:27 andreoss > When pre-compiling a module, its dependencies must be pre-compiled first.
10:27 andreoss > Please pre-compile /home/andreoss/perl6/moar-nom/install/share/perl6/site/lib/DBIish.pm6
10:27 andreoss
10:28 timotimo my last change to modules.perl6.org made it the page load complete in 1.5s instead of 2s!
10:28 CIAvash timotimo: The reason for that idea was that to be able to do something like this: class App { method run (@args) { self.main: process-cmd-args(|@args); multi method main {...} } }
10:29 moritz timotimo++
10:29 timotimo another thing that could be done is to put loading the list.min.js file into the head, too
10:29 timotimo it seems i didn't notice that before
10:30 sprocket joined #perl6
10:31 dalek modules.perl6.org: d2167e0 | timotimo++ | web/index.tmpl:
10:31 dalek modules.perl6.org: forgot one more script file: list.min.js
10:31 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/d2167e02d6
10:31 lizmat andreoss: presently, panda does not precompile anymore (afaik)
10:31 RabidGravy didn't last time I looked
10:31 timotimo andreoss: it looks like you have some wildly outdated .moarvm files or something
10:32 timotimo like, at least 2 months old
10:32 timotimo BBIAB
10:33 RabidGravy ooh a git update
10:34 timotimo andreoss: if you require precompilation, you can use zef to install your modules
10:34 timotimo it's on github under ugexe/zef
10:36 * flussence has a nasty `find` command to precompile stuff:
10:36 flussence find $install/share/perl6/site/lib/ -name '*.pm' -exec bash -xc 'test -f {}.moarvm || perl6 --optimize=3 --target=mbc --output={}.moarvm {}' \;
10:37 flussence (takes 3-4 iterations, but it works...)
10:38 masak one thing that annoys me about Perl 6 script arguments right now is that I can do -e'say 42' or -e 'say 42' with Rakudo, but with a Perl 6 *script* I have to write it as -e='say(42)' (with the `=`)
10:38 masak the asymmetry annoys me.
10:38 masak e.g. `perl6 bin/007 -e='say(42)'`
10:39 masak I don't know of a reason it *has* to be the way it currently is, save maybe for "spec says so"
10:40 masak and I posit that allowing -e'say(42)' would harm no-one and make the experience better for those who want it :)
10:40 pink_mist what's bin/007?
10:40 flussence lotsa things about MAIN annoy me. it works pretty well for 80% of cases but it's ugly for the other 80%
10:42 masak pink_mist: http://masak.github.io/007/ https://github.com/masak/007
10:42 masak flussence: yes, I have the same experience.
10:42 masak flussence: I do think it's just a matter of polishing it further, though.
10:43 masak flussence: I don't think a raging revolution is called for. just incremental improvements.
10:43 pink_mist masak: so it's a script? looks to me like bin/007 should get the -e='say(42)' argument? not the perl6 interpreter/vm
10:43 masak pink_mist: correct.
10:44 flussence agreed. I've seen most of the language at "80% done" at one point or another. It'll get much better in the end :)
10:44 masak pink_mist: what feels inconsistent to me is that Rakudo has this nice -e'...' shortcut, but Perl 6 scripts need to do it like -e='...'
10:45 mst won't "-e '...'" work?
10:47 flussence mst: MAIN is kind of primitive. that just sets boolean :$e and a positional arg right now.
10:50 masak mst: no :( but I'd like it to.
10:50 CIAvash There is a TODO comment in Main.pm: #   * Allow both = and space before argument of double-dash args
10:50 masak both forms -e'...' and -e '...' should work.
10:50 flussence (and "primitive" is putting it mildly - `panda list --installed` doesn't work, `panda --installed list` does)
10:50 masak I don't care what happens to the -e='...' form
10:50 masak flussence: ah, yes. that one annoys me to no end as well.
10:51 masak flussence: "please put your named arguments *first*!" (as opposed to named parameters in Perl 6 routines, which have to be after the positionals, and named Perl 6 arguments, which can occur anywhere)
11:01 timotimo now my chrome says "load: 1.21s, domContentLoaded: 1.28s"
11:04 azawawi joined #perl6
11:04 azawawi hi #perl6
11:04 timotimo heyo azawawi!
11:05 masak hi azawawi
11:05 * azawawi is working on https://github.com/azawawi/language-perl  # atom's Perl 6 syntax highlighting
11:05 timotimo awesome!
11:05 El_Che does it include 5?
11:05 azawawi one bug caught my idea... but it is rather severe in windows perl 6 repl
11:05 azawawi El_Che: yes
11:05 El_Che nice
11:06 azawawi El_Che: im just modifying it to accept start-from-here or is-required ... so it does not  highlight keywords
11:07 azawawi perl6 repl gets stuck after evaluating 'sub foo { say "1"; }; foo();'
11:07 timotimo "start-from-here"? "is-required"?
11:08 azawawi timotimo: sub start-from-here  { ... }
11:08 azawawi timotimo: that's legal in Perl 6, right?
11:08 timotimo oh
11:08 timotimo that's right
11:08 azawawi timotimo: sub is-required { ... }
11:09 timotimo i thought those were supposed to be Actual Things
11:11 azawawi confirmed... perl6 windows repl gets stuck after executing " sub foo() { say 1; }; foo;" twice... like  it is expecting input or something
11:11 azawawi any ideas?
11:11 timotimo :o
11:12 timotimo you can attach gdb to it and see what the backtrace says?
11:14 * flussence tries running browser profiler on the modules page, gets an OOM
11:20 azawawi interesting
11:20 azawawi m: sub is-1 { ... }
11:20 camelia rakudo-moar ac750a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Eqa0cC8tDp␤Missing block␤at /tmp/Eqa0cC8tDp:1␤------> 3sub is7⏏5-1 { ... }␤    expecting any of:␤        new name to be defined␤»
11:21 azawawi m: is-1;
11:21 camelia rakudo-moar ac750a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/S4a7TGI456␤Undeclared routine:␤    is used at line 1␤␤»
11:21 azawawi that's not right
11:21 azawawi is-1 is not a valid routine name right?
11:21 RabidGravy I didn't think so
11:21 flussence hyphens are only valid between letters iirc
11:22 flussence std: sub is-1 {...}
11:22 Zoffix joined #perl6
11:22 azawawi so basically the message "Undeclared routine" is not correct?
11:23 camelia joined #perl6
11:23 RabidGravy other wise
11:23 RabidGravy m: sub foo { 10 }; say foo-1
11:24 RabidGravy wouldn't be possible
11:24 camelia std : OUTPUT«Can't chdir to '/home/camelia/std/snap': No such file or directory at lib/EvalbotExecuter.pm line 171.␤    EvalbotExecuter::_auto_execute(HASH(0x26c6218), "sub is-1 {...}", GLOB(0x260e8e0), "/tmp/TvW36K2DdN", "std") called at lib/EvalbotExecuter.pm line 119␤ EvalbotExe…»
11:24 camelia rakudo-moar ac750a: OUTPUT«9␤»
11:25 RabidGravy there there
11:25 RabidGravy obviously, though
11:25 azawawi yeah confusing but you're right... the message is right
11:25 RabidGravy m: sub foo { 10 }; sub bar { 1 }; say foo-bar;
11:25 camelia rakudo-moar ac750a: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Js_sdWbm8S␤Undeclared routine:␤    foo-bar used at line 1␤␤»
11:25 flussence std: hello?
11:25 RabidGravy tricky
11:25 azawawi after working with syntax highlighting regexes, this obviously happens to one :)
11:26 flussence guess it's dead...
11:27 camelia joined #perl6
11:27 azawawi i guess we should have required routine() syntax to remove the ambiguity...
11:27 azawawi so many special cases for Perl 6 lol
11:27 timotimo ah, you mean like routine(foo-bar)(1, 2, 3)? :P
11:27 dalek rakudo/nom: d175d00 | lizmat++ | src/core/IO/Handle.pm:
11:27 dalek rakudo/nom: Checking for eoffh should be enough
11:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d175d0079e
11:28 timotimo routine(say)("hello, azawawi!"); routine(say)(1 routine(+) 2)
11:28 camelia std : OUTPUT«Can't chdir to '/home/camelia/std/snap': No such file or directory at lib/EvalbotExecuter.pm line 171.␤    EvalbotExecuter::_auto_execute(HASH(0x26c6218), "hello?", GLOB(0x3da7400), "/tmp/lrriqcsF22", "std") called at lib/EvalbotExecuter.pm line 119␤ EvalbotExecuter::_…»
11:29 azawawi timotimo: i meant to require a () for a routine call like javascript and other languages...
11:30 azawawi timotimo: while it is fun, it has edge cases where it does not work
11:30 timotimo :)
11:31 ely-se joined #perl6
11:32 azawawi https://github.com/azawawi/language-perl/commit/5098af0898224f4528dc3bc17fa1719b477f160d  # tests
11:33 mr_ron joined #perl6
11:33 g4 joined #perl6
11:33 g4 joined #perl6
11:33 azawawi the whole a routine can be inside an identifier if a dash is involved is funny :)
11:34 Skarsnik joined #perl6
11:34 azawawi given that we have a lot of keywords and word operators i bet there is some cases we didnt cover
11:35 azawawi s/is/are
11:36 Zoffix Woohoo \o/ It's a win for OCD :) https://github.com/araraloren/Net-Ftp/issues/11
11:37 azawawi Zoffix: re the datatables idea, i could work on the frontend/backend since i already have done for countless web projects... :)
11:39 Zoffix azawawi, too late :D I already started. And depending on how awesome Fallout 4 will end up, we'll see the final product in a couple of days :P
11:39 azawawi Zoffix: then we wont see anything :)
11:39 Zoffix hahaha
11:40 * azawawi blames his open source laziness on world of warcraft
11:42 jnthn afternoon, #perl6
11:42 yoleaux 8 Nov 2015 22:27Z <lizmat> jnthn: when thinking about VM level chomping, I was thinking that chomp would be a VMIO attribute
11:42 yoleaux 8 Nov 2015 22:29Z <lizmat> jnthn: is there a reason for not making chomp a VMIO level attribute ?
11:42 kensanata joined #perl6
11:42 timotimo greetings jnthn!
11:42 lizmat jnthn o/
11:43 lizmat jnthn: please also see my remarks on #moarvm
11:43 weihan joined #perl6
11:43 jnthn lizmat: The VM interface is already complex enough; I don't think there's any compelling performance reason to push the "chomp or not" decision there
11:43 jnthn There's not likely to be a performance win.
11:44 Actualeyes joined #perl6
11:44 lizmat ok, then remains this:
11:44 lizmat $ 6 'spurt("one","\n"); say open("one").get'
11:44 lizmat (Str)
11:44 lizmat I would expect an empty line there
11:44 jnthn Is that a behavior change?
11:44 jnthn If so, it wasn't tested.
11:45 lizmat well, yes, because before we would *always* get the line ending
11:45 lizmat and *then* chomp
11:45 lizmat so you could check nqp::chars
11:45 jnthn Right, thus why I did the "check eof" change
11:45 lizmat yes, but eof is already set apparently
11:46 lizmat so it reads the line, notices it is at the end of the file, sets the eoffh flag, then returns the (possibly) chomped line
11:47 lizmat at the other end, it sees the eoffh flag set and no chars, so done
11:47 jnthn iirc there isn't actually an "eof flag" in syncfile
11:47 jnthn That's quite possibly going to change
11:48 lizmat anyway, I'll add a test  :-)
11:49 jnthn OK. Remember to mark it todo
11:49 lizmat yeah...  :-)
11:49 jnthn And then if other I/O refactors happen to fix it then we'll notice.
11:56 sufrostico joined #perl6
12:01 dolmen joined #perl6
12:01 dalek roast: 51c0632 | lizmat++ | S16-io/lines.t:
12:01 dalek roast: Add some more line ending tests
12:01 dalek roast: review: https://github.com/perl6/roast/commit/51c0632751
12:01 ely-se joined #perl6
12:07 _mg_ joined #perl6
12:14 Hor|zon joined #perl6
12:15 azawawi https://github.com/atom/language-perl/pull/56  # Better highlighting PR for atom :)
12:27 lizmat All tests successful.
12:27 lizmat Files=1071, Tests=49977, 233 wallclock secs (12.88 usr  3.73 sys + 1433.93 cusr 130.67 csys = 1581.21 CPU)
12:28 lizmat ^^^ just because it feels good
12:28 jnthn Also, looks like we'll be able to say that 6.c has more than 50,000 tests :)
12:29 dalek rakudo/nom: 93f8992 | lizmat++ | src/core/IO/Handle.pm:
12:29 dalek rakudo/nom: Streamline IO::Handle.get a bit more
12:29 dalek rakudo/nom:
12:29 dalek rakudo/nom: Don't check for EOF always first, only *after* having tried to read
12:29 dalek rakudo/nom: *and* only when no chars were returned
12:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/93f8992e4d
12:31 lizmat jnthn: working on that  :-)
12:32 * jnthn has 15 new tests locally also :)
12:35 lizmat jnthn: do you have an opinion about IO::Handle.ins ?
12:35 lizmat I think it should die: in these days of lines.kv, we don't need the overhead for *all* line based reading
12:41 dalek rakudo/nom: 65bfb6c | lizmat++ | src/core/IO/Handle.pm:
12:41 dalek rakudo/nom: Streamline IO::Handle.getc, now 2x as fast
12:41 dalek rakudo/nom:
12:41 dalek rakudo/nom: This now returns Str upon reaching EOF rather than a fail.  Reasons:
12:41 dalek rakudo/nom: - it is more line with .get returning Str at EOF
12:41 dalek rakudo/nom: - returning a Str is *much* cheaper than returning a fail
12:41 kid51 joined #perl6
12:41 dalek rakudo/nom: - checking most likely was for .getc.defined anyway, so that still works
12:41 dalek rakudo/nom:
12:41 dalek rakudo/nom: FWIW, no spectest breakage
12:41 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/65bfb6c26f
12:42 jnthn lizmat: No particularly strong views either way
12:42 lizmat lemme check the gain and spectest breakage
12:47 lizmat a loop with .get is 9% faster without the $!ins update
12:51 yqt joined #perl6
12:54 lizmat jnthn: 3 tests fail in t/spec/S16-filehandles/io.t which specifically test for .ins
12:54 RabidGravy a small LTA :
12:54 RabidGravy m: my $a = "jsjsjs {"; for <a b> -> $b { say $b }
12:54 camelia rakudo-moar 65bfb6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/QteI9KZjBi␤Variable '$b' is not declared␤at /tmp/QteI9KZjBi:1␤------> 3my $a = "jsjsjs {"; for <a b> -> 7⏏5$b { say $b }␤»
12:54 lizmat rakudobuggable I would think
12:55 mr_ron joined #perl6
12:55 brrt joined #perl6
12:56 RabidGravy I thought I was going stupid, took me ages to work out where the problem was
12:56 lizmat maybe TimToady has a stronger view on IO::Handle.ins
12:57 lizmat or someone else on the channel
12:57 lizmat if not, I'll remove it
12:57 ilmari m: my $a = "{ 42"; for <a b> -> $b { say $b } # also LTA error
12:57 camelia rakudo-moar 65bfb6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/m116oiicso␤Two terms in a row␤at /tmp/m116oiicso:1␤------> 3my $a = "{ 427⏏5"; for <a b> -> $b { say $b } # also LTA␤    expecting any of:␤        infix␤        infix stopper␤        stateme…»
12:58 ilmari "unterminated block in string interpolation" or somesuch?
12:58 RabidGravy I'll make an RT and put both in
12:58 jnthn lizmat: +1 to "see what TimToady thinks"
12:59 ilmari m: { 42
12:59 camelia rakudo-moar 65bfb6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/QtT7yJq6TZ␤Missing block␤at /tmp/QtT7yJq6TZ:1␤------> 3{ 427⏏5<EOL>␤    expecting any of:␤        statement end␤        statement modifier␤        statement modifier loop␤»
12:59 cognominal joined #perl6
12:59 ilmari or at least make it the same as that error?
13:00 jnthn Missing block is a tad off there too
13:00 jnthn Good errors. They're really darn hard. :-)
13:01 ilmari "missing end of block" would be more helpful
13:04 RabidGravy just added an RT #126596 for the first two
13:07 andreoss m: (1,2,3)>>.WHAT>>.say
13:07 jevin joined #perl6
13:07 camelia rakudo-moar 65bfb6: OUTPUT«Memory allocation failed; could not allocate 94208 bytes␤»
13:10 andreoss m: (1,2,3).WHAT>>.say
13:10 ilmari what happened to the linkbot?
13:10 camelia rakudo-moar 65bfb6: OUTPUT«Memory allocation failed; could not allocate 94208 bytes␤»
13:10 moritz m: say 42
13:10 camelia rakudo-moar 65bfb6: OUTPUT«42␤»
13:10 ilmari m: (1,2,3).>>WHAT.say
13:10 camelia rakudo-moar 65bfb6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5rXI1v2Jjh␤Missing dot on method call␤at /tmp/5rXI1v2Jjh:1␤------> 3(1,2,3).>>7⏏5WHAT.say␤    expecting any of:␤        postfix␤»
13:10 timotimo i wonder if we should replace things in the core setting that "fail foobar" with "return Failure.new(...)"
13:11 ilmari m: (1,2,3)>>.WHAT.say
13:11 camelia rakudo-moar 65bfb6: OUTPUT«(List)␤»
13:11 ilmari m: ((1,2,3)>>.WHAT).say
13:11 camelia rakudo-moar 65bfb6: OUTPUT«(List)␤»
13:11 lucasb joined #perl6
13:11 andreoss why not (Int Int Int)?
13:12 andreoss m: (1,2,3)>>.^name>>.say
13:12 camelia rakudo-moar 65bfb6: OUTPUT«List␤»
13:12 andreoss m: (1,2,3).map(*.^name)>>.say
13:12 camelia rakudo-moar 65bfb6: OUTPUT«Int␤Int␤Int␤»
13:12 jnthn .WHAT is macro-ish; I'm surprised it works at all with >>
13:12 jnthn (Rather than compile error)
13:12 timotimo m: List>>.say
13:13 timotimo ^ golfed
13:13 masak it's weird to call anything method-like "macro-ish". methods are late-bound; macros are very very early.
13:13 camelia rakudo-moar 65bfb6: OUTPUT«Memory allocation failed; could not allocate 8192 bytes␤»
13:14 lucasb hmm, it looks method-ish, but it's not
13:14 masak something like that.
13:14 masak people have been known to say that `.WHAT` is a postfix operator or something.
13:14 masak maybe that's the way to look at it -- I dunno
13:14 rindolf joined #perl6
13:14 ilmari m: List>>.who-what-where-now?
13:14 camelia rakudo-moar 65bfb6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/cHD0wsyEMH␤Bogus postfix␤at /tmp/cHD0wsyEMH:1␤------> 3List>>.who-what-where-now7⏏5?␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modif…»
13:14 ilmari m: List>>.who-what-where-now
13:15 andreoss m: (1,2,3)>>.^name>>.say
13:15 camelia rakudo-moar 65bfb6: OUTPUT«Memory allocation failed; could not allocate 131072 bytes␤»
13:15 camelia rakudo-moar 65bfb6: OUTPUT«List␤»
13:15 andreoss jnthn: same with .^name?
13:16 dalek rakudo-star-daily: d14e317 | coke++ | log/ (9 files):
13:16 dalek rakudo-star-daily: today (automated commit)
13:16 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/d14e317674
13:16 dalek perl6-roast-data: ea620f8 | coke++ | / (9 files):
13:16 dalek perl6-roast-data: today (automated commit)
13:16 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/ea620f8a5b
13:17 pippo joined #perl6
13:18 jnthn masak: The thing that makes .WHAT not just compile into a method call is *very* compile time :P
13:20 xpen joined #perl6
13:22 psch jnthn: i've been looking at RT #74414, and the obvious way throws X::Multi::NoMatch for e.g. --"x"
13:22 psch jnthn: fixing that brought up that find_best_dispatchee might encounter multiple rw-params, and we probably want all listed
13:22 masak jnthn: yes -- I see there are two truths in there.
13:23 dalek rakudo/nom: ea87a8f | coke++ | docs/release_guide.pod:
13:23 dalek rakudo/nom: Move a bit of historical documentation
13:23 dalek rakudo/nom:
13:23 dalek rakudo/nom: closer to where it's relevant.
13:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ea87a8f8d6
13:23 masak jnthn: one is that .WHAT is special-cased in Rakudo, and thus "macro-ish"
13:23 psch jnthn: which in turn needs Binder.bind to also gather all, for consistency's sake
13:23 psch jnthn: is that still reasonable?
13:23 masak jnthn: another is that in a Perl 6 program, it's not reasonable to expect to define a "macro method", because methods are not "macro-ish"
13:23 RabidGravy m: class Foo { has Str $.1024wx1024h; } # also LTA
13:23 camelia rakudo-moar 65bfb6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/g37qNNiLV_␤Cannot declare an anonymous attribute␤at /tmp/g37qNNiLV_:1␤------> 3class Foo { has Str $.7⏏1024wx1024h; } # also LTA␤»
13:23 stmuk_ joined #perl6
13:23 masak by syllogism, .WHAT can't be a method call, but we knew that ;)
13:25 RabidGravy is there a way in code to determine whether a string contains a valid perl identifier to stop that happening?
13:25 jnthn psch: one moment, debugging something odd here... :)
13:26 kjs_ joined #perl6
13:27 Skarsnik Hello, hm, does Global (or something else?) contain a way to find what symbol does a particuliar role?
13:28 aborazmeh joined #perl6
13:28 aborazmeh joined #perl6
13:28 moritz m: say Int ~~ Numeric
13:28 camelia rakudo-moar 65bfb6: OUTPUT«True␤»
13:28 moritz oh, you want it the other way?
13:29 RabidGravy ah
13:29 RabidGravy m: say "x1024wx1024h" ~~ /^<.ident>$/
13:29 camelia rakudo-moar 65bfb6: OUTPUT«「x1024wx1024h」␤»
13:29 RabidGravy m: say "1024wx1024h" ~~ /^<.ident>$/
13:29 camelia rakudo-moar 65bfb6: OUTPUT«Nil␤»
13:30 Skarsnik It's more without knowing them, I want to find the classes loaded/defined that does 'something'
13:30 moritz m: .say if CORE::($_) ~~ Numeric for CORE::.keys for Skarsnik
13:30 camelia rakudo-moar 65bfb6: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wC6WrqPBpu␤Missing semicolon␤at /tmp/wC6WrqPBpu:1␤------> 3RE::($_) ~~ Numeric for CORE::.keys for 7⏏5Skarsnik␤»
13:30 moritz m: .say if CORE::($_) ~~ Numeric for CORE::.keys # for Skarsnik
13:30 camelia rakudo-moar 65bfb6: OUTPUT«SIGSEGV␤SIGHUP␤PromiseStatus␤Duration␤Broken␤FileChangeEvent␤UInt64␤Order␤RatStr␤Numeric␤SIGPIPE␤Instant␤SIGBUS␤SIGWINCH␤SIGXFSZ␤SIGILL␤π␤FileRenamed␤SIGUSR2␤Lexical with name '$init-time-num' has a different type in …»
13:30 moritz Skarsnik: ^^ something along this line
13:30 moritz Skarsnik: I'm but in general, this is a very bad idea
13:31 moritz it might be justifiable for a debugger or an IDE, for example
13:31 moritz but for "normal" code, it's an anti pattern
13:31 Skarsnik Yes, that look slow
13:32 RabidGravy Skarsnik, see also Module::Does https://github.com/tony-o/perl6-module-does/
13:32 moritz not just speed; it breaks encapsulation
13:32 RabidGravy this may well do the same thing under the hood
13:32 pippo left #perl6
13:33 * [Coke] belatedly waves at autarch
13:33 Skarsnik RabidGravy, I don't understand at all this module actually x) I have no idea how it supposed to be used
13:35 dalek doc: 3c6b9d2 | (Brock Wilcox)++ | doc/Language/syntax.pod:
13:35 dalek doc: Remove links from headers
13:35 dalek doc: review: https://github.com/perl6/doc/commit/3c6b9d2b2e
13:35 dalek doc: b7b41e1 | RabidGravy++ | doc/Language/syntax.pod:
13:35 dalek doc: Merge pull request #190 from awwaiid/syntax-links
13:35 dalek doc:
13:35 dalek doc: Remove links from headers
13:35 dalek doc: review: https://github.com/perl6/doc/commit/b7b41e194a
13:39 lucasb m: CORE::('$init-time-num')
13:39 camelia rakudo-moar ea87a8: OUTPUT«Lexical with name '$init-time-num' has a different type in this frame␤  in block <unit> at /tmp/q8vJ0vD6yq:1␤␤»
13:39 RabidGravy tadzik, you about?
13:40 lucasb I was exploring moritz's eval and run into this ^^
13:40 tadzik RabidGravy: ya
13:40 andreoss m: class Foo { has $.x is required } ; Foo.new
13:40 andreoss
13:40 camelia rakudo-moar ea87a8: OUTPUT«The attribute '$!x' is required, but you did not provide a value for it.␤  in block <unit> at /tmp/eieEvHUtzI:1␤␤»
13:41 andreoss is this message correct? why not '$.x'?
13:41 lizmat andreoss: the internal name of an attribute is always with !
13:42 lizmat the $.x in the declaration merely indicates it should create an accessor for it, thus making it public
13:42 jnthn has $.x means "declare $!x and declare an accessor method"
13:43 RabidGravy tadzik, yo! Would you be interested in a further PR for JSON::Unmarshal that introduces a "json-name" trait?  I'm looking at some JSON here with very Perl unfriendly attrribute names :)
13:43 Some-body_ joined #perl6
13:44 RabidGravy i,e,  the mixcloud API has a "pictures" structure with "1024wx1024h", "320wx320h", "640wx640h" and "768wx768h" as names
13:44 dalek roast: 6cf4972 | jnthn++ | S32-str/utf8-c8.t:
13:44 dalek roast: Add tests for new UTF-8 C-8 encoding.
13:44 dalek roast:
13:44 dalek roast: We'll use this to allow any 8-bit octet stream from the OS to be held
13:44 dalek roast: in a Str, so we can round-trip non-UTF-8 filenames, environment vars,
13:44 dalek roast: etc.
13:44 dalek roast: review: https://github.com/perl6/roast/commit/6cf49729d4
13:45 timotimo https://github.com/MoarVM/MoarVM/issues/193  -- for those who recently worked on newline stuff, please have a quick look. doesn't seem like MoarVM's issue tracker's the right place for at least half of that bug
13:45 * [Coke] wonders if there's a way to make irssi not lose all backscroll when there's too much backscroll. I want it to leave the last page worth so I can know where to start reading on the logs.
13:45 psch m: sub f($a is rw, $b is rw) { }; f 1, 2
13:45 camelia rakudo-moar ea87a8: OUTPUT«Parameter '$a' expected a writable container, but got Int value␤  in sub f at /tmp/ha0UTLmdH4:1␤  in block <unit> at /tmp/ha0UTLmdH4:1␤␤»
13:47 dalek roast: 1b7676d | lizmat++ | S16-io/lines.t:
13:47 dalek roast: Add test for multiple line endings
13:47 dalek roast: review: https://github.com/perl6/roast/commit/1b7676d24d
13:47 timotimo m: say uniname("")  # LTA error. someone want to rakudobug (and search if there's already an RT open?)
13:47 camelia rakudo-moar ea87a8: OUTPUT«Cannot unbox a type object␤  in block <unit> at /tmp/Cn3fnQXTM_:1␤␤»
13:48 psch hm, thinking about it my main concern is actually efficiency, but walking through all params again in Binder.bind after we encountered one with insufficient rwness doesn't really matter there anymore, 'cause we're on a fail path already
13:49 jnthn timotimo: Well, we won't do the "paragraph mode" magic just for setting an empty string :)
13:50 jnthn Also, it doesn't seem to be a test against latest anyway
13:50 jnthn As the nl => 'ee' bit was fixed recently
13:50 jnthn Which makes me question to rest of it too
13:51 jnthn It also wants an API change that isn't going to happen.
13:52 lizmat All tests successful.
13:52 lizmat Files=1070, Tests=50009, 245 wallclock secs (12.62 usr  4.31 sys + 1406.00 cusr 131.27 csys = 1554.20 CPU)
13:52 lizmat :-)
13:53 jnthn :-)
13:53 timotimo jnthn: right, that bug is a bit old already
13:53 jnthn ah
13:53 jnthn I'd check if any of it still holds
13:53 jnthn And if so file that in RT
13:53 jnthn The only bit that may afaict is what setting the sep as "" means
13:54 timotimo i'm willing to just say "rejected as 1) not a MoarVM thing (any more), b) too much stuff in a single ticket"
13:54 timotimo setting the sep to "" will just give you .comb-like behavior, obviously :P
13:54 kmel_ joined #perl6
13:54 jnthn Well, there was one moar bug but it got fixed
13:54 tadzik RabidGravy: sounds good :)
13:54 dalek modules.perl6.org: 0cf1494 | (Zoffix Znet)++ | web/index.tmpl:
13:54 dalek modules.perl6.org: Move JS and non-essential CSS back to the end of page
13:54 dalek modules.perl6.org:
13:54 dalek modules.perl6.org: See this discussion: https://github.com/perl6/modules.perl6.org/commit/ecf43bf612d0097185692ea4da2f59dcf9df6ed3#commitcomment-14273618
13:54 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/0cf1494cc5
13:54 tadzik RabidGravy: and reminds me of Go
13:54 timotimo thank you, Zoffix
13:54 tadzik where I used it a couple times too
13:54 kmel_ +"3";
13:55 kmel_ m: +"3#;
13:55 camelia rakudo-moar ea87a8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/U9sLv8I_zD␤Unable to parse expression in double quotes; couldn't find final '"' ␤at /tmp/U9sLv8I_zD:1␤------> 3+"3#;7⏏5<EOL>␤    expecting any of:␤        double quotes␤        prefix␤»
13:55 kmel_ m: +"3";
13:55 camelia rakudo-moar ea87a8: OUTPUT«WARNINGS:␤Useless use of "+" in expression "+\"3\"" in sink context (line 1)␤»
13:57 ilmari m: say +"3"
13:57 camelia rakudo-moar ea87a8: OUTPUT«3␤»
13:57 [Coke] RT: 1060; tests: 12; LTA: 87; WEIRD: 11; NOM: 8; GLR: 7; JVM: 40
13:57 timotimo anyway, the moarvm issues list is now like 4 or 5 issues shorter
13:57 kmel_ Thanks ilmari
13:57 [Coke] whoops: XMAS: 62
13:59 RabidGravy tadzik, cool.  As it will be the same for JSON::Marshal I'll probably make a separate module that has the actual trait in and use that in both places
14:00 lizmat jnthn: when opening a handle for writing, shouldn't nl-out default to $?NL ?
14:01 jnthn lizmat: It *does*, trouble is the $?NL of the setting
14:01 jnthn lizmat: CLIENT::<$?NL> would hopefully work :)
14:01 [Coke] m: say "Note that we have 37 days to close those 62 tickets, at { 62 / 37 } per day"
14:01 camelia rakudo-moar ea87a8: OUTPUT«Note that we have 37 days to close those 62 tickets, at 1.675676 per day␤»
14:01 jnthn lizmat: You can try setting that as the default
14:01 jnthn [Coke]: /o\
14:01 * jnthn is at least dealing with one of the hairier ones at the moment :)
14:01 [Coke] Sorry. Might have to retriage at some point.
14:01 jnthn So will manage at least one today :)
14:02 [Coke] Also, that doesn't count, I assume, tickets created after your initial triage.
14:02 [Coke] Note that I'm doing that until the scheduled december release, which we can consider actually doing on Christmas, if people will be around. that will buy us a few more days.
14:02 jnthn [Coke]: Yeah, we'll need to do a re-scan
14:03 jnthn [Coke]: Some of the tickets will just be resolved with design rulings or an explicit "that's post-6" though
14:03 jnthn lunch &
14:06 cxreg joined #perl6
14:06 dalek modules.perl6.org: 3ac0bc2 | (Zoffix Znet)++ | web/ (2 files):
14:06 dalek modules.perl6.org: Move inlined JS to JS file
14:06 dalek modules.perl6.org: review: https://github.com/perl6/modules.perl6.org/commit/3ac0bc284e
14:07 * [Coke] wonders why locally ".sort({ ... })" works, but ".sort:{ ... }" does not.
14:08 skids joined #perl6
14:11 Ulti jnthn with race() would you expect something like the folloqing to work? (2 .. 1000).race(batch => 250, degree => 4).grep({ (2 .. truncate sqrt $^n).grep($^n %% *).elems == 0 });
14:11 Ulti and return a list?
14:12 advwp joined #perl6
14:12 Ulti because it used to maybe a month ago, but now just returns an empty list, if you get rid of the .race() it does the right thing
14:12 Ulti though might be I am just going insane and it never worked
14:13 masak [Coke]: might be the lack of space between `:` and `{ ... }`
14:15 kmel_ joined #perl6
14:15 kmel_ m: say ^5;
14:15 camelia rakudo-moar ea87a8: OUTPUT«^5␤»
14:15 Actualeyes joined #perl6
14:16 kmel_ How do I make the above statement return: 0,1,2,3,4 ?
14:17 nine m: say |^5
14:17 camelia rakudo-moar ea87a8: OUTPUT«01234␤»
14:17 kmel_ Thanks nine
14:17 lizmat jnthn: why isn't $?NL just an ordinary dynamic like $*NL
14:18 lizmat with it's default value set up at startup from $*DISTRO ?
14:19 lizmat FWIW, using CLIENT::<$?NL> breaks building the restricted setting
14:22 kaare_ joined #perl6
14:22 Amnez777 joined #perl6
14:23 * [Coke] is processing this file: https://raw.githubusercontent.com/coke/perl6-roast-data/master/log/rakudo.jvm_summary.out , and finding that this seems to pick out the number of failed tests, but then doesn't actually sort: pbpaste | grep aborted | perl6 -ne '.sort({ m/'aborted' <.ws> (d+) <.ws> 'test'/ ; +~$/[0] }).say'
14:24 kmel_ m: say | 0..5;
14:24 camelia rakudo-moar ea87a8: OUTPUT«1..5␤»
14:24 [Coke] (er, just processing things after the line with Failure summary, my bad)
14:26 kmel_ m: say | (0 .. 5);
14:26 camelia rakudo-moar ea87a8: OUTPUT«012345␤»
14:27 jnthn Ulti: Sounds like a bug, though .race/.hyper are still (a) untested, and (b) exactly the prototype code I wrote in the GLR proof of concept
14:27 jnthn Ulti: Where I just made sure I was happy with the API :)
14:27 lizmat m: say ^5 .join(",")  # kmel_
14:27 camelia rakudo-moar ea87a8: OUTPUT«0,1,2,3,4␤»
14:27 jnthn Ulti: Feel free to file that example in RT, then it'll make it into the tests :)
14:28 Ulti jnthn okedoke, thanks
14:28 kmel_ lizmat how is |0..5 different than |(0..5) ?
14:29 lizmat kmel_: not, I would say ?
14:29 jnthn Precedence, no?
14:29 kmel_ m: say | 0 .. 5;
14:29 camelia rakudo-moar ea87a8: OUTPUT«1..5␤»
14:30 kmel_ m: say | (0 .. 5);
14:30 camelia rakudo-moar ea87a8: OUTPUT«012345␤»
14:30 kmel_ See
14:30 lizmat yeah, weird
14:30 pink_mist the first one is wrong even ... starts with 1 instead of 0
14:31 lizmat m: say Slip.new(0).elems
14:31 camelia rakudo-moar ea87a8: OUTPUT«1␤»
14:31 lizmat that's where the 1 comes from, I think
14:32 kmel_ jnthn: probably
14:32 lizmat perhaps we should disallow a Slip as a startpoint of a Range ?
14:32 lizmat like we disallow a Seq to be a startpoint ?
14:33 jnthn *shrug*
14:33 jnthn Not sure it's common enough to be worth the code, and if it is then why not just disallow any Iterable?
14:34 * lizmat checks the fallout of that
14:36 kmel_ Webirc on mobile is like hell :(
14:36 duncan_dmg joined #perl6
14:37 kmel_ Anyone tried to compile rakudo on Android?
14:37 Ulti lame my first RT is a huge fail, since it looks at the copy pasted REPL lines starting with > as replies
14:37 Ulti *sigh* sorry
14:43 brrt joined #perl6
14:46 raiph joined #perl6
14:47 yqt joined #perl6
14:48 ely-se joined #perl6
14:49 jantore joined #perl6
14:49 softmoth_ joined #perl6
14:51 RabidGravy m: class F { has $.foo.bar }; my $f = F.new(); say $f.foo.bar
14:51 camelia rakudo-moar ea87a8: OUTPUT«Method 'bar' not found for invocant of class 'Any'␤  in block <unit> at /tmp/pgsQdx56Qt:1␤␤»
14:52 RabidGravy SooOOOoo, the question is what does it think it is doing with "has $.foo.bar"
14:53 moritz same as (has $.foo).bar maybe?
14:56 Ulti m: say ? - ?
14:56 camelia rakudo-moar ea87a8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/pJ5a7R0ccY␤Prefix ? requires an argument, but no valid term found␤at /tmp/pJ5a7R0ccY:1␤------> 3say ? - ?7⏏5<EOL>␤    expecting any of:␤        prefix␤»
14:58 lizmat m: sub a(Slip) { say "foo" }; a(|0)   # cannot MMD on a Slip  :-(
14:58 camelia rakudo-moar ea87a8: OUTPUT«Type check failed in binding <anon>; expected Slip but got Int␤  in sub a at /tmp/uAN7SPwZ92:1␤  in block <unit> at /tmp/uAN7SPwZ92:1␤␤»
14:59 jnthn lizmat: That's an argument list, | means something else there
14:59 jnthn m: sub a(Slip) { say "foo" }; a((|0))
14:59 camelia rakudo-moar ea87a8: OUTPUT«foo␤»
14:59 jnthn m: sub a(Slip) { say "foo" }; a(slip(0))
14:59 camelia rakudo-moar ea87a8: OUTPUT«foo␤»
14:59 lizmat yeah, but the point was to catch | 0..5
14:59 lizmat as you said, it has become an argument list by that time, so we can't MMD on it
15:00 jnthn Not on an operator though?
15:00 jnthn m: multi infix:<..>(Slip $s, Numeric $n) { die 'oops' }; say |0..5
15:00 camelia rakudo-moar ea87a8: OUTPUT«oops␤  in sub infix:<..> at /tmp/fEOKKd91b_:1␤  in block <unit> at /tmp/fEOKKd91b_:1␤␤»
15:00 jnthn Seems to work out OK
15:01 jnthn Guess you're doing this in Range.new which should also be fine
15:01 jnthn But do check the other candidates there
15:01 lizmat not getting it to work in Range.new
15:01 jnthn What signature are you using?
15:02 lizmat i tried both Iterable and Slip
15:03 lizmat I guess I'm too tired or something...
15:04 jnthn Well, remember that multi sorting factors in all parameters
15:04 sprocket joined #perl6
15:04 jnthn So depending what you pick for the second arg you could get a tie
15:07 lucasb m: my Int constant x = 'abc'; say x.WHAT
15:07 camelia rakudo-moar ea87a8: OUTPUT«(Str)␤»
15:07 Ulti I'm disappointed dice aren't digits in unicode :'(
15:08 lucasb I noticed this usage here: https://github.com/rakudo/rakudo/blob/nom/src/core/PseudoStash.pm#L9
15:08 lucasb It's not putting a type constraint in the constant, right? I don't know if it should work or not
15:08 colomon_ joined #perl6
15:10 [Coke] m: my @a = 1,2,3);
15:10 camelia rakudo-moar ea87a8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5aPgZIqZ7e␤Unexpected closing bracket␤at /tmp/5aPgZIqZ7e:1␤------> 3my @a = 1,2,37⏏5);␤»
15:10 [Coke] is that a LTA error?
15:10 [Coke] (should we try for paren instead of bracket?)
15:12 sufrostico joined #perl6
15:12 [Coke] ah, my sort problem before is, because I'm abusing -n there. no worries.
15:15 dalek roast: 59686c6 | jnthn++ | S32-str/utf8-c8.t:
15:15 dalek roast: Test UTF-8 C-8 used as a file encoding also.
15:15 dalek roast:
15:15 dalek roast: Just to make sure we cover all the code paths for the encoding.
15:15 dalek roast: review: https://github.com/perl6/roast/commit/59686c6239
15:17 Ulti is there a way to query unicode meta information from within Perl 6?
15:17 Ulti so if I wanted to get all characters in the Number category?
15:18 timotimo yeah, we have "uniprop"
15:19 timotimo m: say uniprop("1"); say uniprop("a")
15:19 camelia rakudo-moar ea87a8: OUTPUT«Nd␤Ll␤»
15:19 timotimo the default is the general category thingie
15:22 kmel_ joined #perl6
15:23 kmel_ Wait! You can override operators?!
15:24 jnthn Sure. And define new ones
15:25 kmel_ *newbie in Perl 6 land*
15:25 ely-se you can do that in any respectable language that has operators
15:25 espadrine joined #perl6
15:26 virtualsue joined #perl6
15:26 kmel_ ely-se oh so it's not something specific to P6?
15:26 timotimo lizmat: please don't disallow iterables as range constructor/operator endpoints unless you have a very good reason to
15:27 timotimo lizmat: because i like @foo .. @bar to give ranges for @foo.elems .. @bar.elems
15:27 ely-se kmel_: some other languages that have it: C++, C#, Haskell, Lua, Perl 5.
15:27 dalek roast: f6a5faa | lizmat++ | S16-io/basic-open.t:
15:27 dalek roast: Add test for RT #126598
15:27 dalek roast: review: https://github.com/perl6/roast/commit/f6a5faa28f
15:27 Ulti m: constant ? = 2; say ?'
15:27 camelia rakudo-moar ea87a8: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oxwF_bxg7r␤Missing initializer on constant declaration␤at /tmp/oxwF_bxg7r:1␤------> 3constant7⏏5 ? = 2; say ?'␤»
15:27 lizmat timotimo: that idea has been shelved  :-)
15:27 Ulti cant you use emojii for constants?
15:28 timotimo thanks
15:28 jnthn Ulti: try \ before the name, or failing that term:<emoji>
15:28 jnthn .u ?
15:28 yoleaux U+003F QUESTION MARK [Po] (?)
15:28 sprocket joined #perl6
15:28 kmel_ So I should use parentheses then?
15:29 kmel_ In |(0..5)
15:29 andreoss m: constant & = *; say (& * &)(1,2)
15:29 camelia rakudo-moar ea87a8: OUTPUT«Use of uninitialized value of type Callable in numeric context  in any  at gen/moar/m-Metamodel.nqp:1674␤Use of uninitialized value of type Callable in numeric context  in any  at gen/moar/m-Metamodel.nqp:1674␤Cannot find method 'CALL-ME'␤  in block …»
15:29 muraiki joined #perl6
15:29 Ulti .u ?
15:29 yoleaux U+003F QUESTION MARK [Po] (?)
15:30 CIAvash joined #perl6
15:30 kmel_ Did anyone try to compile rakudo on Android?
15:31 kmel_ Is it doable?
15:32 vytas .u Ȕ
15:32 yoleaux U+0214 LATIN CAPITAL LETTER U WITH DOUBLE GRAVE [Lu] (Ȕ)
15:32 vytas awesome :)
15:33 ely-se joined #perl6
15:34 xpen joined #perl6
15:36 xpen joined #perl6
15:53 silug joined #perl6
15:57 dalek rakudo/nom: 87eb661 | lizmat++ | src/core/Str.pm:
15:57 dalek rakudo/nom: Make sigs on uni* family of subs stricter
15:57 dalek rakudo/nom:
15:57 dalek rakudo/nom: So, e.g. 'uniname ""' now returns Str instead of an LTA error message
15:57 dalek rakudo/nom: about not being able to unbox a type object.
15:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/87eb6619b9
15:59 [Coke] dwarring?
16:00 [Coke] also laabs - instead of using say "#" or print "#" in a test file to get diagnostic output, use "diag".
16:02 kjs_ joined #perl6
16:04 ilmari m: say so "0"
16:04 camelia rakudo-moar ea87a8: OUTPUT«True␤»
16:04 ilmari m: say so ""
16:04 camelia rakudo-moar ea87a8: OUTPUT«False␤»
16:04 dalek roast: b9fa40a | coke++ | S32-io/io-spec-win.t:
16:04 dalek roast: use diag instead of raw print/say
16:04 dalek roast: review: https://github.com/perl6/roast/commit/b9fa40a8c0
16:05 [Coke] ^^ that test file has many issues on the JVM. It also has just commented out test data which needs cleaning.
16:06 dalek roast: 85f1518 | lizmat++ | S15-unicode-information/uniname.t:
16:06 dalek roast: uniname tests wrt to type objects & empty strings
16:06 dalek roast: review: https://github.com/perl6/roast/commit/85f1518dd1
16:08 lizmat jnthn: looks like there are no tests for uniprop whatsoever: is that an oversight, or is it still in flux ?
16:08 jnthn lizmat: Oversight
16:09 brrt every time i try perl6 again i'm amazed at its ergonomics
16:09 brrt :-)
16:11 dbrock joined #perl6
16:11 dalek roast: a37b548 | lizmat++ | S15-unicode-information/unival.t:
16:11 dalek roast: unival tests wrt to type objects & empty strings
16:11 dalek roast: review: https://github.com/perl6/roast/commit/a37b54844e
16:12 yqt joined #perl6
16:16 khw joined #perl6
16:16 sergot hi #perl6 \o
16:17 lizmat sergot o/
16:17 dbrock- joined #perl6
16:17 dalek roast: dfb702a | lizmat++ | S15-unicode-information/unimatch-general.t:
16:17 dalek roast: unimatch tests wrt to type objects & empty strings
16:17 dalek roast: review: https://github.com/perl6/roast/commit/dfb702a125
16:17 sergot I have a question
16:17 lizmat this is #perl6, ask away!
16:18 sergot about Camelia :)
16:18 sergot What should I do to get permission to use this logo?
16:18 ilmari sergot: https://raw.githubusercontent.com/perl6/mu/master/misc/camelia.txt
16:18 sergot as a cover of a magazine
16:19 lizmat "permission is
16:19 lizmat granted for non-exclusive use to label anything related to Perl 6,
16:19 lizmat provided the image is labeled as a trademark when used as a main logo
16:19 lizmat on a page."
16:19 ilmari sergot: ask TimToady if that's not sufficiently clear
16:21 sergot thanks ilmari++ lizmat++ !
16:23 zengargoyle good * #perl6
16:24 lizmat zengargoyle o/
16:24 zengargoyle managed to add Algorithm::Trie::libdatrie to ecosystem after a long and hard fought battle with travis-ci
16:24 khw joined #perl6
16:26 Skarsnik hm, travis is a build system? I mean how you have Nativecall stuff compile on it? since it need an external lib x)
16:26 lizmat m: say uniname "\r\n"   # shouldn't we need to do something for synthethics ?
16:26 camelia rakudo-moar 87eb66: OUTPUT«CARRIAGE RETURN (CR)␤»
16:27 lizmat the above behaviour is because ord() returns the base character of a synthetic
16:27 lizmat jnthn  ^^^
16:27 jnthn No, it can have ord semantics
16:27 jnthn m: say uninames "\r\n"
16:27 camelia rakudo-moar 87eb66: OUTPUT«(CARRIAGE RETURN (CR))␤»
16:27 zengargoyle Skarsnik: you fetch source, compile, install, and use LD_LIBRARY_PATH
16:27 jnthn That is wrong though
16:28 lizmat ok, will look at that then
16:28 jnthn lizmat++
16:28 * jnthn is about done with the current xmas RT he was working on
16:28 Skarsnik zemmihates, ho travis is a tool you use localy?
16:29 dalek roast: 717046a | jnthn++ | S32-str/utf8-c8.t:
16:29 dalek roast: Another test to cover improved ergonomics.
16:29 dalek roast:
16:29 dalek roast: We spit out valid ASCII bytes as they are, for non-UTF-8-C8 output.
16:29 dalek roast: review: https://github.com/perl6/roast/commit/717046affe
16:32 dalek roast: ee24fab | lizmat++ | S15-unicode-information/uniprop.t:
16:32 dalek roast: Add very basic sanity uniprop tests
16:32 dalek roast: review: https://github.com/perl6/roast/commit/ee24fab7c4
16:32 zengargoyle i'm eventually going to try to bundle the library and use LibraryMake, it seems simple enough to not really need the automake/configure stuff.
16:34 Skarsnik it a wonder there is still thing that use the autotools x)
16:36 * zengargoyle is now trying to decide if Search::Dict is a good name :P
16:36 zengargoyle for WIP module #2
16:37 RabidGravy Sounds good
16:37 xfix joined #perl6
16:38 zengargoyle and possibly about Perl 6 ifying Algo::Trie.  seems it could do some Associative and Positional and Iterator things in an idiomatic way.
16:40 dalek joined #perl6
16:40 Skarsnik I was wondering is there some sort of low level call to write this sort of stuff? because it's the kind of stuff you are interested in having stuff aligned in memory or matching the size of the cpu cache
16:43 dalek nqp: 03b69e4 | jnthn++ | tools/build/MOAR_REVISION:
16:43 dalek nqp: Get MoarVM with UTF-8 C-8 support.
16:43 dalek nqp:
16:43 dalek nqp: This means we can now cope with environments, filenames, and so forth
16:43 dalek nqp: that contain things that don't decode as UTF-8.
16:43 dalek nqp: review: https://github.com/perl6/nqp/commit/03b69e4ffb
16:44 dalek rakudo/nom: 3fddcb5 | jnthn++ | tools/build/NQP_REVISION:
16:44 dalek rakudo/nom: Bump to get MoarVM with UTF-8 C-8 support.
16:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3fddcb57f6
16:45 dalek roast: 74ea399 | jnthn++ | S32-str/utf8-c8.t:
16:45 dalek roast: Tests for RT #125420.
16:45 dalek roast: review: https://github.com/perl6/roast/commit/74ea399d8e
16:47 dalek rakudo/nom: f298860 | jnthn++ | t/spectest.data:
16:47 dalek rakudo/nom: Run S32-str/utf8-c8.t (MoarVM only).
16:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f298860dc5
16:53 jdv79 there's no way to bind inside a list type construction, right?
16:54 jdv79 my $a my @b = ("bind $ here", 2 ,3); instead of post @b[0] := $a
16:54 jdv79 *"bind $a"
16:54 lizmat m: my $b = (1,2,3); $b[0] = 42
16:54 camelia rakudo-moar f29886: OUTPUT«Cannot modify an immutable Int␤  in block <unit> at /tmp/I64I9XpaEN:1␤␤»
16:54 lizmat don't use an array
16:55 lizmat m: my @a := (1,2,3); $b[0] = 42
16:55 camelia rakudo-moar f29886: OUTPUT«5===SORRY!5=== Error while compiling /tmp/yOmzYuyQXi␤Variable '$b' is not declared␤at /tmp/yOmzYuyQXi:1␤------> 3my @a := (1,2,3); 7⏏5$b[0] = 42␤»
16:55 lizmat m: my @a := (1,2,3); @a[0] = 42
16:55 camelia rakudo-moar f29886: OUTPUT«Cannot modify an immutable Int␤  in block <unit> at /tmp/JYZL_n7WI3:1␤␤»
16:55 zengargoyle about I/O, is there any advantage to doing I/O on blocksize chunks?
16:55 lizmat jdv79: or bind it ?
16:55 jdv79 ok
16:56 jdv79 so i guess not
16:56 lizmat so you only want a few of them bound ?
16:56 jnthn m: my @b := (my $a, 2, 3); $a = 42; say @b;
16:56 camelia rakudo-moar f29886: OUTPUT«(42 2 3)␤»
16:56 jdv79 yes =
16:56 zengargoyle and is blocksize available through IO::Handle anywhere?  i couldn't find it at first pass.
16:56 psch m: my $a := ($, 1, 2); say $a[0]++; say $a[0] # i might misunderstand the question..?
16:56 camelia rakudo-moar f29886: OUTPUT«0␤1␤»
16:56 lizmat zengargoyle: not afaik
16:57 jnthn Not unless blocksize is one of the things stat makes available
16:58 * jnthn ticks RT #125420 off the xmas list
16:59 lizmat cycling&
17:00 hoelzro o/ #perl6
17:00 * zengargoyle couldn't even find a stat method
17:02 jnthn .ask TimToady I'm not sure we've time to get the PRE/POST submethods done and semantics issues ironed out, or at least we've more important things to be doing before xmas. OK to do this feature in a 6.future? Should I note a "potential difficulty" if you write a PRE/POST submethod?
17:02 yoleaux jnthn: I'll pass your message to TimToady.
17:02 hoelzro stat *does* expose block size, but afaik, the I/O uses buffered I/O, so it *should* be done in blocksize already
17:02 hoelzro then again, I don't know for sure what libuv does (and that only applies to Moar)
17:03 jnthn We do pull thinks in in chunks, but it's a constant chunk size at the moment
17:03 zengargoyle the Search::Dict uses a binary search using blksize to narrow down the block that should have the desired line, then goes to a line by line to find it.
17:04 zengargoyle i was wondering if that's better than just doing the binary algo directly.
17:06 hoelzro I would benchmark each and see
17:07 zengargoyle i'm guessing there's a trade-off there somewhere...  hard to benchmark without knowing the buffer/block size that's used.
17:07 zengargoyle vs just guessing 8192 or somesuch
17:07 RabidGravy zengargoyle, the blocksize isn't available from IO::* but you can get it from NQP with "nqp::p6box_i(nqp::stat(nqp::unbox_s($path), nqp::const::STAT_PLATFORM_BLOCKSIZE))"
17:07 psch hrm, apparently i need P6EX to build but not throw X::Parameter::RW to build the X::Comp::Group in find_best_dispatchee...
17:08 jnthn psch: Uh...X::Comp::Group is for compile time exceptions
17:08 jnthn psch: The precedent so far on binding errors is we just throw on the first thing that goes wrong
17:08 RabidGravy or something like that
17:08 zengargoyle RabidGravy: thanks i'll add that to my notes and give it a try.
17:09 psch jnthn: okay, so "is this still reasonable" (from two hours ago) was to be answered with "no, just throw on the first mismatch" :)
17:09 psch ...that's not supposed to sound snarky or anything, sorry
17:10 psch but i guess that also helps wrt the mentioned efficiency concern, because we can bail for a given candidate in find_best_dispatchee as soon as there is an rwness mismatch
17:10 jnthn psch: Sorry, was tied up with the encoding fixes...
17:10 psch jnthn: no worries, as i said i didn't actually mean to sound that entitled
17:11 jnthn :)
17:11 jnthn psch: One thing that may trip things up here: I don't think the multi dispatch cache stuff is too aware of container vs. non-continer
17:11 jnthn *container
17:11 psch i'm just thinking of e.g. "sub f($a is rw, $b is rw) {...}" from a module and a user calling f 42, 5, getting the error "first param needs a cont", putting a cont there, and getting the same error for the second param
17:12 psch which is somewhat LTA
17:12 jnthn Somewhat, but I don't think "is rw" params are all that common
17:12 psch i'll make a note to look at the cache too, good catch
17:12 zengargoyle so i'm getting 4k blocksize, does libuv use the same as a buffersize?  -- most likely overthinking it. :)
17:13 psch right, don't fix what doesn't appear broken often enough (or something like that...)
17:13 jnthn psch: If you get results like, the first time you try a dispatch it does the right thing, and the second time you try it and it should fail it actually works, that's probably the cache gone wrong
17:13 * zengargoyle ... to the Bench-mobile
17:17 hoelzro zengargoyle: I don't know offhand, but stracing a simple example would probably reveal the answer
17:19 diana_olhovik joined #perl6
17:20 lucasb joined #perl6
17:23 lucasb m: { constant x = 42 }; say x
17:23 camelia rakudo-moar f29886: OUTPUT«42␤»
17:23 lucasb ^^ I was surprised that the constant worked outside the scope
17:24 moritz constants, like classes, are our-scoped by default
17:24 jnthn m: { my constant x = 42 }; say x
17:24 camelia rakudo-moar f29886: OUTPUT«5===SORRY!5=== Error while compiling /tmp/WJsPp5p_1L␤Undeclared routine:␤    x used at line 1␤␤»
17:25 lucasb but it only works if it is a term, not a sigiled variable
17:25 lucasb { constant $x = 42 }; say $x  # <-- this doesn't work like a term constant
17:27 jnthn m: { our $x = 42 }; say $x
17:27 camelia rakudo-moar f29886: OUTPUT«5===SORRY!5=== Error while compiling /tmp/auSC9BoG8X␤Variable '$x' is not declared␤at /tmp/auSC9BoG8X:1␤------> 3{ our $x = 42 }; say 7⏏5$x␤»
17:27 jnthn Same with our variables
17:27 [Coke] m: say 2**64.comb(3).join(",");
17:27 camelia rakudo-moar f29886: OUTPUT«Cannot call comb(Int: Int); none of these signatures match:␤    (Cool $: *%_)␤    (Cool $: Regex $matcher, $limit = { ... }, *%_)␤    (Cool $: Str $matcher, $limit = { ... }, *%_)␤  in block <unit> at /tmp/kcWNynYNCQ:1␤␤»
17:27 dalek rakudo/nom: dc512ba | jnthn++ | src/ (2 files):
17:27 dalek rakudo/nom: Forbid packages on dynamic variables.
17:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dc512bad18
17:28 [Coke] I thought lizmat just added that a few days ago.
17:28 dalek roast: 747632a | jnthn++ | S02-names-vars/contextual.t:
17:28 dalek roast: Tests to cover RT #82790.
17:28 dalek roast: review: https://github.com/perl6/roast/commit/747632a2c9
17:29 kjs_ joined #perl6
17:34 ugexe rt 126529 is back
17:34 ugexe j: my $x = Blob.new(1); $x ~= $x
17:34 camelia rakudo-jvm f29886: OUTPUT«java.lang.RuntimeException: This type does not support positional operations␤  in block <unit> at /tmp/D9i1ywswJG:1␤␤»
17:35 andreoss joined #perl6
17:35 jnthn m: my $x = Blob.new(1); $x ~= $x # curious if it's portable
17:35 camelia rakudo-moar dc512b: ( no output )
17:36 Actualeyes joined #perl6
17:36 ugexe i sent a pr to fix it 3 days ago, but its since re-emerged
17:36 brrt joined #perl6
17:37 jnthn .ask TimToady Before I go looking at fixing it, you do expect adverbs (like :c) placed after a :heredoc to actually work out, rather than get rejected, yes? https://rt.perl.org/Ticket/Display.html?id=120788 is the ticket in question.
17:37 yoleaux jnthn: I'll pass your message to TimToady.
17:37 AlexDaniel joined #perl6
17:37 ugexe its used in IO::Socket as well
17:41 * jnthn afk for a bit
17:42 lucasb m: my Str enum <a b c>
17:42 camelia rakudo-moar dc512b: OUTPUT«===SORRY!===␤Incompatible MROs in P6opaque rebless␤»
17:44 zengargoyle m: my %h = do for 1,4096,8192 -> $b { $b => $b }; %h.say;
17:44 camelia rakudo-moar dc512b: OUTPUT«1 => 1, 4096 => 4096, 8192 => 8192␤»
17:44 arnsholt Does that even make sense as an expression?
17:44 brrt joined #perl6
17:45 psch m: my enum Str <a b c>; say "foo" ~~ Str # /o\
17:45 camelia rakudo-moar dc512b: OUTPUT«===SORRY!===␤This type cannot box a native string␤»
17:45 zengargoyle hrm... i'm getting: Odd number of elements found where hash initializer expected
17:46 [Coke] lucasb, psch: what are you expecting to happen here?
17:46 * TimToady starts to recover from Hackers
17:46 yoleaux 17:02Z <jnthn> TimToady: I'm not sure we've time to get the PRE/POST submethods done and semantics issues ironed out, or at least we've more important things to be doing before xmas. OK to do this feature in a 6.future? Should I note a "potential difficulty" if you write a PRE/POST submethod?
17:46 yoleaux 17:37Z <jnthn> TimToady: Before I go looking at fixing it, you do expect adverbs (like :c) placed after a :heredoc to actually work out, rather than get rejected, yes? https://rt.perl.org/Ticket/Display.html?id=120788 is the ticket in question.
17:47 kjs_ joined #perl6
17:47 psch [Coke]: if anything i'm expecting a better error.  the shadowing of the type Str with the enum is expected
17:48 lucasb [Coke]: in regard to 'my Str enum <a b c>', I know the enum values are integers, I just thought the error message looked LTA, since it looks an internal error :)
17:52 ^elyse^ joined #perl6
17:53 TimToady .tell jnthn if we warn, we could hide the warning with a 'use DBC' to enable the experimental feature, I suppose
17:53 yoleaux TimToady: I'll pass your message to jnthn.
17:55 llfourn joined #perl6
17:55 _mg_ joined #perl6
17:55 sjohnson joined #perl6
17:56 TimToady .tell jnthn quote languages compose by mixin, so I'd expect :c to work after :heredoc since nothing in :heredoc clobbers the <escape> of the language that is used to parse the body of the heredoc
17:56 yoleaux TimToady: I'll pass your message to jnthn.
18:03 hoelzro is the number of CPUs available to Perl 6 available via a special variable or anything like that?
18:03 hoelzro or do users just have to figure that out on a per-OS basis?
18:04 colomon joined #perl6
18:05 TimToady what if you have a non-uniform CPU architecture, how do you report that?
18:06 dalek roast: 13badac | (Lloyd Fournier)++ | S12-class/attributes-required.t:
18:06 dalek roast: is required used as default checks
18:06 dalek roast:
18:06 dalek roast: RT #126436
18:06 dalek roast: review: https://github.com/perl6/roast/commit/13badac53f
18:06 dalek roast: 08725fd | (Tim Smith)++ | S12-class/attributes-required.t:
18:06 dalek roast: Merge pull request #78 from LLFourn/is_required_fix
18:06 dalek roast:
18:06 dalek roast: is required used as default checks
18:06 dalek roast: review: https://github.com/perl6/roast/commit/08725fdca1
18:07 hoelzro TimToady: good question
18:08 hoelzro I'm just wondering if I should read from /proc/cpuinfo for my script, or if that information is already available
18:08 TimToady the other thing is that there may be fewer effective CPUs than you'd think, depending on the work mix
18:09 RabidGravy hoelzro, or you know use Linux::Cpuinfo
18:09 TimToady I assume my laptop only has 3 CPUs because firefox
18:11 kjs_ joined #perl6
18:12 hoelzro RabidGravy: thanks, I didn't know that existed!
18:12 hoelzro TimToady: another good point
18:15 RabidGravy hoelzro, there may be a bug on multi-core arm chips though
18:16 hoelzro that's ok; I really just want my script to spawn N children (where N = # CPUs)
18:16 hoelzro and I'm only running it on x86 Linux atm
18:16 jdv79 RabidGravy: dogfooding for everything would be nice in an ideal world
18:16 cognominal joined #perl6
18:17 TimToady and for IO-heavy workloads, you can usually use twice as many processes as CPUs
18:17 RabidGravy I have making a statgrab binding at some point on the todo
18:18 timotimo hoelzro: ideally, your program would measure when adding another worker wouldn't improve performance
18:18 timotimo hoelzro: and then it could try to react to slowdowns by throwing out a worker until the situation improves
18:18 timotimo (and then you'll get a nicely oscillating system)
18:19 TimToady one could add damping
18:19 hoelzro hmm
18:20 hoelzro good advice
18:20 hoelzro I'll measure with various worker counts vs CPU counts, see how that affects things
18:20 timotimo ideally your program would do that on every run to always get the best results
18:21 hoelzro it's more of a POC atm, but we'll see about improving it if it actually gets used =)
18:21 duncan_dmg left #perl6
18:22 liztormato joined #perl6
18:24 zengargoyle and the blocksize benchmark winner is... 1
18:24 liztorma_ joined #perl6
18:24 liztorma_ ugexe: will look at jvm breakage in an hour so when I'm home again
18:24 TimToady .tell jnthn as an optimization-related language decision, we might decide to simply ignore PRE and POST blocks without a 'use DBC' to turn on that particular set of assertions
18:24 yoleaux TimToady: I'll pass your message to jnthn.
18:25 liztorma_ Since I probably caused that regression
18:26 timotimo zengargoyle: what, 1 byte at a time?
18:26 abaugher joined #perl6
18:26 telex joined #perl6
18:27 zengargoyle yep, 103% faster than 4k, 384% faster than 8k, 569% faster than 16k
18:27 FROGGS joined #perl6
18:27 timotimo wow
18:28 [Coke] jvm broke again?
18:28 timotimo zengargoyle: have you tried 3k?
18:29 [Coke] (it was working earlier today)
18:29 zengargoyle no, but i will...
18:31 spider-mario joined #perl6
18:32 zengargoyle could also be my test file just isn't big enough...
18:34 zengargoyle eh 1 is still beating 2k, 3k
18:35 zengargoyle 1k is a wee bit faster: 2%
18:35 psch [Coke]: fwiw, i've decided (for the time being) to help with the xmas list instead of trying to keep r-j alive.  1.6 tickets a day looks like it could use whatever effort is available to me
18:40 ugexe [Coke]: infix:<~>(Blob:D $a, Blob:D $b) (rt 126529), there just isnt a test for it
18:43 zengargoyle looks like 128 is the sweet spot
18:44 psch i'm wondering about desired commit granularity
18:44 * zengargoyle notes that Bench needs to sort by Rate before showing the table...
18:44 psch i have "is rw for multis" working, but it has test fallout (probably due to caching, as jnthn++ alluded to earlier)
18:45 ilmari m: (Blob.new(0x61), Blob.new(0x63)).join(Blob.new(0x20))
18:45 camelia rakudo-moar dc512b: OUTPUT«Cannot use a Buf as a string, but you called the Str method on it␤  in block <unit> at /tmp/0jsw9mNxHv:1␤␤»
18:45 FROGGS o/
18:45 ilmari m: say Blob.new(0x61) ~ Blob.new(0x63) ~ Blob.new(0x20)
18:45 camelia rakudo-moar dc512b: OUTPUT«Blob:0x<61 63 20>␤»
18:45 psch is what i have already a commit?  it fixes RT #74414, but a clean spectest would depend on a (as of yet unwritten) patch that solves the caching problem
18:45 * zengargoyle or that's just me...
18:46 psch it just came to mind because i know that previously i did commit at least a few not-really-isolated-enough chunks...
18:48 psch o/ FROGGS
18:49 dha joined #perl6
18:51 zengargoyle do you think « my &lookup = search-dict($dict, :$block-size); $ret = lookup($word) » is a decent interface?
18:52 Peter_R joined #perl6
18:53 zengargoyle where $ret Bool to found, Str to match (or after), Int to tell
18:54 vendethiel joined #perl6
18:56 pippo joined #perl6
19:01 TEttinger joined #perl6
19:07 ugexe lizmat: i rebuilt jvm (same commit, also the same commit camelia is on) and now -e `say Blob.new(1) ~ Blob.new(2)` is working. but camelia still fails, and inside a bigger application i get `Expected a native int argument for '$a'`
19:07 Hotkeys is there simple graphics libraries for p6?
19:08 Hotkeys like making jpgs and whatnot
19:10 yqt joined #perl6
19:11 ZoffixW joined #perl6
19:11 RabidGravy zengargoyle, yes
19:12 ZoffixW Hor|zon, there's a couple on http://modules.perl6.org/ search for "image"
19:12 ZoffixW I meant Hotkeys ^
19:12 Hotkeys not all us H names are the same person ZoffixW
19:12 Hotkeys yeesh
19:12 sivoais joined #perl6
19:13 ZoffixW :)
19:13 cognominal hi, is there a Perl 6 web server supporting TLS or SSL?
19:15 ZoffixW heh, JSON::RPC's logotype is a pair of praying hands next to a set of brackets
19:16 psch ugexe: that's b1a465c2c, the jvm Binder doesn't handle "is rw" quite right
19:16 ZoffixW cognominal, toss one of the servers on http://modules.perl6.org/ behind reverse proxy? :)
19:16 ZoffixW unless they got native support
19:16 Hotkeys but thanks ZoffixW, I'll forgive the letter-racism because you helped
19:16 psch well, i think at least
19:16 ZoffixW ;)
19:19 psch eh, maybe my last comment should be disregarded.  i might be too absorbed in what i'm working on here :P
19:19 cognominal ZoffixW, yes I could do that.
19:22 RabidGravy cognominal, or pick on of them and fix it work with IO::Socket::SSL
19:23 ZoffixW That would be sweet.
19:23 sivoais joined #perl6
19:24 sivoais joined #perl6
19:27 * lizmat is back
19:27 [Coke] psch: thanks for the headsup
19:27 lizmat m: 42
19:27 camelia rakudo-moar dc512b: OUTPUT«WARNINGS:␤Useless use of constant integer 42 in sink context (line 1)␤»
19:30 dha There was some discussion of setting up a wiki along the lines of perl6-most-wanted for the documentation status of modules. Is this something that we've ever gotten any traction on?
19:32 ZoffixW Nothing I heard outside of https://github.com/perl6/modules.perl6.org/issues/16
19:32 ZoffixW Buuuttt...
19:33 * ZoffixW has an idea; comments on Issue
19:33 pink_mist doesn't github provide wiki pages?
19:33 dha Oh good. I like ideas. :-)
19:33 dha pink_mist - I believe that is what was under discussion.
19:34 raoulvdberge joined #perl6
19:35 dha I was thinking of looking at some modules to see if they have documentation (I need purpose in life), but am gunshy about actually setting up the structure for making that information available.
19:36 dha ZoffixW - good idea.
19:36 ZoffixW And if anyone writes up Pod::Coverage, those flags could be automatically set :)
19:36 RabidGravy yes
19:37 RabidGravy it would by trivial to determine whether there is pod present at all
19:37 Hotkeys hotdang this wifi is slow "Receiving objects:  50% (22136/44271), 17.51 MiB | 501.00 KiB/s"
19:38 ZoffixW That's slow? 0.o Are you in South Korea? :)
19:38 dha RabidGravy -  well volunteered!
19:38 Hotkeys Canada lol
19:38 Hotkeys University connection
19:38 ZoffixW heh
19:38 Hotkeys usually reasonably fast
19:38 Hotkeys inb4 500kib/s is reasonably fast
19:38 TimToady joined #perl6
19:39 Hotkeys when I lived in the dorms the ethernet connection was like gigabit speeds
19:39 Hotkeys it was wonderful
19:39 ZoffixW RabidGravy, it is and we already do that (the "has readme" badge). But most of them are nothing more than "Port of XYZ" without any description of the API.
19:40 Hotkeys my home connection is pretty quick too, like 100mbit
19:40 Hotkeys so yeah 500KiB/s seems slow :p
19:40 Khisanth joined #perl6
19:40 dalek rakudo/nom: 8cba886 | peschwa++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
19:40 dalek rakudo/nom: Inspect rwness of Parameters for MMD.
19:40 dalek rakudo/nom:
19:40 dalek rakudo/nom: This fixes RT #74414.  It also presently doesn't do any caching anymore if we
19:40 dalek rakudo/nom: encounter a Parameter that "is rw".  This potentially carries a performance
19:40 dalek rakudo/nom: regression with it, but multicacheadd and multicachefind call things from a
19:40 dalek rakudo/nom: realm beyond my comprehension.
19:40 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8cba886329
19:40 psch that'd be RT #74414, minus the caching regression
19:40 ZoffixW So we need a more powerful tool. Something that'll actually try to figure out if stuff's documented, akin to P5's Pod::Coverage https://metacpan.org/pod/Pod::Coverage
19:40 psch but that's mvm code, and my C is everything but useable
19:41 ZoffixW Hotkeys, 100Mbit? what provider are you using?
19:41 RabidGravy ZoffixW, please see my comment from a month ago on that self same issue ;-p
19:41 Hotkeys rogers
19:41 ZoffixW RabidGravy, are you "dwarring"?
19:41 Hotkeys well a bit less
19:41 * ZoffixW hates Rogers
19:41 Hotkeys speedtest usually is in the 90 range
19:42 ZoffixW I use Acanac. They buy Rogers's unused badwidth and sell it to me for cheap :)
19:42 ZoffixW I think I have 25-30Mbps
19:42 dha How much adaptation to Perl 5's Pod::Coverage would be needed to make it work for this purpose?
19:42 Hotkeys torrent client and steam etc. is usually 7-8 MiB/s
19:42 RabidGravy ZoffixW, no
19:42 DrForr I usually top out around 740Mb/sec, I haven't found a torrent that maxes it :)
19:42 Hotkeys We used to have around 20
19:42 ZoffixW RabidGravy, jonathanstowe?
19:43 RabidGravy :)
19:43 Hotkeys and then we switch to rogers and idk what my parents did but
19:43 Hotkeys now we have stupid quick internet
19:43 Hotkeys and I am very okay with that
19:43 Hotkeys (We were originally shaw but then rogers bought them)
19:43 Hotkeys at least in my area
19:44 psch .tell jnthn i suspect with rakudo 8cba886 we'd just need multicachefind to react properly to rwness of cached captures, but that's a guess and i'm bad at C... :)
19:44 yoleaux psch: I'll pass your message to jnthn.
19:44 jdv79 ~30ms to deep clone a shallow obj graph with twiddles.  at least it works.
19:44 psch .tell jnthn s/captures/candidates/...
19:44 yoleaux psch: I'll pass your message to jnthn.
19:44 Hotkeys aww the repl is still borked on windows
19:44 Hotkeys I still haven't gotten around to pokingaround in it
19:44 dha I note that Pod::Coverage's docs say "It expects to find either a "=head(n>1)" or an "=item" block documenting a subroutine". Could we just use a P5 solution for this provisionally until we get something better?
19:44 ZoffixW dha, quite a lot, since it's looking for Perl 5 stuff. And another issue is our docs could be in .txt .md, p5 pod or p6 pod. And we'd need some magic to figure that out
19:45 dha Hm.
19:45 Hotkeys maybe when I get home from uni I'll poke around try and figure out what's wrong/if I can fix it
19:46 dha It strikes me (and I may well be wrong) that, if we could come up with some criteria, whipping up a script to look for those specifics should not be difficult. Not a complete solution, but maybe a start?
19:46 ZoffixW dha, but hacking up something trivial and starting to use and (possibly incorrectly) marking modules as lacking docs is a good encouragement stick for those authors to contribute :P
19:46 dha Yes, there is that, too. :-)
19:47 dha And, even if we wanted to be fair, we could actually have humans look at things that get flagged. :-)
19:47 ZoffixW Yeah
19:48 dha (which seems slightly less effort-intensive than looking at everything with humans)
19:48 raoulvdberge I really feel like making a Perl clone.
19:48 Hotkeys call it Earl
19:48 Hotkeys Erl
19:48 raoulvdberge lol
19:48 Hotkeys or Squerl
19:49 ZoffixW raoulvdberge, why?
19:49 DrForr You can call it Al.
19:49 ZoffixW raoulvdberge, and... which Perl?
19:49 Hotkeys Perl 7
19:49 raoulvdberge I love making compilers and parsers, and Perl is such a beautiful language
19:49 raoulvdberge Obviously Perl 6 :-)
19:49 pippo_ joined #perl6
19:50 Hotkeys just improve the current perl 6 :p
19:50 DrForr raoulvdberge: You obviously haven't read toke.c :)
19:50 ZoffixW raoulvdberge, I'm pretty sure a bunch of people here are currently hacking on a compiler :) Why not give a helping hand there? :P
19:50 Hotkeys raoulvdberge: you should fix the repl on windows so I can be lazy and not poke around
19:50 Hotkeys <3
19:50 raoulvdberge Hey, I don't know anything about the Perl compiler / VM itself!
19:51 Hotkeys Not yet
19:51 raoulvdberge :-)
19:51 Hotkeys It's okay I don't either it's all magic
19:52 dalek roast: c22042a | lizmat++ | S02-names-vars/contextual.t:
19:52 dalek roast: Add test for #82790
19:52 dalek roast: review: https://github.com/perl6/roast/commit/c22042a43e
19:52 dalek roast: 88b8aa7 | lizmat++ | S02-types/WHICH.t:
19:52 dalek roast: Add test for new X::Dynamic::Package class
19:52 dalek roast: review: https://github.com/perl6/roast/commit/88b8aa760a
19:52 dalek roast: 5674fd4 | lizmat++ | S (2 files):
19:52 dalek roast: Merge branch 'master' of https://github.com/perl6/roast
19:52 dalek roast:
19:52 dalek roast: Conflicts:
19:52 dalek roast: S02-names-vars/contextual.t
19:52 dalek roast: review: https://github.com/perl6/roast/commit/5674fd468d
19:54 psch ah, what a nice occurence
19:54 psch i was about to add tests for dispatch between "is rw" and ro candidates
19:54 psch but they exist \o/
19:54 Hotkeys woo \o/
19:55 psch the file's not being run in spectest though
19:55 psch and it's annotated with a ticket that cares about something else, so maybe i do have to look a bit closer...
19:56 psch RT #66588, for reference
19:56 pippo joined #perl6
19:57 psch the test file is t/S06-multi/by-trait.t
19:57 sufrostico joined #perl6
19:58 lizmat I have the feeling that TimToady does not have any strong feelings about IO::Handle.ins
19:59 llfourn m: my \start = now; for ^1000 { require Test }; say now - start
19:59 TimToady could be a mixin
19:59 camelia rakudo-moar 8cba88: OUTPUT«7.4682038␤»
19:59 llfourn m: my \start = now; for ^1000 { if $_ == 0 { require Test } }; say now - start
19:59 camelia rakudo-moar 8cba88: OUTPUT«0.0563663␤»
19:59 lizmat TimToady: not seeing quite how that could be
19:59 dalek roast: eaf38ff | peschwa++ | S06-multi/by-trait.t:
19:59 dalek roast: Fudge vm-specific, expand commentary a bit.
19:59 dalek roast: review: https://github.com/perl6/roast/commit/eaf38fff1d
20:00 llfourn (shouldn't only the first require take time)
20:00 dalek rakudo/nom: aaf9fcd | peschwa++ | t/spectest.data:
20:00 dalek rakudo/nom: Run t/spec/S06-multi/by-trait.t
20:00 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/aaf9fcd6d7
20:00 lizmat sure, mixing in an "ins" method would be trivial, but keeping that updated with # lines would basically mean another .get/.lines implementation
20:00 lizmat TimToady: is that what you mean ?
20:00 hankache joined #perl6
20:01 TimToady yup
20:01 lizmat jnthn: an idea I had during cycling: could we make .ins a VMIO attribute with an nqp::op to fetch it ?
20:01 lizmat would just be an int++ at C-level in readlinefh / readlinechompfh
20:02 pippo joined #perl6
20:03 jnthn lizmat: It's really not worth it; I'd hope within the next year our JIT is good enough to not be notably different performance wise on ++'ing a native int attr vs doing it in C
20:03 yoleaux 17:53Z <TimToady> jnthn: if we warn, we could hide the warning with a 'use DBC' to enable the experimental feature, I suppose
20:03 yoleaux 17:56Z <TimToady> jnthn: quote languages compose by mixin, so I'd expect :c to work after :heredoc since nothing in :heredoc clobbers the <escape> of the language that is used to parse the body of the heredoc
20:03 yoleaux 18:24Z <TimToady> jnthn: as an optimization-related language decision, we might decide to simply ignore PRE and POST blocks without a 'use DBC' to turn on that particular set of assertions
20:03 yoleaux 19:44Z <psch> jnthn: i suspect with rakudo 8cba886 we'd just need multicachefind to react properly to rwness of cached captures, but that's a guess and i'm bad at C... :)
20:03 yoleaux 19:44Z <psch> jnthn: s/captures/candidates/...
20:03 jnthn lizmat: The question is more if we want to commit to always having to track that counter somehow
20:04 lizmat TimToady alluded to it being available as a mixn
20:05 jnthn Then the question is "mixin in module space or not" :)
20:05 lizmat I interpreted that as implied  :-)
20:05 jnthn Ah :)
20:05 jnthn I think .lines.kv covers the common case quite well
20:06 lizmat that's my line of thought anyway
20:06 jnthn haha..."line" of thought :D
20:06 lizmat :)
20:06 timotimo cute
20:06 jnthn I'd fine with saying if you want .ins functionality then module
20:06 lizmat ok
20:07 lizmat about the $?NL being frozen in the setting
20:07 lizmat the more I think about it, the more I think we need $?NL being %*PRAGMAS driven
20:07 jnthn TimToady: Will fix the heredoc thing tomorrowish. :)
20:07 jnthn I don't think that'd change anything
20:07 lizmat and not a P6 constant constant  :-)
20:08 jnthn If we want it dynamic we can export $*NL instead.
20:08 pippo joined #perl6
20:08 geraud joined #perl6
20:08 lizmat yeah, but $*NL lookups for each \n would be very expensive, no ?
20:08 jnthn Oh, udh
20:08 jnthn Yeah, that's why it wants to be compile time
20:09 TimToady well, it wants to be lexical because it's language mutation
20:09 Hotkeys jnthn: the windows moar repl has been broken since  75b2451, any idea what might've borked it?
20:09 lizmat whereas a $*PRAGMAS approach would just be a single nqp::atkey ?
20:10 Hotkeys I'm assuming something to do with the /r/n stuff but I haven't gotten around to poking around
20:10 jnthn But wait, isn't the issue really what CLIENT::<$?NL> doesn' twork?
20:10 jnthn lizmat: I don't think resolving $?NL is much of a performance concern.
20:10 lizmat but $*NL would, no ?
20:10 jnthn lizmat: It's a drop in the ocean
20:10 jnthn Right, I don't think $*NL is right
20:10 jnthn I think it's fine as it is, plus we figure out why CLIENT:: is busted in CORE.setting
20:11 jnthn And then making open default to CLINET::<$?NL>
20:11 lizmat ah, then I misunderstood you
20:11 jnthn lizmat: I pondered $*NL for a moment, then realized why it'd not work :)
20:12 jnthn Well, or why it's weird :)
20:12 jnthn I guesss we could have the compiler lexically resolve that but...
20:12 lizmat well, that's why I like the %*PRAGMAS approach
20:13 jnthn But %*PRAGMAS is a hack.
20:13 pippo joined #perl6
20:13 jnthn It's there for the things we can't express without hardcoding them into the compiler.
20:13 lizmat I still don't see why that is
20:13 lizmat a hack, I mean
20:14 lizmat I think it's very elegant, really
20:14 jnthn Everything we implement using it is something we say "no, you can't do this from a module yet"
20:14 zengargoyle m: my class R { has Str $.a handles <Str>; has $.i handles <Numeric>; }; my R $r.=new: :i(1); say $r.Str ~~ Str; say +$r;
20:14 camelia rakudo-moar aaf9fc: OUTPUT«Use of uninitialized value of type Str in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at /tmp/RkJxWfhbau:1␤True␤1␤»
20:14 jnthn Which kinda goes against language extensibility, slangs, and the like.
20:15 lizmat ok, if you look at it in that way...  :-)
20:15 zengargoyle why does $r.Str ~~ Str throw warning?
20:16 jnthn I'm fine with %*PRAGMAS for the moment, but I'll be a bit sad if we get macros and slangs done and still need it to do all it currently does. :)
20:16 lizmat jnthn: while nqp::getlexrel($ctx, '$?PACKAGE') === $pkg {   has a left side of Any
20:16 psch zengargoyle: R.a is Any
20:16 lizmat ^^ that breaks CLIENT::
20:16 zengargoyle m: my class R { has Str $.a handles <Str> = Str; has $.i handles <Numeric>; }; my R $r.=new: :i(1); say $r.Str ~~ Str; say +$r;
20:16 camelia rakudo-moar aaf9fc: OUTPUT«Use of uninitialized value of type Str in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at /tmp/r_Jh1_zCKh:1␤True␤1␤»
20:16 zengargoyle ok, so you can't have typed undefined?
20:17 psch zengargoyle: you can, but $smth ~~ Str check if that something can be a Str
20:17 psch m: say Any.Str
20:17 camelia rakudo-moar aaf9fc: OUTPUT«Use of uninitialized value of type Any in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at /tmp/ii_NH99weR:1␤␤»
20:17 psch zengargoyle: and Any.Str always warns
20:17 psch (so does Str.Str, for that matter
20:17 psch )
20:17 zengargoyle ok, think i got it.
20:18 zengargoyle and ~$a is $a.gist right?
20:18 TimToady no, that's .Str
20:18 psch no, prefix:<~> calls .Stringy
20:19 psch well, except for str and Str vOv
20:19 psch and int and Int
20:19 psch no, int and num...
20:19 * psch seems done for today... o.o
20:21 jnthn lizmat: Wait, $ctx is Any, or $?PACKAGE is?
20:22 lizmat Cannot call infix:<===>(Any, IO::Handle); none of these signatures match:
20:23 lizmat I would the result of the nqp::getlexrel
20:24 jnthn hm, k
20:24 TimToady sorry, was on phone; I was thinking we could have a mixin that would add a counter to anything you could do a .get on
20:24 jnthn Will have to look at it further tomorrow
20:24 hankache the ? prefix will return null if the number is 0 and the variable is undefined any other cases?
20:24 lizmat jnthn: ok
20:25 hankache return False*
20:25 lizmat TimToady: wouldn't that actually be a .wrap ?
20:25 zengargoyle m: my class R { has Str $.a handles <Str>; has $.i handles <Numeric>; }; my R $r.=new: :i(1); say $r.a.defined; say $r.Str.defined;
20:25 camelia rakudo-moar aaf9fc: OUTPUT«False␤Use of uninitialized value of type Str in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at /tmp/_6rflFwvKH:1␤True␤»
20:25 TimToady lizmat: no, it'd just be a child wrapping its parent method with a nextsame or so
20:26 zengargoyle m: my class R { has Str $.a handles <Str>; has $.i handles <Numeric>; }; my R $r.=new: :i(1); say $r.a.defined; say $r.Str.defined; say (~$r).defined;
20:26 camelia rakudo-moar aaf9fc: OUTPUT«False␤Use of uninitialized value of type Str in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at /tmp/VcLSoFBhNX:1␤True␤Use of uninitialized value of type Str in string context␤Any…»
20:26 TimToady lizmat: and a .wrap is insufficient anyway, since you have to store the line count somewhere, and provide an accessor
20:26 hoelzro is panda list --installed broken? it just shows me panda's help
20:26 lizmat TimToady: true
20:26 TimToady for which "ins" is probably too specific a name
20:27 zengargoyle panda --installed list
20:27 llfourn hoelzro: I think so
20:27 TimToady maybe .got :)
20:27 * llfourn made the same mistake nvm
20:27 zengargoyle evil MAIN needs named before positional
20:27 lizmat m: $*OUT.nl-out = " World\n"; say "Hello"  # love the new nl-out
20:27 camelia rakudo-moar aaf9fc: OUTPUT«Hello World␤»
20:28 hoelzro hmm
20:29 dha what's nl-out?
20:29 [Sno] lizmat: as promised, PR for building on homepilot send (did it a bit more generic ^^)
20:29 zengargoyle hoelzro: use panda --options <command>
20:29 lizmat [Sno]: just saw it
20:29 TimToady m: $*OUT.nl-out = " World\n"; print "hello\n"
20:29 camelia rakudo-moar aaf9fc: OUTPUT«hello␤»
20:29 [Sno] I start an image build overnight and check it on target tomorrow morning
20:29 TimToady hmm, that's not how a P5 programmer will expect .nl-out to work
20:29 [Sno] PR is primarily for review
20:29 lizmat [Sno]: will need someone more Win32 savvy to check it out
20:30 * [Sno] votes for jnthn ;)
20:30 lizmat TimToady: you expect that to affect \n ?
20:30 [Sno] or maybe froggs
20:30 jnthn There's no way I'm implementing it affecting \n :P
20:30 TimToady well, not that, but in P5 a print would add it
20:31 [Sno] lizmat: but you can prove whether I broke darwin ;)
20:31 lizmat [Sno]: that I can and will
20:31 TimToady and say is a bit special-purpose to be relying on it for general .nl-out additions
20:32 lizmat well, apart from the .gist-ing of say, that is what makes say different from print to me
20:32 kjs_ joined #perl6
20:32 lizmat the fact that it adds nl-out at the end
20:32 nowan joined #perl6
20:33 TimToady we need and easy way to have print semantics but add a newline
20:33 TimToady *an
20:33 lizmat $handle.say is not it ?
20:34 TimToady "easy"
20:34 lizmat so using .Str rather than .gist, is what you mean ?
20:35 lizmat not sure what you mean with "print semantics"
20:35 TimToady yes, .Str semantics, so it doesn't, for instance, stop after the 1st 100 elements of a list
20:36 TimToady m: say 1 xx 100000
20:36 camelia rakudo-moar aaf9fc: OUTPUT«(1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...)␤»
20:37 TimToady that ... is a gist truncation, not a camelia truncation
20:38 lizmat printnl ?
20:38 * lizmat ducks
20:38 raoulvdberge didn't know gist truncates
20:38 TimToady well, print $foo, nl; might be a bit more general
20:39 PerlJam raoulvdberge: .gist is just so you can get the gist of the thing.  It doesn't show the whole data structure.
20:39 lizmat .oO( what's all this talk about the NetherLands all of a sudden :-)
20:39 PerlJam :-)
20:39 raoulvdberge makes sense :)
20:39 TimToady why it's call .gist, after all...
20:39 jnthn But how does nl magically become "the nl-out of the handle you're printing on"...
20:39 lizmat but how would the "nl" know which nl-out to use ?
20:39 mr_ron joined #perl6
20:40 lizmat what jnthn  said  :-)
20:40 TimToady well, print would have to translate it, if we did it that way
20:40 TimToady or nl would have to magically know somehow which handle was targeted
20:41 lizmat I guess nl could be a constant like IterationEnd
20:41 TimToady so maybe we should just find a better verb than printnl
20:41 PerlJam puts  :)
20:42 TimToady well, if it's .get coming in, it could be .put going out
20:42 lizmat fwiw, I dislike .get
20:42 lizmat i would more like .line
20:43 lizmat so we could also have .word and be sensible  :-)
20:43 * [Coke] works on a bisect to find when 'make test' started dying on jvm...
20:43 TimToady the whole point is that it's not a line if you change the delim
20:43 PerlJam lizmat: maybe .record  since "line" is fluid
20:43 TimToady that's why it was .ins and not .lines
20:43 jnthn put ain't bad... :)
20:43 jnthn record doesn't verb right
20:43 PerlJam lizmat: anyway, I like .get because it doesn't commit too far :)
20:44 lizmat ok, I can buy the "it may not be a line", but then I don't get .lines  :-)
20:44 TimToady no, you don't :P
20:44 lizmat but I guess .gets would be even worse  :-)
20:44 TimToady why I suggested .got
20:45 Axord joined #perl6
20:45 AlexDaniel m: dd [xx] ^8
20:45 camelia rakudo-moar aaf9fc: OUTPUT«List $var = $(((((((0,), (0,)), ((0,), (0,)), ((0,), (0,))), (((0,), (0,)), ((0,), (0,)), ((0,), (0,))), (((0,), (0,)), ((0,), (0,)), ((0,), (0,))), (((0,), (0,)), ((0,), (0,)), ((0,), (0,)))), ((((0,), (0,)), ((0,), (0,)), ((0,), (0,))), (((0,), (0,)), ((…»
20:45 TimToady and we'll just use the past tense of "put" to count how many lines we put ;)
20:46 PerlJam .oO(  .pot  )
20:46 jnthn .oO( and .toke for how many tokens you read in? :) )
20:47 TimToady "put" Print Using Terminator
20:47 * jnthn going to rest
20:47 jnthn 'night y'all
20:48 TimToady sleep well
20:48 PerlJam g'night jnthn
20:48 jnthn One can only hope... :)
20:48 jnthn o/
20:48 lizmat gnight jnthn
20:49 * TimToady launches lunch
20:51 AlexDaniel m: [[[+]]] [[[+]]]
20:51 camelia rakudo-moar aaf9fc: ( no output )
20:51 jdv79 when and how does that land?
20:52 pippo_ joined #perl6
20:54 AlexDaniel m: [[[[+]]]]>>[[[[+]]]]>>[[[[+]]]]>>[[[[+]]]]
20:54 camelia rakudo-moar aaf9fc: ( no output )
20:59 AlexDaniel say [::]/\/\/\/\/\/\[:/>>[[[[+]]]]>>[[[[+]]]]>>[[[[+]]]]>>[[[[+]]]] # old trick
20:59 AlexDaniel m: say [::]/\/\/\/\/\/\[:/>>[[[[+]]]]>>[[[[+]]]]>>[[[[+]]]]>>[[[[+]]]] # old trick
20:59 camelia rakudo-moar aaf9fc: OUTPUT«12␤»
21:00 * dha tries to think of something that needs working on that he's capable of working on...
21:03 lizmat documenting uniprop ?
21:03 lizmat :-)
21:03 dha Heh.
21:04 dha I guess I could go back to combing through the docs for things that don't have examples.
21:06 llfourn dha: proto is not documented if that excites you :)
21:06 ZoffixW joined #perl6
21:07 PerlJam llfourn: regex proto or method/sub proto?  ;)
21:07 llfourn PerlJam: well I guess they're all the same in the end, but regex just has examples afaik
21:07 Ven_ joined #perl6
21:08 ZoffixW This is dismal: time panda --help;  .... real0m13.399s
21:08 llfourn proto as a 'declarator' has no docs
21:08 * PerlJam was just wondering if the split :skip-empty, :k, :v, :p stuff was finalized and documented.
21:08 dha where is that?
21:08 Ven__ joined #perl6
21:10 dha Or, I suppose, since I'm not finding it, where *should* it be?
21:10 PerlJam dha: I assume you're talking about proto?
21:10 sunbeam joined #perl6
21:10 dha yeah.
21:10 llfourn dha: proto should be here: http://docs.perl6.org/language/functions#Multi-dispatch
21:11 dha Ah, no wonder I couldn't find it. It's not there. :0)
21:11 llfourn I guess as a =head3 under multi dispatch
21:12 kjs_ joined #perl6
21:13 cosimo joined #perl6
21:13 lizmat PerlJam: I documented Str.split
21:13 PerlJam lizmat++
21:13 dha Hm. I would have to understand Multi Dispatch for this...
21:15 synbot6 joined #perl6
21:15 PerlJam dha: S06:77 is a useful paragraph about proto
21:15 synbot6 Link: http://design.perl6.org/S06.html#77_is_a_useful_paragraph_about_proto
21:15 PerlJam S06:77
21:15 synbot6 Link: http://design.perl6.org/S06.html#line_77
21:15 PerlJam stupid bot
21:16 dha that looks like a bug, there...
21:16 llfourn PerlJam,dha actually there are no proto examples or explanation for regex or routines as far as I can tell
21:17 [Sno] joined #perl6
21:18 llfourn ...which also means that the fun <sym> grammar stuff is not documented
21:18 llfourn which is really useful :\
21:18 PerlJam More useful proto info is at S05:1342
21:18 synbot6 Link: http://design.perl6.org/S05.html#line_1342
21:18 dha Right. I'm just trying to figure out what to do beyond just copying that paragraph. :-)
21:19 llfourn http://docs.perl6.org/language/grammars <== in need of proto regex example with <sym>. see https://github.com/moritz/json/blob/master/lib/JSON/Tiny/Grammar.pm :)
21:20 dalek ecosystem: 246a6b9 | RabidGravy++ | META.list:
21:20 dalek ecosystem: Add JSON::Name
21:20 dalek ecosystem:
21:20 dalek ecosystem: https://github.com/jonathanstowe/JSON-Name
21:20 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/246a6b91b9
21:21 Ven_ joined #perl6
21:21 RabidGravy ignore that one, it will be the dependency of four modules but I thought I'd make it first ;-)
21:22 oha joined #perl6
21:25 [Coke] oooh, there's a chance larry broke the jvm. one more bisect iteration to find out! ;)
21:26 RabidGravy bad Larry! BAD! BAD!
21:27 hankache lazy lists are indexed starting from 0 or 1?
21:27 PerlJam hankache: 0
21:27 hankache m: say (0...9)[3];
21:27 camelia rakudo-moar aaf9fc: OUTPUT«3␤»
21:27 dalek ecosystem: fb1f717 | zengargoyle++ | META.list:
21:27 dalek ecosystem: Add Search::Dict
21:27 dalek ecosystem:
21:27 dalek ecosystem: See: https://github.com/zengargoyle/p6-Search-Dict
21:27 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/fb1f7173c6
21:28 PerlJam hankache: what an odd question!  What prompted it?
21:28 hankache PerlJam: say (0...9)[3];
21:28 * zengargoyle really needs to read up on POD6
21:28 ZoffixW hankache, but that answers it :) 0, 1, 2, 3 :)
21:29 hankache i am half asleep
21:29 ZoffixW Coffee!
21:29 hankache indeed ZoffixW :(
21:29 PerlJam or get some sleep
21:29 ZoffixW Sleep is for the weak! :)
21:30 hankache Coffee -> figure out how lazy lists work -> Sleep
21:30 dha Sleep is for tortoises!
21:31 lizmat https://p6weekly.wordpress.com/2015/11/09/2015-46-production-today/  # a new Perl 6 Weekly!
21:32 hankache yeay!
21:33 PerlJam muraiki++
21:33 ZoffixW \o/
21:34 muraiki yay :D
21:36 mr_ron joined #perl6
21:45 hankache do you zef d
21:45 hankache or do you panda
21:45 hankache zef|panda
21:48 ZoffixW I use panda, but it's ridiculously slow to start up
21:51 Ven_ joined #perl6
21:52 dha It is, isn't it?
21:54 flussence precomp helps a ton
21:54 flussence though you've got to do it by hand at the moment...
21:55 zengargoyle instructions anywhere?
21:55 PerlJam I thought rakudobrew build-panda would do that.  If not, that would help tremendously.
21:55 hankache precomp?
21:56 flussence zengargoyle: I don't have a good method, just a `find` loop that tries to precompile every installed .pm file. The general command for it is «perl6-m --target=mbc $file.pm -o $file.pm.moarvm»
21:56 [Coke] latest jvm test breakage was introduced by  lizmat with 4aa63f0f816ed - it's a pretty big commit, so I don't have an easy JVM workaround.
21:56 dha joined #perl6
21:56 [Coke] .tell lizmat - 4aa63f0f816ed caused 'make test' to start failing on the jvm.
21:56 yoleaux [Coke]: I'll pass your message to lizmat.
21:56 TimToady whew!
21:57 lizmat [Coke]: will look at it now, see if have any inspiration :-)
21:57 yoleaux 21:56Z <[Coke]> lizmat: - 4aa63f0f816ed caused 'make test' to start failing on the jvm.
21:57 [Coke] good luck, thanks!
21:57 [Coke] I didn't figure out how it's breaking, just that from then on, make test starts bailing on all the test files.
21:57 dalek rakudo/nom: fe48617 | lizmat++ | src/core/Str.pm:
21:57 dalek rakudo/nom: Make uninames do the right thing for synthetics
21:57 dalek rakudo/nom:
21:57 dalek rakudo/nom: say "\r\n".uninames' # (CARRIAGE RETURN (CR) LINE FEED (LF))
21:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fe486175af
21:57 [Coke] (I was hoping it was another one liner I could temporarily wrap in #?if jvm...)
21:58 flussence (whoops, the -o needs to come before the input file or it gets eaten by @*ARGS)
21:59 ugexe seems to be split(/regex/), split("string") works
21:59 dbrock- joined #perl6
21:59 lizmat [Coke]: building latest JVM now
21:59 lizmat I have some ideas as to the cause
21:59 lizmat it JTALT
22:00 lizmat meanwhile, anybody up for NativeCalling http://tensorflow.org  ??
22:01 [Coke] lizmat: "just takes a long time" ? Aye.. :)
22:01 lizmat yup  :-)
22:01 Skarsnik Someone should work on something like swig or clang/lvm to automate binding x)
22:01 TimToady lizmat: I really kinda dislike returning Str (uninitialized) when we really want to convey Nil (the absence of a value)
22:02 [Coke] (tensorflow) nifty.
22:02 lizmat ok, then I'll Nil it  :-)
22:02 cosimo joined #perl6
22:02 TimToady looking at both uniname and getc patches here
22:03 lizmat and .get I assume
22:03 zengargoyle Skarsnik: i started looking at C::Parser and thinking about auto-NativeCall (at least to start a skeleton) but couldn't get it to work.
22:03 aaronn joined #perl6
22:04 lizmat TimToady: and uniprop/unival
22:05 lizmat unimatch;
22:05 TimToady sure, wherever it snuck in
22:06 TimToady same for any other type object that is being used to mean Nil
22:06 lizmat I'll take care of these first and then scan some more
22:07 Skarsnik zengargoyle, hm weird, I mean most of the case you probably don't even need to preparse macro. you could probably itendify function declaration and struct declaration to already do a lot
22:08 lizmat m: sub a(--> Int) { Nil }; a   # TimToady: it makes using return sigs a lot harder
22:08 camelia rakudo-moar aaf9fc: OUTPUT«Type check failed for return value; expected Int but got Nil␤  in sub a at /tmp/3inuQt41eq:1␤  in block <unit> at /tmp/3inuQt41eq:1␤␤»
22:08 lizmat m: sub a(--> Int) { Int }; a
22:08 camelia rakudo-moar aaf9fc: ( no output )
22:09 lizmat which was my reason for using the type objects  :-)
22:11 TimToady well, most of those are probably really supposed to be --> Int:D anyway, so Int wouldn't work either
22:11 TimToady I'd rather make Nil behave more like a cheap Failure
22:12 lizmat oki
22:13 zengargoyle ugg, i hate sites with light gray text on white background.
22:17 lizmat [Coke]: so, make t/spec/S02-lexical-conventions/begin_end_pod.t dies with "no subtests run"
22:17 lizmat but ./perl6-j --ll-exception make t/spec/S02-lexical-conventions/begin_end_pod.t works ok
22:18 lizmat psch: seems like t/spec/S06-multi/by-trait.t broke again ?
22:19 oha joined #perl6
22:19 cosimo joined #perl6
22:19 lizmat [Coke]: how can I see the actual error when using make ??
22:20 RabidGravy .tell tadzik there you go https://github.com/tadzik/JSON-Unmarshal/pull/11 when you have a minute
22:20 yoleaux RabidGravy: I'll pass your message to tadzik.
22:22 diana_olhovik joined #perl6
22:24 RabidGravy What larks, I may even have a good story viz JSON web services this
22:24 RabidGravy week
22:24 dalek rakudo/nom: dc0238a | lizmat++ | src/core/ (2 files):
22:24 dalek rakudo/nom: Use Nil as a cheap failure indicator
22:24 dalek rakudo/nom:
22:24 dalek rakudo/nom: As per http://irclog.perlgeek.de/perl6/2015-11-09#i_11509994
22:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dc0238a9fc
22:25 dalek roast: 5a0e7a4 | lizmat++ | S15-unicode-information/uni (4 files):
22:25 dalek roast: Track the Str -> Nil changes
22:25 dalek roast:
22:25 dalek roast: As per http://irclog.perlgeek.de/perl6/2015-11-09#i_11509994
22:25 dalek roast: review: https://github.com/perl6/roast/commit/5a0e7a4085
22:25 lizmat ++RabidGravy
22:27 RabidGravy I could do with someone knocking up an implementation of https://tools.ietf.org/html/rfc6570 - mini-languages are not my forté
22:28 hankache m: ~3.WHAT.say;
22:28 camelia rakudo-moar fe4861: OUTPUT«WARNINGS:␤Useless use of "~" in expression "~3.WHAT.say" in sink context (line 1)␤(Int)␤»
22:28 hankache m: (~3).WHAT.say;
22:28 camelia rakudo-moar fe4861: OUTPUT«(Str)␤»
22:29 hankache what is sink context? (the warning message)
22:29 TEttinger joined #perl6
22:30 lizmat m: class A { method sink { say "sunk" } }; A
22:30 camelia rakudo-moar fe4861: ( no output )
22:30 raiph joined #perl6
22:30 lizmat m: class A { method sink { say "sunk" } }; A.new
22:30 camelia rakudo-moar fe4861: OUTPUT«sunk␤»
22:30 hankache sink sank sonk?
22:30 lizmat hankache: in P5 it's usually referred to as "void context"
22:30 dbrock- joined #perl6
22:31 dha Oh dear.
22:31 lizmat dha: ??
22:31 * dha tries to figure out where that bit of information should go in the 5to6 docs.
22:31 hankache hankache = newbie
22:31 virtualsue joined #perl6
22:32 hankache don't know what "void context" is
22:32 PerlJam hankache: no worries.  We're newbie friendly :)
22:32 PerlJam hankache: it's where you don't care about the result of the expression.
22:32 hankache PerlJam: thanks
22:33 prevost_ joined #perl6
22:33 hankache so it's a matter of precedence then?
22:33 hankache this is why i need parentheses right?
22:33 PerlJam hankache: if you just say  "2 + 2"  you'll get 4, but there's no place to store that result and, unless you're returning that result to a caller, it just gets dropped.
22:34 tardisx joined #perl6
22:34 PerlJam hankache: for your example, yes
22:35 lizmat m: 2 + 2
22:35 camelia rakudo-moar dc0238: OUTPUT«WARNINGS:␤Useless use of "+" in expression "2 + 2" in sink context (line 1)␤»
22:35 hankache PerlJam: thanks. I am reading http://doc.perl6.org/language/operators and trying them all
22:35 PerlJam .oO( one day someone will make a circuit slang for P6 where "sink contect" becomes ground )
22:36 PerlJam hankache: sweet.  The more people we have trying that stuff out, the better/clearer we can make the docs for future users
22:38 hankache i just remarked something on my local REPL ~3.WHAT.say; doesn't return a warning
22:38 * PerlJam &
22:38 hankache This is perl6 version 2015.10-30-gab91aea built on MoarVM version 2015.10
22:41 RabidGravy hankache, at one point the REPL was less strict than any other way of running code
22:42 hankache oh ok
22:42 RabidGravy perl6 -e '~3.WHAT.say'
22:42 RabidGravy WARNINGS:
22:42 RabidGravy Useless use of "~" in expression "~3.WHAT.say" in sink context (line 1)
22:43 RabidGravy but yes it's precedence, that way it's stringifying the return of say
22:43 hankache I should learn how precedence work, that's the second time it tricks me today
22:43 ilmari but the repl shows the return value, so is not in sink context, is it?
22:44 hankache ilmari: yes REPL says (Int)
22:44 RabidGravy ah correct
22:44 * ilmari keeps getting caught out by camelia not showing the return value
22:45 hankache i think the REPL evaluates 3.WHAT and then ~ am i right?
22:45 cognominal m:  say "\n" ~~ / \v ^^ / # is that correct?
22:45 camelia rakudo-moar dc0238: OUTPUT«Nil␤»
22:45 hankache salut cognominal
22:46 cognominal salut
22:46 lizmat cognominal o/
22:47 RabidGravy hankache, in every way you can run it runs ~(3.WHAT.say)
22:47 RabidGravy m: ~(3.WHAT.say)
22:47 camelia rakudo-moar dc0238: OUTPUT«WARNINGS:␤Useless use of "~" in expression "~(3.WHAT.say)" in sink context (line 1)␤(Int)␤»
22:47 RabidGravy m: say ~(3.WHAT.say)
22:47 camelia rakudo-moar dc0238: OUTPUT«(Int)␤True␤»
22:47 lizmat m: say "\n" ~~ / \v $/  # don't you mean this, cognominal ?
22:47 camelia rakudo-moar dc0238: OUTPUT«「␤」␤»
22:48 RabidGravy anyway, time for bed now. stuff do tomorrow
22:49 hankache goodnight RabidGravy
22:50 tadzik computer, messages
22:50 yoleaux 22:20Z <RabidGravy> tadzik: there you go https://github.com/tadzik/JSON-Unmarshal/pull/11 when you have a minute
22:54 cognominal lizmat, no I really mean what I typed. I consider the end of file after \v being the start of an empty line. I wanted to rely on that on a more complex regex
22:54 lizmat then I'm not sure
22:54 cognominal me neither :)
23:04 timotimo lizmat: is "Split.str" just silly or an actual typo? :)
23:04 lizmat a silly typo
23:04 timotimo i say we keep it
23:04 timotimo but Str.comb(Int $n) is 40x faster than what?
23:04 timotimo Str.comb(/..../) for example?
23:05 lizmat yes
23:05 timotimo should that go in the post, too?
23:05 cognominal at least, it is conformant to the spec "C<^^> always matches the beginning of the string and after any C<\n> that is *not* the final character in the string."
23:06 cognominal I suppose I can write [ ^^ | $ ] in my regex
23:07 lizmat This alternative is about 40x faster than the equivalent /.../   # timotimo++
23:08 timotimo i wonder if / .... / is faster or slower than / . ** 4 /
23:08 timotimo and whether that changes noticably for different numbers of dots vs ** $n
23:09 lizmat can't really try atm, doing a spectest *and* a JVM build at the same time
23:10 * TimToady is experimenting with moving Nil outside of Any, since it's really a concept, not an object
23:11 * TimToady already has a version where Failure is derived from Nil...
23:11 * lizmat is spectesting some more Nilling
23:13 lizmat perhaps it would be easier if Nil were a Mu.new like IterationEnd ?
23:13 TimToady well, if this works out, the return check bypass will be ~~ Nil rather than ~~ Failure
23:14 lizmat maybe nqp::eqaddr(Nil) would be cheaper ?
23:14 lizmat aka =:= ?
23:14 TimToady that wouldn't pass Failures as a kind of extended Nil
23:14 lizmat ah, yes
23:14 TimToady and istype is cheap
23:14 TimToady and I've always thought of Failure as a kind of Nil with extra information
23:15 TimToady so I'll see if I can make it fly--I think it'll clean up some things if we can make it work
23:16 TimToady and I've always been itching to move more concepts outside of Any; just having Junctions there feels wrongish
23:17 TimToady well, it compiles, so that's something...
23:17 lizmat :-)
23:19 TimToady kazillions of tests blow up, of course, but that's to be expected when changing something fundamental enough that a few spots may need to have a Mu added
23:21 dalek rakudo/nom: 2ad739e | lizmat++ | src/core/ (4 files):
23:21 dalek rakudo/nom: Some more Nilling
23:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2ad739ecf4
23:21 TimToady .oO(Great Nil Refactor...)
23:22 lizmat TimToady: please look at the .of / .default / .name / .dynamic changes
23:22 lizmat (or lack thereof)
23:23 lizmat [Coke]: I assume the JVM meltdown is somewhere in Str.split(Regex), called from PARSE-INCLUDE-SPECS
23:23 tardisx joined #perl6
23:24 Oatmeal joined #perl6
23:24 lizmat [Coke]: but haven't figured out what exactly triggers it
23:24 lizmat will look again tomorrow, too tired now
23:28 TimToady only failed 166 test files :D
23:28 lizmat reminds me of the start of the GLR test file fixing  :-)
23:29 lizmat good night, #perl6!
23:31 timotimo a friend of mine is disappointed we don't redirect from http to https automatically on perl6.org ... and set HSTS :)
23:31 ZoffixW What's HSTS?
23:32 ZoffixW nm found it
23:39 yqt joined #perl6
23:39 dbrock joined #perl6
23:42 dalek modules.perl6.org/mojo-app: 666c188 | (Zoffix Znet)++ | mojo-app/ (12 files):
23:42 dalek modules.perl6.org/mojo-app: Model now  passes the test suite
23:42 dalek modules.perl6.org/mojo-app:
23:42 dalek modules.perl6.org/mojo-app: mst++ for consulting
23:42 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/666c188aa6
23:51 dalek rakudo-star-daily: 18dbf4b | coke++ | log/ (9 files):
23:51 dalek rakudo-star-daily: today (automated commit)
23:51 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/18dbf4b2dd
23:59 tardisx joined #perl6

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

Perl 6 | Reference Documentation | Rakudo