[Tux] | This is Rakudo version 2017.04.3-249-gd18a3332e built on MoarVM version 2017.04-64-g6d5ea042 | 06:34 | |
csv-ip5xs 2.595 | |||
test 12.717 | |||
test-t 4.194 - 4.222 | 06:35 | ||
csv-parser 12.865 | |||
This is Rakudo version 2017.04.3-272-gd76206e74 built on MoarVM version 2017.04-64-g6d5ea042 | 07:29 | ||
csv-ip5xs 2.531 | |||
test 12.516 | |||
test-t 4.337 - 4.350 | |||
csv-parser 12.919 | |||
Geth | nqp: 4bd35f9b62 | pmurias++ | src/vm/js/nqp-runtime/code-ref.js [js] Better creation of missing outer scopes |
08:03 | |
rakudo/js: 6 commits pushed by pmurias++ | |||
lizmat_ | And a new Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2017/05/16/...-the-alps/ | 08:08 | |
cognominal | lizmat++ | 08:42 | |
Zoffix | lizmat: shoudl System::Info be added to ecosystem? | 09:58 | |
yoleaux | 01:23Z <samcv> Zoffix: merged and version bumped :) thank you | ||
Zoffix | lizmat++ good weekly | 10:09 | |
nine | Zoffix: lizmat++ could just upload it to CPAN ;) | 10:10 | |
Zoffix | nine: but then what? I guess that's one part I'm not clear about. I could upload Perl 6 dists to CPAN a year ago, but there was no way to see them. Did that change? How can I see what Perl 6 dists are available on CPAN? | 10:11 | |
There's System::Info, but it's Perl 5 version: metacpan.org/pod/System::Info | 10:13 | ||
moritz | Zoffix: at the moment, it's just a CDN for us, and we have to use our own infrastructure to find the modules on CPAN | 10:14 | |
Zoffix | ok | 10:16 | |
nine | Zoffix: it can then be installed with zef --cpan install System::Info | ||
Zoffix | nine: I can also install anything with zef install perl6.party/My::Module.zip, but it's pointless if no one knows it's there and My::Module exists | 10:17 | |
So saying lizmat could "just" upload to CPAN is a bit misleading | 10:18 | ||
nine | Zoffix: "zef --cpan update && zef --cpan --/p6c --/cached list" to see what's available on CPAN | 10:23 | |
github.com/ugexe/Perl6-ecosystems/.../cpan.json is the index regenerated every 30 or so minutes. | 10:25 | ||
I guess the next steps will be to move this cpan.json to a more official location and use it on modules.perl6.org. | 10:32 | ||
Zoffix | huggable: cpan | 10:35 | |
huggable | Zoffix, www.cpan.org/authors/id/P/PS/PSIXDISTS/Perl6/ | ||
Zoffix | neat | 10:38 | |
Is the mechanism for deleting modules known? For example, I see at least one of my modules I long deleted, but it's still in the PSIXDISTS's dir... | 10:39 | ||
huggable: cpan zef | |||
huggable | Zoffix, nothing found | ||
Zoffix | huggable: cpan zef :is: view Perl 6 modules available on CPAN: zef --cpan update && zef --cpan --/p6c --/cached list | ||
huggable | Zoffix, Added cpan zef as view Perl 6 modules available on CPAN: zef --cpan update && zef --cpan --/p6c --/cached list | ||
Zoffix | huggable: cpan json :is: Perl 6 modules on CPAN: github.com/ugexe/Perl6-ecosystems/.../cpan.json | 10:40 | |
huggable | Zoffix, Added cpan json as Perl 6 modules on CPAN: github.com/ugexe/Perl6-ecosystems/.../cpan.json | ||
nine | Zoffix: it's the same as for Perl 5 dists, i.e. go to pause.perl.org log into your account and select "Delete Files" from the menu. For deleting from PSIXDISTS, you'll have to ask ranguard as it's his account. | 10:41 | |
Zoffix | .ask ranguard how can I delete all my modules from www.cpan.org/authors/id/P/PS/PSIXDISTS/Perl6/ and prevent anything new from me uploaded again (github username zoffixznet)? I'm gonna be uploading my dists on my own and I see some of the stuff in PSIXDISTS are modules are long deleted entirely.. | 10:45 | |
yoleaux | Zoffix: I'll pass your message to ranguard. | ||
Zoffix | I should rake through the sauce of github.com/bingos/gumbypan/tree/master and make one of hour bots report Perl 6 dist uploads to CPAN, like GumbyPAN does :) | 10:47 | |
nine | ++Zoffix | 10:48 | |
Zoffix | .tell lizmat just remembered, it was samcv++ that fixed the +> op in MoarVM. I just removed a kludge from rakudo | 11:27 | |
yoleaux | Zoffix: I'll pass your message to lizmat. | ||
Geth | roast/6.c-errata: 5c703c355d | (Zoffix Znet)++ | S16-io/words.t Simply plan number |
12:51 | |
Zoffix | sorry, was on the wrong branch -_- | 12:52 | |
Zoffix adds the "git branch in your bash line" thing to this box | 12:53 | ||
[Coke] | Zoffix: yes, that's very helpful. | 12:55 | |
Zoffix | namely this: gist.github.com/zoffixznet/4fc6c46...32372c6c33 | ||
[Coke] | I had a standalone at some point, and then started leaving a copy of git checked out somewhere so I could use the version "in core" | 12:59 | |
... I think. I'm in the middle of moving off that machine, and brain cells ain't what they used to be. | 13:00 | ||
ugexe | Zoffix:(or anyone) we could also use another mirror of that cpan file so that we don't still get owned when github goes down | 13:30 | |
you could even apply your own filters so it only lists what you think it should | 13:31 | ||
Zoffix | ugexe: btw was it you who had a list of most popular modules? I need that list to test a bunch of modules with releases. | 13:33 | |
ugexe | Zoffix: no, haven't heard of that yet | 13:34 | |
Zoffix | moritz: was it you? | ||
moritz | Zoffix: somebody sent an analysis to me years ago | 13:41 | |
Zoffix | oh :( I want recent. I guess going by github stars is good enough for my purpose. | 13:42 | |
ugexe | btw - tadzik removed panda from rakudobrew so a bunch of .travis.yml will be broken right now (all the ones that use rakudobrew build-panda) | 14:14 | |
good candidate for automated PRs probably | |||
tadzik | ...whoops | ||
ugexe | tadzik: its for the best anyway... its not like there is an issue tracker to file against :) | 14:15 | |
tadzik | :> | ||
yeah, I took care of that too :P | |||
well, rakudobrew still has one | 14:16 | ||
I guess I could've handled that more gracefully | |||
but hey, if you rely on master being always stable and working and without changes... | 14:17 | ||
Zoffix ponders an alert.perl6.org | 14:18 | ||
jnthn | Yeah, that rakudobrew change bit my $dayjob project. I'd totally forgotten its .travis.yml was still was using Panda...probably 'cus I'd just copy-pasted it from somewhere. :) | ||
Zoffix | Some tips and bits that are too small to warrant a whole post on rakudo.org but still something we'd want to dissiminate to users in some way. So alert.perl6.org could be an RSS feed or bloglet or something that also automatically tweets any new updates | 14:19 | |
Like "still using panda in your .travis.yml? Swap to zef" | |||
It's also still listed here: docs.travis-ci.com/user/languages/perl6 | |||
jnthn | ah, that's probably where I copy/pasted from ;) | 14:20 | |
Zoffix | "rakudobrew build-panda 2015.07" heh :) | ||
tadzik | I could add that as a check for modules.perl6.org/todo | ||
ugexe | the more checks the better | 14:25 | |
nine | Things like this are exactly why I want as little "how" and as much "what" as possible in our module's build info. | 14:34 | |
Zoffix | c: HEAD with "/tmp/foo42".IO -> $f { $f.spurt: "a\nb\nc"; my @a; for $f.open.lines(2, :close) { @a.push: $_ }; dd @a } | 14:49 | |
committable6 | Zoffix, ¦HEAD(d76206e): «Array @a = ["a"]» | ||
Zoffix | c: 2017.04 with "/tmp/foo42".IO -> $f { $f.spurt: "a\nb\nc"; my @a; for $f.open.lines(2, :close) { @a.push: $_ }; dd @a } | 14:50 | |
committable6 | Zoffix, ¦2017.04: «Array @a = ["a"]» | ||
Zoffix | c: 2017.03 with "/tmp/foo42".IO -> $f { $f.spurt: "a\nb\nc"; my @a; for $f.open.lines(2, :close) { @a.push: $_ }; dd @a } | ||
committable6 | Zoffix, ¦2017.03: «Array @a = ["a", "b"]» | ||
Zoffix | Zoffix-- | ||
ZofBot: nead moar tests \o/ | |||
ZofBot | Zoffix, This class will then be composed, with any conflicts indicated | ||
Zoffix | Almost got this bug into .words too but my new tests for words caught it | 14:51 | |
ZOFVM: Files=1242, Tests=135580, 114 wallclock secs (21.59 usr 3.02 sys + 2313.20 cusr 165.24 csys = 2503.05 CPU) | 15:02 | ||
Geth | rakudo/nom: bf399380c1 | (Zoffix Znet)++ | src/core/Rakudo/Iterator.pm Fix off-by-one in Rakudo::Iterator.FirstNThenSinkAll Introduced[^1] to implement close-with-limit feature in IO::Handle.lines/IO::Path.lines/&lines and causes returned Seq for this arg combination for those routine to be missing last item. [1] github.com/rakudo/rakudo/commit/90...4b44e2bf6b |
15:05 | |
rakudo/nom: 8065d544f1 | (Zoffix Znet)++ | src/core/Rakudo/Iterator.pm Remove copy-pastoed unused attribute |
|||
rakudo/nom: 84502dc200 | (Zoffix Znet)++ | src/core/IO/Handle.pm [io grant] Implement $limit arg for IO::Handle.words - Makes interface consistent with Str.words - If :close is given, will close handle after reaching limit (or if iterator got exhausted before reaching it) - Lets &words/IO::Path.words to read a $limit number of words and close the internally used handle, avoiding the open handle leakage issue. |
15:07 | ||
roast: b0c4a7a37c | (Zoffix Znet)++ | S16-io/words.t [io grant] Test &words, IO::Handle.words, and IO::Path.words - Toss old tests; they didn't test any routine args and only two whitespace types of whitespace, and used inappropriate `is` - Test: with all currently-available Zs chars, all the args, and all three routines ($*ARGFILES.words tests will come with IO::CatHandle) - Include heuristic test for IO::Path.words failing to close the handle after iterator has been exhausted/limit reached |
15:09 | ||
roast: 25cf5a58bb | (Zoffix Znet)++ | S16-io/words.t Add indicator to is_run test's code That will guarantee the loop in the code actually got run. |
15:14 | ||
roast: f3d1f67988 | (Zoffix Znet)++ | S16-io/lines.t [io grant] Test $limit arg with &lines/IO::*.lines Rakudo fix: github.com/rakudo/rakudo/commit/bf399380c1 |
15:25 | ||
[Coke] | Zoffix: did you remove the dep in perl6/doc on the bigpage stuff? | 15:46 | |
Zoffix | Don't think so | 15:47 | |
[Coke] | ah, no, it's still in the META | ||
"make" is currently failing for me. | |||
Zoffix | m: my @a; with "/tmp/foo42".IO -> $f { $f.spurt: "a\nb\nc"; for ^15000 { @a.push: $f.open; } } | 16:24 | |
camelia | ( no output ) | ||
Zoffix | Why doesn't this reach the max-open-files thing? | ||
oh doh. Failures | 16:26 | ||
m: my @a; with "/tmp/foo42".IO -> $f { $f.spurt: "a\nb\nc"; for ^15000 { use fatal; @a.push: $f.open; } } | 16:28 | ||
camelia | Failed to open file /tmp/foo42: too many open files in block <unit> at <tmp> line 1 Actually thrown at: in block <unit> at <tmp> line 1 |
||
Geth | roast: 4f5589b274 | (Zoffix Znet)++ | S16-io/lines.t [io grant] Add test for handle leak in IO::Path.lines |
16:38 | |
roast: 7b592f5e12 | (Zoffix Znet)++ | S16-io/lines.t Fix re-declaration warnings |
16:39 | ||
Zoffix | .oO( why is redeclaration a warning and not a fatal error... ) |
||
Another bit of Perl 5 that should've been left where it was found. | |||
[Coke] | Zoffix: Maybe add that to to the 6.d doc? I'd be fine with it being a compile time error. | 16:53 | |
(as a proposal) | |||
Zoffix | huggable: 6.d | ||
huggable | Zoffix, Proposals for 6.d language: github.com/perl6/specs/blob/master/v6d.pod | ||
Zoffix | [Coke]: I guess that would break doc xtest? | 16:58 | |
[Coke] | Zoffix: which would? | 17:27 | |
oh, the redec. I'd update the xtest to deal with it. | 17:28 | ||
Zoffix | [Coke]: the code checker | ||
OK | |||
[Coke] | (or the docs) | ||
AlexDaniel | Zoffix: I love your IO work | 17:46 | |
Zoffix | Why? | 17:48 | |
AlexDaniel | should there be some clearly defined reason to love something? :) | 17:49 | |
I'm just happy that somebody is working on all of these issues | |||
(and doing it well) | 17:50 | ||
Zoffix | Cool | ||
geekosaur | somewhere lizmat is sighing... | ||
Zoffix | hah, true :) | 17:51 | |
I rember getting annoyed of just going through pages and pages of "merge nom" commits to newio; I can't imagine what it was like to actually be doing them. | 17:54 | ||
geekosaur | "frustrating" | 17:58 | |
Zoffix | . | 18:16 | |
yoleaux | 18:15Z <haxmeister> Zoffix: DOM::Tiny seems to work fine, installs ok and parses without error. When I get some time I'll dig more and try to understand the data structure it produces and how to get at it. | ||
[Coke] | ah, my doc issue was a rakudobrew rehash. | 19:09 | |
Zoffix | :) | 19:11 | |
oops. I just now realized that all the people who received my patch renaming META.info to META6.json received it in a form of a commit with a single 340-char line :( | 19:14 | ||
ZofBot: that's what happen when you rely on JavaScript to do your work for you! | |||
ZofBot | Zoffix, But I'm not sure what exactly you're after | ||
Zoffix | ZofBot: I was after 72-char or less commit messages, but it all put it in one line | 19:15 | |
ZofBot | Zoffix, The exceptions will be noted as we go | ||
geekosaur | forget a blank line? | 19:17 | |
[Coke] | need json pretty printer. | ||
oh. You mean message, not content. oooops | 19:18 | ||
Zoffix | No, I just had a JS script paste the text into the "Commit message" text area and apparently the site wraps the text even if it's doesn't actually have newlines in it :/ | 19:19 | |
Geth | nqp/master: 4 commits pushed by pmurias++ | 19:38 | |
dogbert17 | commit: 2016.06 say "zofbot" # test | 20:32 | |
committable6 | dogbert17, ¦2016.06: «zofbot» | ||
AlexDaniel | “zoffixznet assigned zoffixznet and unassigned zoffixznet an hour ago” … Schrödinger's Zoffix? | 20:33 | |
dogbert17 | commit: 2016.06 my @a = [1,[2,3],4]; dd @a.duckmap({ $_ ~~ Int ?? $_++ !! Any }); | ||
committable6 | dogbert17, ¦2016.06: «(1, (2, 3), 4)» | ||
dogbert17 | m: my @a = [1,[2,3],4]; dd @a.duckmap({ $_ ~~ Int ?? $_++ !! Any }); | ||
camelia | [1, Any, 4] | ||
dogbert17 | when did this change? | 20:34 | |
AlexDaniel | there's a bot for that | ||
bisect: my @a = [1,[2,3],4]; dd @a.duckmap({ $_ ~~ Int ?? $_++ !! Any }); | |||
bisectable6 | AlexDaniel, Bisecting by output (old=2015.12 new=84502dc) because on both starting points the exit code is 0 | ||
dogbert17 | don't know about it :) | ||
bisectable6 | AlexDaniel, bisect log: gist.github.com/6628de27aaf7039000...4a3a059774 | ||
AlexDaniel, (2016-09-26) github.com/rakudo/rakudo/commit/ca...e8b1e39330 | |||
AlexDaniel | looks like your commit | ||
dogbert17 | oops | ||
AlexDaniel | c: ca93ac90^,ca93ac90 my @a = [1,[2,3],4]; dd @a.duckmap({ $_ ~~ Int ?? $_++ !! Any }); | 20:35 | |
committable6 | AlexDaniel, ¦ca93ac90^: «(1, (2, 3), 4)» ¦ca93ac9: «(1, Any, 4)» | ||
AlexDaniel | yep, definitely this commit | ||
Zoffix | AlexDaniel: no, just clicked assign to self button instead of labels by accident | ||
dogbert17 | mebbe it's correct bahaviour | ||
perlpilot | dogbert17: looks right to me, but I'm not very familiar with duckmap | 20:36 | |
dogbert17 | looking at Any.pod6 atm, trying to adjust incorrect examples, spelling and formatting error etc | ||
this was one of the examples, which I will adjust unless someone screams :) | 20:37 | ||
AlexDaniel screams “what the f☆∞⌛ is duckmap???” | 20:39 | ||
Zoffix | it's a map that maps by type | 20:40 | |
what quacks like a duck is a duck and all that | |||
AlexDaniel | what is “by type”? | 20:41 | |
Zoffix | You give it a typed block and it only runs for stuff that matches the type. Basically examples above are the wrong way to use it | 20:42 | |
I'd type some but I'm on my phone | |||
AlexDaniel | oooh | 20:43 | |
Zoffix | m: <a b c d e f g>.duckmap(-> $ where <c d e>.any { .uc }).say | ||
camelia | (a b c d e f g) | ||
Zoffix | booo | ||
dogbert17 | Zoffix: write some cooler examples later if you get bored with the IO stuff | ||
AlexDaniel | m: <a b c d e f g>.duckmap($ where <c d e>.any -> { .uc }).say | 20:44 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse expression in argument list; couldn't find final ')' at <tmp>:1 ------> 3<a b c d e f g>.duckmap($7⏏5 where <c d e>.any -> { .uc }).say expecting any of: infix … |
||
Zoffix | m: (478, 'foobar', 'meow', 1234).duckmap(-> Str { .flip }).say | ||
camelia | (478 foobar meow 1234) | ||
AlexDaniel | no, it was right… | ||
Zoffix shrugs | 20:45 | ||
I thought that was it | |||
AlexDaniel | c: all (478, 'foobar', 'meow', 1234).duckmap(-> Str { .flip }).say | ||
Zoffix | Ohhj | ||
doh, I'm not assigning to $_ doh | |||
m: (478, 'foobar', 'meow', 1234).duckmap(-> Str $_ { .flip }).say | |||
camelia | (478 raboof woem 1234) | ||
Zoffix | there we go | ||
AlexDaniel | right | 20:46 | |
Zoffix | m: <a b c d e f g>.duckmap(-> $_ where <c d e>.any { .uc }).say | ||
camelia | (a b C D E f g) | ||
Zoffix | and it descends into iterables | ||
AlexDaniel | ok, so that's a thing where you pass a multi sub or something | ||
Zoffix | probably | ||
AlexDaniel | m: <a b c d e f g>.deepmap(-> $_ where <c d e>.any { .uc }).say | ||
camelia | Constraint type check failed in binding to parameter '$_'; expected anonymous constraint to be met but got Str ("a") in block <unit> at <tmp> line 1 |
||
AlexDaniel | ah-ha | ||
jnthn | Actually it's implemented just by catching an exception | 20:47 | |
AlexDaniel | :| | ||
jnthn | So it's like "map with this operation if it succeeds" | 20:48 | |
Zoffix | Ah, cool | ||
jnthn | Except it will also try to descend | ||
Zoffix | m: <a b c d e f g>.duckmap(-> $_ where <c d e>.any { die when 'd'; .uc }).tsay | ||
camelia | No such method 'tsay' for invocant of type 'List' in block <unit> at <tmp> line 1 |
||
Zoffix | m: <a b c d e f g>.duckmap(-> $_ where <c d e>.any { die when 'd'; .uc }).say | ||
camelia | (a b C d E f g) | ||
Zoffix | awesome | ||
jnthn | Like `try`, it's both really useful and a huge thick blanket :) | 20:49 | |
dogbert17 considers stealing these examples and add them to the pod | |||
jnthn | (In that, both are good when you just want to try and don't care otherwise, but you'd better be doing something small that can't fail in many ways) | 20:50 | |
perlpilot | dogbert17: you totally should :) | 21:02 | |
(that die thing was new to me and could use a paragraph or so of explanation) | 21:03 | ||
dogbert17 | perlpilot: that one I didn't steal but perhaps I should | 21:18 | |
Zoffix | Could be a filter for successfull transactions | 21:22 | |
"Say this data is good: {@data.duckmap({$stuff.add: $_; $something.post: $_; $whatever.whatever: $_; $_})}" | 21:23 | ||
Oh wait never mind | |||
hehe :) | |||
('cause it returns all the data) | 21:24 | ||
AlexDaniel | m: say <25 abc 88>.any.duckmap({$_ + 1}) | 21:26 | |
camelia | any((26), (abc), (89)) | ||
Zoffix | : say <25 abc 88>.any.duckmap({$_ == 25 or die}) | 21:28 | |
m: say so <25 abc 88>.any.duckmap({$_ == 25 or die}) | |||
camelia | True | ||
Zoffix | m: say so <27 abc 88>.any.duckmap({$_ == 25 or die}) | ||
camelia | True | ||
Zoffix | oh right | ||
I think it's clear duckmap isn't for me :) | |||
m: say words(2, 2, 3) | 22:42 | ||
camelia | Cannot resolve caller words(Str: Int, Int); none of these signatures match: (Str:D $: :$autoderef!, *%_) (Str:D $: $limit, *%_) (Str:D $: *%_) in block <unit> at <tmp> line 1 |
||
Zoffix | $autoderef??? | ||
m: say words(2, 2) | |||
camelia | (2 Nil) | ||
Zoffix | m: say words(2, 5) | ||
camelia | (2 Nil Nil Nil Nil) | ||
Zoffix | crap | ||
m: say words(2) | |||
camelia | (2) | ||
Zoffix | That's not how I implemented limit on IO::Handle | 22:43 | |
m: say lines 2, 2 | |||
camelia | (2) | ||
Zoffix | m: say comb 2, 2 | ||
camelia | (2) | ||
Zoffix | m: say comb 2, 2, 2 | ||
camelia | (2) | ||
Zoffix | k, simple fix it looks | ||
1-word fix... for words :) | 22:45 | ||
ZofBot: BADUMPTS! | |||
ZofBot | Zoffix, I was thinking like I do with map/grep, and now that you mention it those instances are using ({ }), not { } `No such method 'e' for invocant of type 'Distribution::Resource'` when doing %?RESOURCES< | ||
AlexDaniel | hmmm I wanted to try something… | ||
Zoffix | m: try something | 22:46 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared routine: something used at line 1 |
||
AlexDaniel | aa, I remember | ||
well, nevermind | 22:48 | ||
I just remembered | |||
m: <25 55 88>.grep({say $++}) | 22:49 | ||
camelia | 0 1 2 |
||
AlexDaniel | m: <25 55 88>.grep(/{say $++}/) | ||
camelia | 0 0 0 |
||
AlexDaniel | I'd just never remember the difference here | ||
or understand it, even | 22:50 | ||
m: <25 55 88>.grep({ {say $++} }) | |||
camelia | 0 0 0 |
||
AlexDaniel | this ↑ is kinda it, but still | 22:51 | |
TimToady | a state variable is like a 'my' variable that is implicit one scope out | 23:39 | |
if there is more than one lexical scope (as is the case above), then each time the outer lexical scope is renewed, so is the state var | 23:40 | ||
otoh, regex scopes are a bit funny... | 23:41 | ||
m: <25 55 88>.grep(/:my $var; {say $var++}/) | |||
camelia | 0 1 2 |
||
TimToady | m: <25 55 88>.grep(my regex { :my $var; {say $var++} }) | 23:42 | |
camelia | 0 0 0 |
||
AlexDaniel squints | 23:48 | ||
TimToady | though by rights all of those should be failing from a null regex... | 23:50 | |
timotimo | wow, the http 500 page of github is pretty | 23:51 | |
gist.github.com/tadzik/80060834fa0...53cfcbe94e - i get it for this |