Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm Set by Zoffix on 27 July 2018. |
|||||||||||||||||||||||||||||||||||||||
00:36
nebuchadnezzar left
00:38
nebuchadnezzar joined
00:44
squashable6 left
00:47
squashable6 joined,
ChanServ sets mode: +v squashable6
01:15
lizmat left
01:16
lizmat joined,
lucasb left
02:59
rba left
04:16
AlexDaniel left,
AlexDaniel joined
05:19
rba joined
05:22
rba left
05:23
rba joined
05:35
rba left,
rba joined
05:45
rba left,
rba joined
05:58
[TuxCM] left
06:31
vrurg left,
vrurg joined
06:46
lizmat left
07:03
lizmat joined
07:07
patrickb joined
07:11
lizmat left
07:51
lizmat joined
07:53
[TuxCM] joined
|
|||||||||||||||||||||||||||||||||||||||
|Tux| |
|
07:54 | |||||||||||||||||||||||||||||||||||||
5.256 | |||||||||||||||||||||||||||||||||||||||
08:09
lizmat left
08:32
lizmat joined
10:26
|Tux| left
10:34
[TuxCM] left
10:35
[TuxCM] joined
11:11
[TuxCM] left
12:36
[TuxCM] joined
13:17
lucasb joined,
vrurg left
13:18
vrurg joined
13:23
vrurg left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | Geth: ver github.com/rakudo/rakudo/commit/7b...619e4ef640 | 13:26 | |||||||||||||||||||||||||||||||||||||
Geth | AlexDaniel, version bump brought in these changes: github.com/perl6/nqp/compare/2019....9-gda96d39 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | Geth: ver github.com/rakudo/rakudo/commit/fc4aca08 | 13:29 | |||||||||||||||||||||||||||||||||||||
Geth | AlexDaniel, version bump brought in these changes: github.com/perl6/nqp/compare/2019....1-gd780b76 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | Geth: ver github.com/rakudo/rakudo/commit/b5bf7cd4 | 13:37 | |||||||||||||||||||||||||||||||||||||
Geth | AlexDaniel, version bump brought in these changes: github.com/perl6/nqp/compare/2019....3-g0e5f3d0 | ||||||||||||||||||||||||||||||||||||||
13:39
vrurg joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | Geth: ver github.com/rakudo/rakudo/commit/f1c80fdd | 14:10 | |||||||||||||||||||||||||||||||||||||
Geth | AlexDaniel, version bump brought in these changes: github.com/perl6/nqp/compare/2019....7-gddb5d2d | ||||||||||||||||||||||||||||||||||||||
14:24
vrurg left
14:26
vrurg joined
14:47
vrurg_ joined
14:49
vrurg left,
vrurg_ is now known as vrurg
15:42
patrickb left
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | AlexDaniel: you created release branches for NQP and Rakudo, right? so i could merge my PRs now? | 15:47 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | yes | ||||||||||||||||||||||||||||||||||||||
Geth | nqp/master: 14 commits pushed by (Daniel Green)++, MasterDuke17++ review: github.com/perl6/nqp/compare/4300d...e9672a7b84 |
15:55 | |||||||||||||||||||||||||||||||||||||
16:11
lizmat left
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | is t/02-rakudo/reproducible-builds.t failing on windows (appveyor) a known thing? or a legitimate problem with my Rakudo PR? | 16:46 | |||||||||||||||||||||||||||||||||||||
16:46
lucasb left
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | it only failed for the `Environment: RAKUDO_OPTIONS=--backends=moar --gen-nqp=master --gen-moar=master` run | 16:47 | |||||||||||||||||||||||||||||||||||||
huh. and jvm build in travis can't find Test? the jvm build actually works locally | 16:50 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | MasterDuke: where do you even see that? | 16:54 | |||||||||||||||||||||||||||||||||||||
TreyHarris | Any cases to think about where `cmp-ok($got, &[==], $expected)` should be preferred over `is($got, $expected)` except for allomorphs? I was about to write an `is-equal` but I realized that's so obvious there must be a reason it isn't included. (I know `ok` is even simpler but you don't get the automatic diagnostics; OTOH, `cmp-ok`'s saying `# expected: 5ā¤# matcher: 'infix:<==>'ā¤# got: 4` is kinda | 17:20 | |||||||||||||||||||||||||||||||||||||
crufty itself | |||||||||||||||||||||||||||||||||||||||
s:s/cases to think/cases (of Numerics) to think/ | 17:21 | ||||||||||||||||||||||||||||||||||||||
And that question was meant for #perl6, apologies, I'm on a narrower-than-usual screen and didn't notice the ambiguity in my channel sidebar | 17:23 | ||||||||||||||||||||||||||||||||||||||
17:44
epony left
|
|||||||||||||||||||||||||||||||||||||||
jnthn | MasterDuke++ # NQP int changes | 17:49 | |||||||||||||||||||||||||||||||||||||
timotimo | TreyHarris: there's is-deeply, which is often "the right thing" where you mean "is-equal" | 18:02 | |||||||||||||||||||||||||||||||||||||
18:08
patrickb joined
|
|||||||||||||||||||||||||||||||||||||||
TimToady | well, a bare eqv oughta do that | 18:09 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo/master: 5 commits pushed by (Daniel Green)++, MasterDuke17++ | 18:23 | |||||||||||||||||||||||||||||||||||||
18:23
epony joined
|
|||||||||||||||||||||||||||||||||||||||
ugexe | MasterDuke: it must be an issue with your PR | 18:38 | |||||||||||||||||||||||||||||||||||||
MasterDuke: its never shown up on a appveyor run before anyway. But I ran that test locally on windows using moar-blead and it passes | 18:52 | ||||||||||||||||||||||||||||||||||||||
19:02
brrt joined
|
|||||||||||||||||||||||||||||||||||||||
timotimo | i'm glad to put MasterDuke int charge of that | 19:03 | |||||||||||||||||||||||||||||||||||||
19:13
lizmat joined
19:22
brrt left
19:28
brrt joined
|
|||||||||||||||||||||||||||||||||||||||
timotimo | TimToady: i've got to say i didn't actually take an actionable idea from our discussion on NFA enhancements for future pass-fate-down-iness | 19:29 | |||||||||||||||||||||||||||||||||||||
TimToady | a way to access the current Match (or an attribute of it) from within the NFA would help | 19:30 | |||||||||||||||||||||||||||||||||||||
timotimo | right. how did the suggestion sound to add to the nqp::nfarun op an argument that takes an array that info will be pushed into? | 19:31 | |||||||||||||||||||||||||||||||||||||
TimToady | that would help, though long-term we might find it a bottleneck if the NFA wants to do other things with the current match | 19:33 | |||||||||||||||||||||||||||||||||||||
don't have anything particular in mind though | |||||||||||||||||||||||||||||||||||||||
maybe caches of previous dispatches | |||||||||||||||||||||||||||||||||||||||
timotimo | that'd be something hung off of the NFA itself, or maybe thread-local (or maybe using atomic ops)? | 19:34 | |||||||||||||||||||||||||||||||||||||
TimToady | mebbe | 19:35 | |||||||||||||||||||||||||||||||||||||
the way the NFA works, we probably need to push on multiple arrays depending on how 'sub' the sub-NFA is, unless we go with unique fates | 19:36 | ||||||||||||||||||||||||||||||||||||||
but an array of arrays could be passed in as an array | |||||||||||||||||||||||||||||||||||||||
timotimo | right | ||||||||||||||||||||||||||||||||||||||
that'll "just"ā¢ make the addressing more interesting in the NFA "code" | |||||||||||||||||||||||||||||||||||||||
TimToady | I'm kinda leaning back toward unique fates to avoid rewriting sub-NFAs, in which case a single list works, but we might need to copy sub-NFAs in anyway until we figure out how to tail-ref things for the NFA | 19:38 | |||||||||||||||||||||||||||||||||||||
timotimo | allow me to swing back towards a "simplest thing that can possibly already work" approach so i can actually do something :P | 19:39 | |||||||||||||||||||||||||||||||||||||
TimToady is fine with that | 19:40 | ||||||||||||||||||||||||||||||||||||||
esp since the simplest thing that can possibly work is only barely within current branepower limits... | |||||||||||||||||||||||||||||||||||||||
19:42
travis-ci joined
|
|||||||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build errored. MasterDuke17 'Merge pull request #2670 from MasterDuke17/default_nqp_vars_and_ops_to_int_instead_of_num | 19:42 | |||||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/554367871 github.com/rakudo/rakudo/compare/d...9a3b9f3e1e | |||||||||||||||||||||||||||||||||||||||
19:42
travis-ci left
|
|||||||||||||||||||||||||||||||||||||||
timotimo | will the values that get pushed onto that array be statically put into the nfa op stream? | 19:43 | |||||||||||||||||||||||||||||||||||||
hm, but there's also the question which array in the array-of-arrays gets its data | 19:44 | ||||||||||||||||||||||||||||||||||||||
TimToady | well, it's all relative to which proto is going to pay attention to which sub-array | 19:45 | |||||||||||||||||||||||||||||||||||||
or which range of fates, with the uniqueness approach | |||||||||||||||||||||||||||||||||||||||
with the array-of-arrays approach, you merely have to check or guarantee that the right array goes to the right proto; with the unique approach, you probably need both high and low guards before the switch to avoid grief, unless something can be guaranteed monotonic, in which case one guard is probably sufficient | 19:49 | ||||||||||||||||||||||||||||||||||||||
certainly one would want to avoid reallocating arrays of arrays on every token match somehow | |||||||||||||||||||||||||||||||||||||||
TimToady doesn't recall whether STD used guards at all, or just asssumed everything would proceed in lockstep | 19:51 | ||||||||||||||||||||||||||||||||||||||
to the first approximation, you only need one fate per level, if the NFA got it right | 19:53 | ||||||||||||||||||||||||||||||||||||||
but there are places in the grammar these days that probably rely on backtracking to earlier fates when the "longer" one is vetoed | 19:54 | ||||||||||||||||||||||||||||||||||||||
timotimo | not sure what to guard against; position in the target string? | ||||||||||||||||||||||||||||||||||||||
yeah, i bet | |||||||||||||||||||||||||||||||||||||||
TimToady | that is needed to avoid combinitoric explosion, yes | 19:55 | |||||||||||||||||||||||||||||||||||||
masak | I realize I probably need to study these array-of-arrays and unique approaches. is STD still the state-of-the-art to read up on this? | ||||||||||||||||||||||||||||||||||||||
TimToady | if you start stacking fates for subsequent positions, you get 'kaboom' | ||||||||||||||||||||||||||||||||||||||
masak: well, I dunno, it was always pretty grotty even when it worked :) | 19:56 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | AlexDaniel: ci.appveyor.com/project/rakudo/rak...llLog=true is the job that had the reproducible test failure | ||||||||||||||||||||||||||||||||||||||
TimToady | given that it had to do backtracking by emulating lazy lists with closures of closures of closures.... | 19:57 | |||||||||||||||||||||||||||||||||||||
MasterDuke | all: the default-int merges pass a spectest (using MoarVM, i didn't try with any other backends), but i'd be lying if i thought i got everything 100% perfect | 20:00 | |||||||||||||||||||||||||||||||||||||
committable6 | MasterDuke, gist.github.com/0662ec44589049b408...a9d5299130 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | i'm hoping to be a little bit more available the next couple days than usual, so please ping me if anything comes up | ||||||||||||||||||||||||||||||||||||||
TimToady | oops, forgot to eat... & | 20:01 | |||||||||||||||||||||||||||||||||||||
20:05
travis-ci joined
|
|||||||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build failed. MasterDuke17 'Merge pull request #2670 from MasterDuke17/default_nqp_vars_and_ops_to_int_instead_of_num | 20:05 | |||||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/554367871 github.com/rakudo/rakudo/compare/d...9a3b9f3e1e | |||||||||||||||||||||||||||||||||||||||
20:05
travis-ci left
20:35
brrt left,
brrt joined
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | was kind of able to repro the t/04-nativecall/20-concurrent.t error. got a `MoarVM panic: Internal error: zeroed target thread ID in work pass` while running it in a loop with a spectest running in the background | 20:51 | |||||||||||||||||||||||||||||||||||||
ooo, now a segfault | 20:59 | ||||||||||||||||||||||||||||||||||||||
masak | TimToady: I'm looking to implement a mutable parser, in order to support `is parsed` in 007 | 21:06 | |||||||||||||||||||||||||||||||||||||
so the NFA needs to be recomputed at some points during the parse | 21:07 | ||||||||||||||||||||||||||||||||||||||
jnthn | masak: It's a similar case to introducing new operators, I guess? Or do you not handle that yet? | 21:19 | |||||||||||||||||||||||||||||||||||||
masak | yes, new operators are a special case, since it only hits the optable parser | 21:21 | |||||||||||||||||||||||||||||||||||||
I want to bring that to the whole grammar, including statements, terms, and other categories | 21:22 | ||||||||||||||||||||||||||||||||||||||
(and lexically scoped, of course, so the parser "pops" on parsing a block `}` and loses the added rules) | 21:23 | ||||||||||||||||||||||||||||||||||||||
timotimo | i find that optable | ||||||||||||||||||||||||||||||||||||||
masak | timotimo: I think a lot of people will :) | ||||||||||||||||||||||||||||||||||||||
it's a little bit of a relief to go from having my brain melt from thinking about macro hygiene to having it melt from thinking about mutable parsers instead | 21:24 | ||||||||||||||||||||||||||||||||||||||
jnthn | masak: In Rakudo that's largely handled by mixing in to the grammar type | 21:25 | |||||||||||||||||||||||||||||||||||||
And making sure it uses the correct language for the next statement | |||||||||||||||||||||||||||||||||||||||
MasterDuke | jnthn: does the backtrace in github.com/rakudo/rakudo/issues/3030 look at all useful? i'm running now with the jit disabled, but it hasn't triggered yet | 21:26 | |||||||||||||||||||||||||||||||||||||
masak | yeah, I think that's fine. but "mixing in" just an implementation detail here. right now when I'm playing around, my grammar is just a JSON-like data structure, and so "mixing in" would just mean adding more data into it (and be prepared to undo it later) | ||||||||||||||||||||||||||||||||||||||
is* | |||||||||||||||||||||||||||||||||||||||
'night, #perl6-dev | 21:27 | ||||||||||||||||||||||||||||||||||||||
timotimo | gnite masak | ||||||||||||||||||||||||||||||||||||||
jnthn | masak: Well, it's more that you just throw it away, since it's a `but` rather than a `does`. But of course, the immutability and easy impl strategy of "just copy everything" is why it's slow to add new operators in Rakudo :) | 21:28 | |||||||||||||||||||||||||||||||||||||
masak: Not really, though try with a small nursery and MVM_GC_DEBUG=1 to try and tease it out, and probably without JIT | |||||||||||||||||||||||||||||||||||||||
timotimo | i thought it's mostly the "optimize the NFA all over again" that is slow | 21:29 | |||||||||||||||||||||||||||||||||||||
jnthn | Well, calculate the NFA all over again too :) | 21:30 | |||||||||||||||||||||||||||||||||||||
MasterDuke | what size nursery do people use when debugging? | 21:31 | |||||||||||||||||||||||||||||||||||||
timotimo | true, merging all the substates and such | 21:32 | |||||||||||||||||||||||||||||||||||||
jnthn | MasterDuke: I typically go for somewhere in the 8KB-32KB region | 21:36 | |||||||||||||||||||||||||||||||||||||
MasterDuke | neither error has shown up again so far with jit disabled and MVM_GC_DEBUG=1, now adding in the nursery change | 21:39 | |||||||||||||||||||||||||||||||||||||
oh. `MoarVM panic: Must not GC when in the specializer/JIT` | |||||||||||||||||||||||||||||||||||||||
jnthn | Oh!! | 21:40 | |||||||||||||||||||||||||||||||||||||
Now, bp that panic and you'll have a *really* useful stack trace | |||||||||||||||||||||||||||||||||||||||
MasterDuke | lost that gdb session, but running again | 21:41 | |||||||||||||||||||||||||||||||||||||
MasterDuke doesn't remember how to get perl6-gdb-m to run in a loop, but stop and drop into the gdb shell if there's a non-normal exit | 21:43 | ||||||||||||||||||||||||||||||||||||||
MasterDuke is just hitting 'r' a lot right now | |||||||||||||||||||||||||||||||||||||||
jnthn | bp exit | 21:49 | |||||||||||||||||||||||||||||||||||||
commands | |||||||||||||||||||||||||||||||||||||||
r | |||||||||||||||||||||||||||||||||||||||
end | |||||||||||||||||||||||||||||||||||||||
set pagination off | |||||||||||||||||||||||||||||||||||||||
Or something like that; typed from memory | |||||||||||||||||||||||||||||||||||||||
If "commands" doesn't work, try "actions" :) | |||||||||||||||||||||||||||||||||||||||
MasterDuke | jnthn++ that seems to be working | 21:50 | |||||||||||||||||||||||||||||||||||||
jnthn: got a much more involved backtrace now, issue just updated | 21:57 | ||||||||||||||||||||||||||||||||||||||
Kaiepi | should rakudo include information about all the env variables that can be passed to it when you do `perl6 --help`, not just NQP_HOME/PERL6_HOME/whatever? | 22:00 | |||||||||||||||||||||||||||||||||||||
timotimo | like moar --help does? | ||||||||||||||||||||||||||||||||||||||
Geth | nqp: patzim++ created pull request #561: Support build with spaces in path |
||||||||||||||||||||||||||||||||||||||
Kaiepi | yes timotimo | ||||||||||||||||||||||||||||||||||||||
22:00
vrurg left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: patzim++ created pull request #3031: Spaces in path |
22:08 | |||||||||||||||||||||||||||||||||||||
patrickb | .tell vrurg I'd be grateful for testing on MacOS of these branches. There are changes and respective PRs in MoarVM, nqp-configure, nqp and rakudo. All necessary to get it to work. | 22:12 | |||||||||||||||||||||||||||||||||||||
yoleaux | patrickb: I'll pass your message to vrurg. | ||||||||||||||||||||||||||||||||||||||
patrickb | .tell vrurg No hurry, this is for post release anyways. | 22:13 | |||||||||||||||||||||||||||||||||||||
yoleaux | patrickb: I'll pass your message to vrurg. | ||||||||||||||||||||||||||||||||||||||
22:50
patrickb left
|
|||||||||||||||||||||||||||||||||||||||
ugexe | wonder if we should change our CI to build in a directory containing a space | 23:12 | |||||||||||||||||||||||||||||||||||||
so it doesn't regress later | 23:13 | ||||||||||||||||||||||||||||||||||||||
23:42
brrt left
|