lizmat | . | 01:08 | |||||||||||||||||||||||||||||||||||||
yoleaux | 27 Nov 2017 20:41Z <DrForr> lizmat: theperlfisher.blogspot.cz/2017/11/t...hings.html I think the link got missed in the P6W. | ||||||||||||||||||||||||||||||||||||||
lizmat | .tell DrForr the link is in the Meanwhile on FaceBook section ? | 01:10 | |||||||||||||||||||||||||||||||||||||
yoleaux | lizmat: I'll pass your message to DrForr. | ||||||||||||||||||||||||||||||||||||||
Geth | nqp: f22b0b2d0e | usev6++ | src/vm/jvm/QAST/Compiler.nqp [jvm] Remove capture from cstack upon backtracking This is a translation of similiar fixes for js (626e60c81f) and moarvm (d181c8b8d5). It fixes three currently failing test in S05-match/capturing-contexts.t (see also RT #116895 and RT #125285). |
05:57 | |||||||||||||||||||||||||||||||||||||
synopsebot | RT#116895 [open]: rt.perl.org/Ticket/Display.html?id=116895 [BUG] [JVM] LTM alternation captures the wrong stuff when backtracking in Rakudo | ||||||||||||||||||||||||||||||||||||||
RT#125285 [resolved]: rt.perl.org/Ticket/Display.html?id=125285 Capturing separator (like /something % (.+?)/ ) spews out backtracking | |||||||||||||||||||||||||||||||||||||||
TimToady | m: enum Pows (<A B C> Z=> 1,2,4); say B # wonder if we have this in our bugs yet... | 07:24 | |||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared name: B used at line 1 |
||||||||||||||||||||||||||||||||||||||
[Tux] |
|
07:25 | |||||||||||||||||||||||||||||||||||||
TimToady | yeah, turns out to be a variant of #130041 | 07:40 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: d9021cf16e | TimToady++ | src/Perl6/Actions.nqp enums from generated list should handle pairs The enum actions code could handle literal pairs correctly but didn't handle generated pairs such as might be generated from X=>. Fixes #130041 |
07:44 | |||||||||||||||||||||||||||||||||||||
TimToady | m: enum Foo ( 'A' => 42, 'B', 'C', 'D' ); say +B | 07:54 | |||||||||||||||||||||||||||||||||||||
camelia | 43 | ||||||||||||||||||||||||||||||||||||||
TimToady | m: enum Foo ( 'A' => 42, 'B', 'C', 'D' ); say +A | ||||||||||||||||||||||||||||||||||||||
camelia | 42 | ||||||||||||||||||||||||||||||||||||||
TimToady | m: enum Pows (<A B C> Z=> 1,2,4); say +B | ||||||||||||||||||||||||||||||||||||||
camelia | 2 | ||||||||||||||||||||||||||||||||||||||
masak | TimToady++ | 09:49 | |||||||||||||||||||||||||||||||||||||
TimToady: you might have answered already, but... | 10:09 | ||||||||||||||||||||||||||||||||||||||
quasi { my $x; {{{ #`[ $x not visible here ] }}} } | |||||||||||||||||||||||||||||||||||||||
would you agree? | |||||||||||||||||||||||||||||||||||||||
both these combinations are visible: macro->quasi, macro->unquote | 10:10 | ||||||||||||||||||||||||||||||||||||||
but not quasi->unquote | |||||||||||||||||||||||||||||||||||||||
(my argumentation is that quasi code is not "real"/"incorporated" enough for it to have real declarational side effects. this is in line with recent design decisions around quasis and BEGIN blocks.) | 10:11 | ||||||||||||||||||||||||||||||||||||||
or, phrasing it from another angle, it kinda makes sense for the code in the unquote to be "unaware" of its surrounding quasi context. in a way it's *not* surrounded by it, because an unquote is... undoing the quasiquoting. | 10:16 | ||||||||||||||||||||||||||||||||||||||
("it's only surrounded by it textually!") | |||||||||||||||||||||||||||||||||||||||
jnthn | masak: Yeah, it's kinda like how in `my $x = 101; Q:c/my $x = 42; { say $x }/` we expect 100, not 42 | 10:19 | |||||||||||||||||||||||||||||||||||||
masak | I'm deeply insulted at having quasiquotes being compared to text... but yes :) | 10:20 | |||||||||||||||||||||||||||||||||||||
jnthn | Just with the oddity that the language being parsed inside of the quote construct happens to start in the MAIN grammar rather than the Q grammar | ||||||||||||||||||||||||||||||||||||||
masak | the thing that makes it tricky, of course is that something like `quasi { my $x = 42; $x }` still needs to work | 10:21 | |||||||||||||||||||||||||||||||||||||
jnthn | An explanation that's good *and* insulting. Go me! :P | ||||||||||||||||||||||||||||||||||||||
masak | that is, the quasi *does* declare things | ||||||||||||||||||||||||||||||||||||||
just not for the unquotes | |||||||||||||||||||||||||||||||||||||||
in terms of nesting depth, the unquotes do a rare -1 instead of a +1, kinda | 10:22 | ||||||||||||||||||||||||||||||||||||||
at least handwavingly-conceptually | |||||||||||||||||||||||||||||||||||||||
jnthn | It declares things, but inside of its own little world, from which the outer program looks kinda like a setting | 10:23 | |||||||||||||||||||||||||||||||||||||
masak | a recent theme for me has been realizing (and re-realizing) that the quasiquote is a *template* | 10:24 | |||||||||||||||||||||||||||||||||||||
so while declarations can happen in there, they're not the "real thing" that will eventually happen in the injected code | |||||||||||||||||||||||||||||||||||||||
and in a sense they can't be, because templates aren't fully built yet | 10:25 | ||||||||||||||||||||||||||||||||||||||
the fine balance Perl 6 tries to walk here is that you're doing all these *clearly insane* things with scopes and program fragments... but you still wan't full lexical scoping to apply | 10:26 | ||||||||||||||||||||||||||||||||||||||
want* | |||||||||||||||||||||||||||||||||||||||
jnthn | wan't :D | ||||||||||||||||||||||||||||||||||||||
masak | I blame macros for that typo, somehow | ||||||||||||||||||||||||||||||||||||||
jnthn tries to guess the missing letter :) | |||||||||||||||||||||||||||||||||||||||
masak | a short progress report from the field: 007 is about to turn 3 years old. I've had some encouraging progress with quasis in the past few days/weeks. | 10:28 | |||||||||||||||||||||||||||||||||||||
jnthn | But yeah, I think "it's just a quote construct that can interpolate, parsing a very interesting language inside" is a fairly nice way to think about it. | ||||||||||||||||||||||||||||||||||||||
Wow, time flies | |||||||||||||||||||||||||||||||||||||||
masak | 007 is by far the toughest thing I've ever implemented. some things I have to work with on "good days" because they're just impossible otherwise | ||||||||||||||||||||||||||||||||||||||
I'm still not 100% convinced I have the "right" model to bring back to Perl 6 -- I keep finding cases that don't work well | 10:35 | ||||||||||||||||||||||||||||||||||||||
happy to discuss it with somebody, with lots of examples | |||||||||||||||||||||||||||||||||||||||
though brain meltdown hazard applies, of course | 10:36 | ||||||||||||||||||||||||||||||||||||||
tbrowder | .tell AlexDaniel I added answers to your questions. | 12:05 | |||||||||||||||||||||||||||||||||||||
yoleaux | tbrowder: I'll pass your message to AlexDaniel. | ||||||||||||||||||||||||||||||||||||||
tbrowder | .tell Zoffix the pod spec tests now require roast with PR #353 merge. | 12:16 | |||||||||||||||||||||||||||||||||||||
yoleaux | tbrowder: I'll pass your message to Zoffix. | ||||||||||||||||||||||||||||||||||||||
dogbert2 | ZOFFLOP t/spec/MISC/bug-coverage-stress.t (test #5) | 12:20 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: e7c0a64475 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Iterator.pm Fix the .toggle() case - if no checkers specified, $!done would not be properly initialized |
13:51 | |||||||||||||||||||||||||||||||||||||
timotimo | TimToady: will you spend a little time on the Z+= thing brian d foy reported (once a few months ago, again more recently)? | 13:55 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | . | 15:22 | |||||||||||||||||||||||||||||||||||||
yoleaux | 12:05Z <tbrowder> AlexDaniel: I added answers to your questions. | ||||||||||||||||||||||||||||||||||||||
Geth | roast/master: 7 commits pushed by (Tom Browder)++, (Aleks-Daniel Jakimenko-Aleksejev)++ | 16:31 | |||||||||||||||||||||||||||||||||||||
TimToady | timotimo: well, maybe, but no promises; in masakian terms, I haven't had any "good days" for the last couple weeks, due to a tooth extraction that got infected, resulting in a two-week long headache | 16:51 | |||||||||||||||||||||||||||||||||||||
masak: I'm on the mend, but not sure I'm up to brain-melting just yet | 16:52 | ||||||||||||||||||||||||||||||||||||||
[Coke] | TimToady: ugh, hope you feel better soon. | 16:56 | |||||||||||||||||||||||||||||||||||||
I'm doing my part with some acute tonsillitis, but I think I got the easy job. :) | 16:57 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | yay! SEGV | 17:39 | |||||||||||||||||||||||||||||||||||||
squashable6: next | 17:41 | ||||||||||||||||||||||||||||||||||||||
squashable6 | AlexDaniel, ā š Next SQUASHathon in 2 days and ā16 hours (2017-12-02 UTC-12āUTC+14). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | hm, has anybody noticed any memory leaks lately? | 17:43 | |||||||||||||||||||||||||||||||||||||
just noticed that some inactive bots are eating a bit too much | 17:44 | ||||||||||||||||||||||||||||||||||||||
timotimo | TimToady: damn, that sucks. i wish you a swift and lasting recovery :) | 17:47 | |||||||||||||||||||||||||||||||||||||
jnthn | TimToady: Hope you'll be feeling better soon; take care! | 17:51 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | jnthn: hello. I think I see a reproducible gc-related segfault here. I'm thinking, maybe you want to take a quick look? | 18:27 | |||||||||||||||||||||||||||||||||||||
I did catch it under valgrind but it took more than half an hour and mosh ate the output :( | 18:28 | ||||||||||||||||||||||||||||||||||||||
but I happens under gdb also | |||||||||||||||||||||||||||||||||||||||
it* | |||||||||||||||||||||||||||||||||||||||
dunno if this helps: gist.github.com/AlexDaniel/5e0f9e0...adc4c2c4ff | 18:30 | ||||||||||||||||||||||||||||||||||||||
o! maybe this is golfable | 18:56 | ||||||||||||||||||||||||||||||||||||||
nvm then | 18:57 | ||||||||||||||||||||||||||||||||||||||
timotimo | AlexDaniel: does it happen with jit turned off? | 18:58 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | timotimo: yes | 19:06 | |||||||||||||||||||||||||||||||||||||
timotimo | that ought to make the stack trace a bit more digestable | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | timotimo: gist.github.com/AlexDaniel/5e0f9e0...adc4c2c4ff | 19:08 | |||||||||||||||||||||||||||||||||||||
(updated) | 19:09 | ||||||||||||||||||||||||||||||||||||||
timotimo | it's probably possible to get this to blow up earlier with GC_DEBUG set? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | what's GC_DEBUG? github.com/rakudo/rakudo/wiki/dev-env-vars | 19:10 | |||||||||||||||||||||||||||||||||||||
timotimo | oh, it's actually a #define inside moar's c source | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | wellā¦ that'd be a bit harder | 19:11 | |||||||||||||||||||||||||||||||||||||
timotimo | if you set it to 2 rather than just 1, it'll also make things a lot slower | 19:12 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | ok created this to track the problem: github.com/rakudo/rakudo/issues/1278 | 19:18 | |||||||||||||||||||||||||||||||||||||
timotimo | "GC-related" is a bit of a red herring; it's usually just that moar stumbles upon some prior corruption the moment GC runs, because GC basically touches everything | 19:19 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | timotimo: changed. | 19:21 | |||||||||||||||||||||||||||||||||||||
fwiw, feel free to edit any of my bug reports/comments on github | |||||||||||||||||||||||||||||||||||||||
timotimo | oh | ||||||||||||||||||||||||||||||||||||||
moritz | can somebody please try to create the category 2017 on perl6advent.wordpress.com/wp-admin/ ? | 19:50 | |||||||||||||||||||||||||||||||||||||
it fails for me | |||||||||||||||||||||||||||||||||||||||
creating 2018 worked :/ | |||||||||||||||||||||||||||||||||||||||
oops, should've been in #perl6 | |||||||||||||||||||||||||||||||||||||||
jnthn | AlexDaniel: Was away doing dinner when you wrote | 19:54 | |||||||||||||||||||||||||||||||||||||
Hm, I'm sure I've seen that stack trace before | |||||||||||||||||||||||||||||||||||||||
And it was 'cus sc_idx was a bonkers value | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | well let me know if you want to reproduce it on whateverable server | ||||||||||||||||||||||||||||||||||||||
in theory you should also be able to do it on any machine, I'd just have to tar some input files for it | 19:55 | ||||||||||||||||||||||||||||||||||||||
but I don't have any easy-to-follow steps yet :) | |||||||||||||||||||||||||||||||||||||||
jnthn | I'm probably a bit too tired for debugging such things today, alas :( | 19:56 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | sure. I'll update github.com/rakudo/rakudo/issues/1278 accordingly once I have more info | ||||||||||||||||||||||||||||||||||||||
.tell lizmat I've done the bot. It tends to segfault a little bit (GH#1278), but if that happens just rerun the command again. github.com/perl6/whateverable/wiki/Reportable | 21:02 | ||||||||||||||||||||||||||||||||||||||
yoleaux | AlexDaniel: I'll pass your message to lizmat. | ||||||||||||||||||||||||||||||||||||||
gfldex | .tell lizmat basic html support is in. I had to cheat because Telemetry::report still resists overloading (and there are a few things not exported). | 21:30 | |||||||||||||||||||||||||||||||||||||
yoleaux | gfldex: I'll pass your message to lizmat. | ||||||||||||||||||||||||||||||||||||||
Geth | roast: c39830a610 | usev6++ | S15-unicode-information/uniname.t [jvm] Fudge two failing unicode tests |
23:12 |