ggoebel | read the recent reddit thread... thought the following lessons learned from Audrey Tang might be worth reviewing: medium.com/@audrey.tang/lessons-i-...f5d8107e34 | 01:04 | |
TimToady | +1 | 01:18 | |
samcv | » doesn't use threading currently right? | 04:36 | |
so that shouldn't be causing any crashes? | |||
[Tux] | This is Rakudo version 2017.06-136-gd5d3bd276 built on MoarVM version 2017.06-30-g389e9732 | 06:04 | |
csv-ip5xs 2.671 | |||
test 12.645 | |||
test-t 4.099 - 4.145 | |||
csv-parser 12.681 | |||
hgusa | as a lurker outsider of the community, reading Zoffix lose an argument with chromatic is much more fun than reading a cheesy blog from a minister without portfolio of a fictive country | 06:50 | |
nine | ggoebel: thanks for sharing Audrey's lessions! | 06:51 | |
llfourn | +1 I hadn't seen that one. | 07:53 | |
Zoffix | hgusa, glad you enjoyed yourself! | 08:35 | |
samcv: right, not yet. | |||
samcv | thanks | 08:36 | |
that's what i thought too | |||
just wanted to double check | |||
Zoffix | I don't get Audrey's lessons. | 08:41 | |
Though there's one new one I can pitch in: people love drama. Hell, that reddit convo happend like a week ago, but people still can't stfu about it. Even someone lurking in the logs. | 08:47 | ||
But no one bothered to correct me on my proposal to use uint64 for rat denominators and say that'd might end up paying too much for boxing all the time, because numerator can be an Int supposedly! | 08:48 | ||
nine | Zoffix: just to let you know, I'm pretty hurt right now for not even getting any kind of response for my apology. | 08:53 | |
jnthn | Zoffix: The numerator is defined as an Int, but that doesn't mean there's no saving possible, it does mean that you might have to introduce a division op that takes a Int and uint64 | 08:57 | |
Zoffix | jnthn: OK thanks. | 08:58 | |
jnthn | Also I don't see any discussion of that in the backlog here? | 08:59 | |
Zoffix | Exactly! But you see discussion about Audrey lessons and the reddit thread! | ||
jnthn | Yeah, can't people do them on | 09:00 | |
#perl6 so we can work here? :P | |||
Zoffix | Unless you mean my original "road map" plan: irclog.perlgeek.de/perl6-dev/2017-...i_14820738 | ||
jnthn | huh, dns fails to resolve on that :S | ||
And that's probably just out of local history | 09:02 | ||
llfourn also sometimes has DNS issues with perlgeek.de | |||
Zoffix | nine: sorry for storming out yesterday when you were giving your help. I was just annoyed the low-value crap from reddit from a week ago was getting dragged in to #perl6-dev. I don't have any goal or plans with chromatic or anyone else—whether they're positive or negative. What I did on reddit is just pass time on a boring bus ride, so all the advice and lessons about how to win arguments and bring peace | 09:03 | |
to world will fall on my deaf ears. | |||
nine | Fair enough. | 09:04 | |
Zoffix | Here's a copy-paste of that log link: gist.github.com/zoffixznet/c658efa...3c057e7621 | ||
jnthn | heh, finally it loaded | 09:09 | |
samcv | Zoffix, did you see this regression. rt.perl.org/Ticket/Display.html?id=131703 your commit is linked that introduced it | 09:24 | |
Zoffix | samcv: just saw the mention in #perl6 ... I guess ZofBot doesn't recognize "zoffix's" as a mention of me :/ | 09:27 | |
m: say "zoffix's" ~~ / «zoffix» / | 09:28 | ||
camelia | 「zoffix」 | ||
Zoffix | weird | ||
Oh, it's there in my Twitter log, I just only looked at the last message :} | 09:29 | ||
c: f539a624043f5796fcefcca83412ee1ab66e0c4d~1 @*ARGS = 'meow'; get.say | 09:32 | ||
committable6 | Zoffix, ¦f539a624043f5796fcefcca83412ee1ab66e0c4d~1: «(HANDLED) Unable to open file 'meow' in block <unit> at /tmp/pSNune1vHE line 1» | ||
Zoffix | samcv: how do you figure out the regression commit? Seems the same issue exists prior to it? | ||
mc: @*ARGS = 'meow'; get.say | |||
committable6 | Zoffix, ¦2015.12: «(HANDLED) Unable to open file 'meow' in block <unit> at /tmp/HwL39czJzp line 1» | ||
Zoffix | And in 2017.05 release | ||
mc: @*ARGS = 'meow'; sub MAIN ($x) { get.say } | 09:34 | ||
committable6 | Zoffix, ¦2015.12: «(HANDLED) Unable to open file 'meow' in sub MAIN at /tmp/NH9yzaD84J line 1 in block <unit> at /tmp/NH9yzaD84J line 1» | ||
Zoffix | m: @*ARGS = 'meow'; sub MAIN ($x) { get.say } | 09:35 | |
camelia | Failed to open file /home/camelia/meow: No such file or directory in sub MAIN at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
Zoffix | Ahhhh | ||
The failure ends up handled in pre-commit | |||
So I'd say that script was working for the wrong reason and the CatHandle swap fixed a bug that used to silence a failure. | 09:36 | ||
samcv: wrote out explanation and closed the ticket: rt.perl.org/Ticket/Display.html?id...xn-1471842 | 09:42 | ||
"<samcv> but regardless shouldn't be using the arg as a file since it should be taken by MAIN" | 09:46 | ||
Dunno. That get() would unambiguously mean $*IN inside MAIN then, because the only way to get inside is to "handle" all the args, so IMO that code should just use $*IN or just do $*ARGFILES = $*IN if it wants to to use argless IO routines. | 09:48 | ||
samcv | Zoffix, so the argument doesn't get eaten by MAIN? | ||
Zoffix | No | ||
samcv | i thought $*IN should be stdin | ||
hmm | |||
Zoffix | it is. | ||
samcv | that... is very confusing | ||
oh | |||
get doesn't use STDIN it uses argfilesL | |||
Zoffix | get() lines() slurp() and words() operate on $*ARGFILES. $*ARGFILES (by default) is a CatHandle of @*ARGS, unless @*ARGS are empty, in which case it uses $*IN | 09:49 | |
Right. | |||
samcv | ah ok | ||
why is argfiles set when MAIN accepts a variable though? | |||
that is the odd functionality i think. i could understand if there were no args to main. but since it gets set as a variable in the signature | 09:50 | ||
hm | |||
Zoffix | They're just unrelated. The "$*ARGFILES (by default) is a CatHandle of @*ARGS" behaviour exists, regardless of whether you used MAIN or not | ||
The alternative is that $*ARGFILES would become $*IN the moment you use MAIN (or inside MAIN), so that begs the question why not just leave it as @*ARGS and write code inside as using $*IN | 09:53 | ||
Maybe it should, dunno. | |||
samcv | yeah | ||
worth considering | |||
Zoffix | 'cause it being @*ARGS isn't very useful. The second you have any named args, you no longer can use $*ARGFILES | 09:54 | |
samcv | as i think it would be the least suprising to people that way. since MAIN is supposed to be all nice and good | ||
Zoffix | huggable: 6.d | ||
huggable | Zoffix, Proposals for 6.d language: github.com/perl6/specs/blob/master/v6d.pod | ||
Zoffix | Yeah. $*IN sounds goo. Wrote it up for 6.d: github.com/perl6/specs/blob/master...nside-main | 10:00 | |
samcv | nice :) | 10:06 | |
lizmat | .ask masak do you have any thoughts on deprecating (<+) in favour of baggy semantics of (<) and (<=) ? | 11:39 | |
yoleaux | lizmat: I'll pass your message to masak. | ||
lizmat | .ask labster do you have any thoughts on deprecating (<+) in favour of baggy semantics of (<) and (<=) ? | ||
yoleaux | lizmat: I'll pass your message to labster. | ||
lizmat | .ask TimToady do you have any thoughts on deprecating (<+) in favour of baggy semantics of (<) and (<=) ? | ||
yoleaux | lizmat: I'll pass your message to TimToady. | ||
lizmat | m: dd @^10 # not what I expected, but correct nonetheless :-) | 11:44 | |
camelia | one([], 10) | ||
timotimo | yup, earliest match wins | 11:49 | |
well, that and @^a would be valid, but @^10 wouldn't be | |||
so it goes down the path of "is this a placeholder signature parameter?" | |||
Zoffix | huggable: cpan testers api :is: CPAN testers API: www.reddit.com/r/perl/comments/6lb...as_an_api/ | 11:55 | |
huggable | Zoffix, Added cpan testers api as CPAN testers API: www.reddit.com/r/perl/comments/6lb...as_an_api/ | ||
Zoffix | prolly something that can be baked into modules.perl6.org | ||
Gonna do a few passes of straightening up &SEQUENCE, while I tease out all that it does, for my article | 12:46 | ||
buggable: toast | 12:47 | ||
buggable | Zoffix, Between 2017.06-46-g43c1767 and 2017.06: 6 (0.73%) modules got burnt; 11 (1.33%) got unsucced; 199 (24.09%) out of 826 modules appear unusable. See toast.perl6.party/ for details. | ||
Zoffix makes another toast | |||
timotimo | i'm hungry now | 12:48 | |
Geth | rakudo/nom: 2504798464 | (Elizabeth Mattijsen)++ | 2 files Make Setty eqv Setty between 2x and 3.5x faster - 2x in case of different number of elements - 3.5x in case of equivalence on a 26-element Set - also move it from set_operators.pm to Setty.pm |
12:51 | |
Element80 | So what's happening with mix.t file? | 13:01 | |
t/spec/S03-operators/mix.t (Wstat: 1024 Tests: 66 Failed: 4) | |||
Failed tests: 27, 30, 32, 65 | |||
ZOFVM: Files=1259, Tests=141105, 113 wallclock secs (18.85 usr 3.26 sys + 2138.17 cusr 205.49 csys = 2365.77 CPU) | |||
Geth | rakudo/nom: 001135ca2a | (Zoffix Znet)++ | src/core/operators.pm Straighten up &SEQUENCE a bit |
13:02 | |
lizmat | Element80: it's under investigation :-) | 13:10 | |
Element80 | lizmat: is it the (<+) thing? | 13:12 | |
lizmat | yeah, related to (<+) | 13:13 | |
Element80 | Ah | ||
lizmat | I would like to hear masak labster TimToady's thoughts on deprecating (<+) before doing anything | 13:14 | |
Element80 | buggable: draw | 13:30 | |
buggable | Element80, The next Accidental /win Lottery draw will happen in -1 weeks, 2 days, 10 hours, 29 minutes, and 47 seconds. Currently have 0 ballots submitted by 0 users! | ||
Element80 wonders who won | |||
Hehe, jnthn did :) | 13:31 | ||
timotimo | yeah | ||
i remember celebrating | |||
Element80 | buggable: testers f878354a-6183-11e7-89a5-c5f577a92919 | 13:36 | |
buggable | Element80, Proc::Q:ver(1.001003) test result PASS. See more at api.cpantesters.org/v3/report/f8783...f577a92919 | ||
Element80 | hehe neat :) | ||
Element80 hasn't figured out how to fetch info for Perl 6 dists by name yet | 13:37 | ||
Hm. Only now do I realize the "see more" URL isn't human-friendly if you're not using Firefox :) | 13:38 | ||
Geth | rakudo/nom: 49b1b03b02 | (Elizabeth Mattijsen)++ | src/core/Baggy.pm Make Baggy eqv Baggy upto 3.5x faster - 3.5x in case of equivalence on a 26-element Bag - no improvement on different number of elements, as that was already optimized |
13:39 | |
dogbert17 | lizmat: if I were to write tests for RT #131303, where do you want me to put them? | 13:42 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131303 | ||
lizmat | dogbert17: I think that's covered in S03-operators/set_difference.t | 13:43 | |
check out if there are any cases missing there :-) | 13:44 | ||
dogbert17 | lizmat: will do | 13:47 | |
Element80 | .tell masak you have a bunch of PRs on this module: github.com/masak/data-pretty/pulls | 13:51 | |
yoleaux | Element80: I'll pass your message to masak. | ||
Element80 | buggable: author masak | ||
buggable | Element80, Found 12 dists for masak. See temp.perl6.party/buggable/84904347...62717.html | ||
Element80 | .tell masak Actually a whole ton of PRs are waiting for merge in virtually all of your dists: temp.perl6.party/buggable/84904347...62717.html | 13:53 | |
yoleaux | Element80: I'll pass your message to masak. | ||
Geth | rakudo/nom: 93d81d61a6 | (Elizabeth Mattijsen)++ | src/core/Setty.pm Make Setty.ACCEPTS(Setty) about 3.5x faster - the difference between eqv and ACCEPTS is the strict type check only - moved most of logic from eqv to ACCEPTS |
14:02 | |
lizmat | afk& | 14:22 | |
Element80 | ugh | 14:33 | |
It doesn't take 1 hour to dump data as text -_- | |||
Data::Dump::Tree-- over-engineered | 14:34 | ||
dogbert17 | Element80: would it be possible for you to close RT #131561, I see that tests have been added to roast | ||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131561 | ||
dogbert17 Element80 == Mercury ? | 14:35 | ||
Element80 | dogbert17: www.youtube.com/watch?v=2LTxgx3KR30 | 14:38 | |
It's a band that uses Perl 6. That song is about Promises | |||
:trollface: | |||
dogbert17: how come you don't close it? | 14:39 | ||
dogbert17 | Element80: I was afraid you should ask that :) it doesn't work, can only close my own bugs | 14:40 | |
Element80 | dogbert17: what's your rt username? | ||
dogbert17 | dogbert17 | 14:41 | |
sry, no my email address | |||
Element80 | What's the email address? | ||
dogbert17 | jan-olof.hendig(at)bredband.net | 14:42 | |
Element80 | dogbert17: when was the last time you tried to close tickets? You're listed as admin... | 14:43 | |
dogbert17 | I closed one just a few minutes ago 131303 | 14:44 | |
Element80 | dogbert17: and did you try closing 131561 ? | 14:45 | |
dogbert17 | wtf, it worked, Element80++ | 14:47 | |
Element80 | ok then :) | ||
dogbert17 | now I can go on a closing spree :) | 14:48 | |
Element80: suggestion for where I should put tests for RT #131529 | 14:51 | ||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131529 | ||
Element80 | dogbert17: I'm guessing add `byte` to @int-types at the top of S02-types/int-uint.t and fix up the rest of the file to handle it, if needed. | 14:56 | |
dogbert17 | Element80: thx | 14:58 | |
Element80 | buggable: testers f878354a-6183-11e7-89a5-c5f577a92919 | 14:59 | |
buggable | Element80, Proc::Q:ver(1.001003) test result PASS. See more at temp.perl6.party/buggable/45441390...266756.txt | ||
Element80 | That's bettah | ||
Geth | roast: dogbert17++ created pull request #275: Add test for RT #131529 |
15:11 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131529 | ||
dogbert17 | Element80: should I merge or do you see anything bogus? | 15:14 | |
Element80 | dogbert17: looks good | 15:16 | |
dogbert17 | thx | ||
Element80 | Though not what I meant when I add `byte` to @int-types :) It's a tangent point though, so I guess it don't matter for the ticket | 15:17 | |
Geth | roast: 0331647a61 | (Jan-Olof Hendig)++ | S02-types/int-uint.t Add test for RT #131529 |
||
roast: 3bc8e6df53 | dogbert17++ (committed using GitHub Web editor) | S02-types/int-uint.t Merge pull request #275 from dogbert17/test-rt-131529 Add test for RT #131529 |
|||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131529 | ||
Element80 | Filed an Issue: github.com/perl6/roast/issues/276 | 15:19 | |
dogbert17 | do we really have more than one byte type, e.g. byte1, byte8 etc? | 15:21 | |
Element80 | Don't think so | 15:22 | |
Geth | roast: dogbert17++ created pull request #277: Add tests for RT #131273 |
15:54 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131273 | ||
Geth | roast: ed74b5b449 | (Jan-Olof Hendig)++ | 2 files Add tests for RT #131273 |
15:57 | |
roast: d05653ace7 | dogbert17++ (committed using GitHub Web editor) | 2 files Merge pull request #277 from dogbert17/test-rt-131273 Add tests for RT #131273 |
|||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131273 | ||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131273 | ||
Element80 | this is weird. The toast run for HEAD appearntly completed fine without my having to kill anything | 16:17 | |
m: $*PERL.compiler.version.say | 16:19 | ||
camelia | v2017.06.140.g.93.d.81.d.61.a | ||
Element80 | Yup. All the data seems to be there: toaster.perl6.party/ | ||
Unless I stroked off... but no, pretty sure I didn't need to kill anything. | |||
buggable: toast | 16:20 | ||
buggable | Element80, Between 2017.06-140-g93d81d6 and 2017.06: 9 (1.08%) modules got burnt; 12 (1.45%) got unsucced; 201 (24.22%) out of 830 modules appear unusable. See toast.perl6.party/ for details. | ||
Element80 | or maybe I did kill it. I recall killing UNIX::Daemonize, but it says "Succ" for 2017.06 :| | 16:21 | |
Oh, "Dubious, test returned 1 (wstat 256, 0x100)". So it's not Succ :/ | 16:22 | ||
And it got "Ambiguous use of »; use >> instead to mean hyper" warning up in it :/ | 16:23 | ||
"daemonize(«rm $pidlockfile», :pid-file($pidlockfile))" | |||
.ask TimToady is the `Ambiguous use of »` supposed to warn in cases like `run «rm $pidlockfile»` ? That's really annoying. I got it while running normal code and I see some ecosystem usage that now has the same warning pop out from their code. | 16:24 | ||
jnthn | .oO( Unless you...what?! ) |
||
yoleaux | Element80: I'll pass your message to TimToady. | ||
Element80 | jnthn: stroked off == had a stroke | 16:25 | |
jnthn | Ah...it's...worse...in my dialect. :P | ||
Element80 | heh | ||
greppable6: » | |||
greppable6 | Element80, Sorry, can't do that | ||
jnthn | The hyper check does seem a bit overzealous | ||
It'd be nice if it only triggered when the thing actually successfully parsed as a hyper | 16:26 | ||
Time for some break, dinner, etc. | 16:30 | ||
Geth | nqp: bc1b7361e6 | (Douglas Schrag)++ | t/hll/06-sprintf.t Add tests for sprintf octal with precision Test octal precision with and without the '#' flag. Ensure conformance with POSIX sprintf. |
16:32 | |
nqp: cd8d6ae046 | (Douglas Schrag)++ | src/HLL/sprintf.nqp Do not add condition leading '0' if already present If precision is sufficient to pad octal with a leading '0', then no additional prefix is needed with the '#' flag. |
|||
nqp: 1a90373c0f | (Zoffix Znet)++ (committed using GitHub Web editor) | 2 files Merge pull request #364 from dmaestro/issue/353-sprintf-octal-padding Issue/353 sprintf octal padding |
|||
nqp: 17c795cf6b | (Zoffix Znet)++ | tools/build/MOAR_REVISION Bump MoarVM MoarVM bump brought changes: github.com/MoarVM/MoarVM/compare/2...7-g4e29e4c 4e29e4c Fix an accidental nested redeclaration in proc. 33e46e2 Eliminate duplicate code in utf8 decoder. ... (6 more lines) |
16:43 | ||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...7-g4e29e4c | |||
rakudo/nom: d7e1046678 | (Zoffix Znet)++ | tools/build/NQP_REVISION Bump NQP NQP bump brought changes: github.com/perl6/nqp/compare/2017....5-g17c795c 17c795c Bump MoarVM 1a90373 Merge pull request #364 from dmaestro/issue/353-sprintf-octal-padding ... (32 more lines) |
|||
rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....5-g17c795c 99236d4009 | (Zoffix Znet)++ | docs/release_guide.pod |
|||
rakudo/nom: ff4039ca93 | (Zoffix Znet)++ (committed using GitHub Web editor) | docs/release_guide.pod Move cautionary note to be *before* the potentially dangerous instruction |
16:52 | ||
nine | huggable: 6.d | 16:54 | |
huggable | nine, Proposals for 6.d language: github.com/perl6/specs/blob/master/v6d.pod | ||
Geth | rakudo/nom: b3c14c6d8f | (Zoffix Znet)++ (committed using GitHub Web editor) | docs/release_guide.pod Remove "developmental" from releases list heading |
16:55 | |
Element80 | pmurias: [Coke]++ was working on updated docs website. That's all the replacement work I'm aware of. | 17:04 | |
TimToady | jnthn: but that's the point, it didn't successfully parse as a hyper, but gave a different error downstream | 17:17 | |
yoleaux | 11:39Z <lizmat> TimToady: do you have any thoughts on deprecating (<+) in favour of baggy semantics of (<) and (<=) ? | ||
16:24Z <Element80> TimToady: is the `Ambiguous use of »` supposed to warn in cases like `run «rm $pidlockfile»` ? That's really annoying. I got it while running normal code and I see some ecosystem usage that now has the same warning pop out from their code. | |||
TimToady | jnthn: we could perhaps make an exception list of things that are unlikely to be a postfix, but it's not impossible to have a postfix that starts with almost anything | 17:20 | |
Geth | roast: dogbert17++ created pull request #278: Added tests for RT #131272 |
17:21 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131272 | ||
TimToady | though I suppose if people start defining things like postfix:<;)> they deserve what they get ;) | 17:22 | |
Geth | roast: e4302e5d7d | (Jan-Olof Hendig)++ | 2 files Added tests for RT #131272 |
||
roast: 68d34de4b8 | dogbert17++ (committed using GitHub Web editor) | 2 files Merge pull request #278 from dogbert17/test-rt-131272 Added tests for RT #131272 |
|||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131272 | ||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131272 | ||
TimToady | lizmat: on the (<+) thing, my preferences lean toward getting rid of it if we can, and making Baggy types more contagious with respect to Setty types, on the theory that sets are mostly just constrained bags | 17:24 | |
however, I missed the carpage earlier that caused the reversion, due to the drains braking in my house rather badly... | 17:25 | ||
er, *breaking | |||
but I don't like the idea of set operations coercing bags to sets and throwing away information | 17:26 | ||
and of course the drains break when we have kids and grandkids visiting, so we've been dodging plumbers in hazmat suits and spending far too much time driving out to restrooms... | 17:28 | ||
Element80 | TimToady: what if we don't detect any postfixes but merely warn if there's stuff after » that's being parsed while still inside the `«»` quote constuct? | 17:43 | |
i.e. the `»` is not the closing delimiter | |||
m: my $x = 42; my %h = :42a; say %h<<42 $x>>; | 17:45 | ||
camelia | Potential difficulties: Ambiguous use of >>; use » instead to mean hyper, or insert whitespace before >> to mean a quote terminator (or use different delimiters?) at <tmp>:1 ------> 3my $x = 42; my %h = :42a; say %h<<42 $x7⏏5>>;… |
||
Element80 | It warns even here. | ||
TimToady | the » is already being parsed as a hyper at that point | ||
Element80 | I see. | 17:46 | |
TimToady | it's relying on the benign failure of parsing a postfixes after the », and that's a problem with extensible postfix notation | ||
we can guess that ; and ) are unlikely to be the beginnings of a postfix, but we can't be sure | 17:47 | ||
guessing may be good enough, but then there will just be other places that people expect $foo>> to dwim | 17:48 | ||
Element80 | m: say [[<x>],] | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse expression in bracketed infix; couldn't find final ']' at <tmp>:1 ------> 3say [[<7⏏5x>],] |
||
Element80 | ^ is that the same sort of issue? The solution is to put the space rather than fixing ocde? | ||
*codew | |||
m: say [[ <x>],] | 17:49 | ||
camelia | [[x]] | ||
TimToady | reductions are one of the two places where we explicitly backtrack | ||
and it commits to < being an infix before it ever thinks about circumfix:<[ ]> | 17:50 | ||
the dwim in that rule is that if there are any spaces inside, it assumed it cannot be a reduction | |||
Element80 | ok, then I'll just close rt.perl.org/Ticket/Display.html?id...et-history | 17:51 | |
TimToady | m: say [[x]] | 17:52 | |
camelia | No zero-arg meaning for infix:<x> in block <unit> at <tmp> line 1 |
||
TimToady | m: say [[x ]] | 17:53 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared routine: x used at line 1 |
||
TimToady | and the rationale for the dwim is that most lists have multiple members, which most people separate with a comma and a space | 17:54 | |
so another spot where we optimize against code golf... | |||
Element80 | Well, I was writing [[<foo bar ber>], [<meow moo>]] | 17:55 | |
TimToady | most people never even realize there's a formal ambiguity between reduction operators and array composers | ||
Element80 | m: with [[<foo bar ber>], [<meow moo>]] {} | ||
camelia | ( no output ) | ||
Element80 | Oh maybe I wasn't | ||
TimToady | but this is also part of the reason for forbidding whitespace in metaops in general | 17:57 | |
Element80 | Ah, OK, I wrote the above, but then shortened <foo bar ber> to just <foo> to get 1-el array. Though this was test code, not real program :) | 17:58 | |
TimToady | P5 had many more dwims of that sort, which is why we have fewer :) | 17:59 | |
Element80 | :) | ||
Geth | star: tbrowder++ created pull request #90: add specific instructions for a system installation |
18:01 | |
roast: 94ba24dc09 | (Elizabeth Mattijsen)++ | 2 files Test for baggy semantics on (<) and (<=) again This reverts 3bab9ac2a397a2728 and f8d8bff1cc159db4b3fe |
18:25 | ||
jnthn | TimToady: In the original program I'm pretty sure $foo>>[0] was being parsed as a valid hyper | 18:27 | |
(The one the RT was originally about) | |||
Element80 | Yeah, and in `run «foo $bar»` the `»` also gets parsed as a hyper, and when it fails to find an infix that's when it knows it's the closing delim instead. That's how understand the problem at least. | 18:29 | |
m: sub postfix:<♥> { $^a.say }; say <<foo bar»♥()>> | 18:31 | ||
camelia | (foo bar»♥()) | ||
Element80 shrugs | |||
m: sub postfix:<♥> { $^a.say }; my $x = "foo"; say <<foo $x»♥>> | 18:32 | ||
camelia | Potential difficulties: Ambiguous use of >>; use » instead to mean hyper, or insert whitespace before >> to mean a quote terminator (or use different delimiters?) at <tmp>:1 ------> 3$^a.say }; my $x = "foo"; say <<foo $x»♥7⏏5>… |
||
jnthn | Yes, but "parsed as a valid hyper" I meant that it could something that completed it afterwards | ||
*by | |||
*could parse | |||
I mean, if it fails to parse it as a hyper + thing after then it just falls back to being the quote terminator that was probably intended | 18:33 | ||
So if we only complain when we parsed a >> as a hyper and it actually was finally interpreted as one, and it could conflict, then we'd complain | 18:34 | ||
But if we just saw the >> part and the thing after didn't work out as a hyper and we fell back to treating it as a quote terminator anyway, we could just silently let it pass | 18:35 | ||
Which would unbust the new warnings we've got | |||
Element80 | cool | 18:36 | |
Geth | rakudo/nom: 75797af30d | (Elizabeth Mattijsen)++ | 3 files Re-instate baggy semantics of (<) and (<=) - as indicated by irclog.perlgeek.de/perl6-dev/2017-...i_14830389 - this reverts 724cbca71046a1858a8d398 and d4436e18ce1e49eb74733 |
18:41 | |
Element80 | Seems to do the trick | 19:04 | |
Element80 stresstests | |||
ZOFFLOP: t/spec/S17-procasync/kill.t | 19:09 | ||
ZOFFLOP: t/spec/S17-supply/syntax.t | |||
ZOFVM: Files=1259, Tests=141127, 120 wallclock secs (20.44 usr 3.23 sys + 2261.25 cusr 217.42 csys = 2502.34 CPU) | |||
hm, that's a high count of secs :| | 19:10 | ||
Element80 stresstests again just to be sure | |||
ZOFVM: Files=1259, Tests=141136, 113 wallclock secs (20.14 usr 3.66 sys + 2211.79 cusr 194.50 csys = 2430.09 CPU) | 19:12 | ||
Geth | rakudo/nom: d39f7b9aff | (Zoffix Znet)++ | 2 files Make ambiguous » warning less zealous Only warn when we sucessfully parsed a hyper and are about to make an AST for it instead of right when we spot » or >> Fixes unwanted warnings in stuff like `run «foo $bar»` while still keeping them for cases like the problematic one in the ticket[^1] the original fix[^2] fixed. [1] rt.perl.org/Ticket/Display.html?id=131695 [2] github.com/rakudo/rakudo/commit/d5...3516c25d6b |
19:17 | |
Element80 | That still warns for stuff like `my $x = 42; say «foo $x»[0]»` but not for `my $x = 42; say «foo $x»` | 19:18 | |
dogbert17 | does anyone have suggestions as to in which file I should add tests for RT #131386 ? | 19:43 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131386 | ||
Element80 | S02-types/baggy.t ? | 19:44 | |
If I were writing tests for that ticket, I'd pre-emptively test all Set/SetHash, Bag/BagHash, and Mix/MixHash | 19:45 | ||
m: for <Set Bag Mix> X ('', 'Hash') { my %x := ()."$_"; %x<a> } | 19:46 | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Quoted method name requires parenthesized arguments. If you meant to concatenate two strings, use '~'. at <tmp>:1 ------> 3g Mix> X ('', 'Hash') { my %x := ()."$_"7⏏5; %x<a> } |
||
Element80 | m: for <Set Bag Mix> X ('', 'Hash') { my %x := ()."$_"(); %x<a> } | ||
camelia | No such method 'Set ' for invocant of type 'List'. Did you mean any of these? Seq Set Str in block <unit> at <tmp> line 1 |
||
dogbert17 | heh | ||
Element80 | m: use Test; plan 1; subtest 'can access key of empty list coerced to type' => { my @tests = <Set SetHash Bag BagHash Mix MixHash Map Hash>; plan +@tests { lives-ok { my %x := ()."$_"(); %x<a> }, $_ } } | 19:48 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Unexpected block in infix position (missing statement control word before the expression?) at <tmp>:1 ------> 3sh Mix MixHash Map Hash>; plan +@tests7⏏5 { lives-ok { my %x := ()."$_"(); %x<a> … |
||
Element80 | m: use Test; plan 1; subtest 'can access key of empty list coerced to type' => { my @tests = <Set SetHash Bag BagHash Mix MixHash Map Hash>; plan +@tests; for @tests { lives-ok { my %x := ()."$_"(); %x<a> }, $_ } } | ||
camelia | 1..1 1..8 ok 1 - Set ok 2 - SetHash ok 3 - Bag ok 4 - BagHash ok 5 - Mix ok 6 - MixHash ok 7 - Map ok 8 - Hash ok 1 - can access key of empty list coerced to type |
||
Element80 | c: 87d0e0a39e~1 use Test; plan 1; subtest 'can access key of empty list coerced to type' => { my @tests = <Set SetHash Bag BagHash Mix MixHash Map Hash>; plan +@tests; for @tests { lives-ok { my %x := ()."$_"(); %x<a> }, $_ } } | ||
committable6 | Element80, gist.github.com/3cb40dd42e91b00c3d...bb421ea358 | ||
Element80 | Cool. It was also broken on Mix :) | 19:49 | |
dogbert17 | perhaps you should add this now that you've done all the work :) | ||
Element80 | Nope | ||
Element80 decommutes | |||
dogbert17 | can I steal your code ? | 19:50 | |
Element80 | Sure | ||
dogbert17 | then it will sonn be fixed :) | ||
*soon | |||
Geth | roast: dogbert17++ created pull request #279: Added tests for RT #131386. Zoffix++ |
20:03 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131386 | ||
roast: d2d60f5a1c | (Jan-Olof Hendig)++ | S02-types/baggy.t Added tests for RT #131386. Zoffix++ |
20:04 | ||
roast: e156d2a03d | dogbert17++ (committed using GitHub Web editor) | S02-types/baggy.t Merge pull request #279 from dogbert17/test-rt-131386 Added tests for RT #131386. Zoffix++ |
|||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131386 | ||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131386 | ||
star: 7ed02c57e2 | (Tom Browder)++ (committed by Zoffix Znet) | README add specific instructions for a system installation (#90) * add specific instructions for a system installation * tweak wording per Zoffix's comment |
20:37 | ||
Element80 | "Should probably have <!after '='> to agree w/spec, but after NYI." | 21:29 | |
Looks like this comment (code?) is outdated: github.com/rakudo/rakudo/blob/nom/....nqp#L4471 | 21:30 | ||
ugexe | `my $proc = Proc::Async.new("ls"); $proc.stdout; await $proc.start;` # should this await indefinitely? | 21:57 | |
geekosaur | yes? you told it to capture stdout but nothing is reading it, so it could well lead to a deadlock | 21:59 | |
ugexe | something nice with Proc vs Proc::Async is Proc can do silent processes easier ala run("test-command", :out, :err).exitcode == 0 vs my $proc = Proc::Async.new("test-command") andthen {.stdout.tap; .stderr.tap;}; $proc.exitcode == 0 | 22:00 | |
geekosaur | and no, I don't think perl 6 or anything else can possibly make IPC behave the way people always think it should magically behave. if something is not consuming data on a pipe, the other end WILL block. you can't fix that on your (the perl 6) end except by reading the pipe | 22:01 | |
Element80 | .exitcode == 0 can also be written as simply .so | 22:08 | |
ugexe | ah yeah. im in the habit of using .exitcode because I do a lot of probing-for-existence where you get stuff like run("prove", "--help").exitcode == 1 | 22:20 | |
jnthn | ugexe: If you don't .tap it then it won't start reading; that's 'cus you can also do $proc2.bind-stdin($proc1.stdout) which will plumb the fds together, in which case you'd really not like a read to happen | 22:26 | |
Also, uh, does the thing you wrote with Proc really work? | 22:30 | ||
[Coke] | FYI, segfault for me in doc test: github.com/perl6/doc/issues/1411 | 22:31 | |
ugexe | the Proc one yeah. the Proc::Async needs a $proc.start in there | ||
jnthn | `run("test-command", :out, :err).exitcode == 0` will at the very least leak handles | 22:32 | |
I'm a tad surprised it doesn't deadlock if the commands produce sufficient output | |||
What'd be nicer is if we could provide some simple methods on Proc::Async that handle the common use cases | 22:34 | ||
ugexe | i thought silent procs via :out/:err worked without leaking handles because of github.com/rakudo/rakudo/commit/e4...c69c52a4a0 | 22:40 | |
if it *does* leak handles then I have some code to change heh | 22:43 | ||
Element80 | That just waits for the proc to be done. | 22:45 | |
to set status | 22:46 | ||
run("test-command", :!out, :!err).so should work, I think, | 22:47 | ||
yeah, it just taps to silence it without doing anything with data | |||
ugexe | ah, I like that better visually too | 22:48 | |
jnthn | Yeah was just looking at the code | ||
Those two will do the right thing. | |||
(:!out and :!err that is) | 22:49 | ||
ugexe | i wonder if thats what is causing some people issues on travis-ci with big dependency chains | 22:50 | |
jnthn | Quite possibly, if the issue is they run out of handles | ||
ugexe | no one has gotten a good error. it dies abruptly or segfaults | ||
jnthn | Also today I fixed an issue where error reporting when a process was launched could end up occasionally SEGVing due to a GC rooting accident | 22:51 | |
github.com/MoarVM/MoarVM/commit/4e29e4c717 fwiw | 22:52 | ||
ugexe | in the cases i've seen there should not be any errors to report, unless the error reporting you're talking about is at a lower level | 22:53 | |
jnthn | No, this was in a case where for example launching a process failed | 22:57 | |
ugexe | ah, i guess it could be trying to report the process failed but dies abruptly because of that | 22:58 | |
[Coke] | trying to use samcv's perl6-lldb-m on mac; run the command, type "run" I get the 1..309 of the test plan, and then it just hangs. :| | 23:18 | |
samcv | hmm hangs? | 23:19 | |
can you show output? | |||
like hangs how? | |||
[Coke] | "stops emitting any output" | 23:20 | |
samcv | hm | ||
odd | |||
did you edit the library folders? | 23:21 | ||
in the script? | |||
[Coke] | so perl6-lldb-m xt/space-after-comma.t ; type "run" inside lldb; get 1..309, then nothing. | ||
samcv: yes. | |||
it emits the text from the first chunk as expected. | |||
samcv | i get the same thing | 23:22 | |
it works with everything else i've run though | |||
Process 9007 stopped and restarted: thread 2 received signal: SIGCHLD | |||
no it's still running but hm | |||
odd | |||
i see what you're seeing though | 23:23 | ||
i get the same thing in gdb though | |||
[Coke] | ... guess I woin't bother installing gdb, then. :) | 23:25 | |
samcv | heh | 23:26 | |
i was gonna add lldb script to rakudo | |||
i should do that | |||
working on adding that [Coke] should be almost done as lng as no hitches in the makefile | 23:47 | ||
[Coke], i've found the apple site has pretty good info on using lldb developer.apple.com/library/conten...17-CH7-SW1 | 23:48 | ||
well organized | |||
[Coke] | does 'use strict' or 'no strict' actually do anything in rakudo other than set $*STRICT ? | 23:55 | |
ah, no strict allows you to auto declare vars. | 23:57 |