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. |
|||||||||||||||||||||||||||||||||||||||
jnthn | :) | 00:03 | |||||||||||||||||||||||||||||||||||||
'night o/ | |||||||||||||||||||||||||||||||||||||||
01:05
AlexDani` joined
01:10
AlexDaniel left
03:11
squashable6 left
03:12
squashable6 joined
04:58
squashable6 left
05:04
squashable6 joined,
ChanServ sets mode: +v squashable6
07:20
patrickb joined
|
|||||||||||||||||||||||||||||||||||||||
[Tux] |
|
08:05 | |||||||||||||||||||||||||||||||||||||
08:22
MasterDuke left
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp: 82b33a6ff6 | (Paweł Murias)++ | 2 files [js] Implement nqp::bindlexdyn |
13:50 | |||||||||||||||||||||||||||||||||||||
nqp: f5ae4b4ff2 | (Paweł Murias)++ | t/nqp/021-contextual.t Test nqp::bindlexdyn |
|||||||||||||||||||||||||||||||||||||||
nqp: 0784193e2c | (Paweł Murias)++ | src/vm/js/nqp-runtime/runtime.js [js] Fix loadng stuff from paths that don't end up with / |
|||||||||||||||||||||||||||||||||||||||
14:19
pamplemousse joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDani` | releasable6: status | 14:20 | |||||||||||||||||||||||||||||||||||||
14:20
AlexDani` is now known as AlexDaniel,
AlexDaniel left,
AlexDaniel joined
|
|||||||||||||||||||||||||||||||||||||||
releasable6 | AlexDani`, Next release will happen when it's ready. 5 blockers. 262 out of 660 commits logged (⚠ 1 warnings) | 14:20 | |||||||||||||||||||||||||||||||||||||
AlexDani`, Details: gist.github.com/06665db60feace46fc...6008d39915 | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | m: (when %()<>:exists { ... }) | 14:21 | |||||||||||||||||||||||||||||||||||||
camelia | ===SORRY!=== internal problem: parser did not give circumfix an EXPR |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: 9135914^,9135914 (when %()<>:exists { ... }) | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦9135914^: «» ¦9135914: «===SORRY!===internal problem: parser did not give circumfix an EXPR «exit code = 1»» | ||||||||||||||||||||||||||||||||||||||
timotimo | The Promise returned from start is only kept once any obtained Supply of the output streams has delivered all of its events. This means one can assume that all output has been delivered by the time the Promise is kept, which overall greatly simplifies working with Proc::Async (without this behavior, we'd likely see a good number of buggy programs that lose output). However, if that Supply is never tapped, | 14:22 | |||||||||||||||||||||||||||||||||||||
then there's no way for that to happen, thus the hang. | |||||||||||||||||||||||||||||||||||||||
whoops, that was an accidental paste | 14:23 | ||||||||||||||||||||||||||||||||||||||
15:26
patrickb left
16:56
pamplemousse left
17:22
pamplemousse joined
17:36
lucasb joined
17:50
DrForr_ joined
17:53
DrForr left
|
|||||||||||||||||||||||||||||||||||||||
dogbert11 | timotimo, AlexDaniel: I updated R#3015 with a golf from the module source | 18:53 | |||||||||||||||||||||||||||||||||||||
synopsebot_ | R#3015 [open]: github.com/rakudo/rakudo/issues/3015 [BLOCKER][regression] Some issue in LMDB module | ||||||||||||||||||||||||||||||||||||||
timotimo | if that's what the module does, it's just wrong | 19:01 | |||||||||||||||||||||||||||||||||||||
dogbert11 | timotimo: that is what it's doing. One blocker down then :) | 19:22 | |||||||||||||||||||||||||||||||||||||
timotimo | it'll have to expect that to return 1 in the future | 19:24 | |||||||||||||||||||||||||||||||||||||
b2gills | vrurg: I wonder if your 6.e issue is similar to one I've come across. If you export a multi sub, it may end up exporting an alias to the proto sub. Which makes it so that exporting multi subs of the same name from two modules will export the subs into the first module rather than the lexical scope. | 19:35 | |||||||||||||||||||||||||||||||||||||
19:37
MasterDuke joined
|
|||||||||||||||||||||||||||||||||||||||
b2gills | { module Foo; multi foo is export ( 1 --> 'one' ){} } { module Bar; multi foo is export ( 2 --> 'two' ){} } { use Foo; use Bar; say Foo::foo(2); #`(two) } | 19:37 | |||||||||||||||||||||||||||||||||||||
vrurg | b2gills: no idea yet. So far all I got time for is to find out that what is exported from CORE.e ends up in SETTING:: and totally overrides what was exported from CORE.d. | ||||||||||||||||||||||||||||||||||||||
timotimo | it's not enough to set the setting to CORE.d when compiling the CORE.e setting? | 19:38 | |||||||||||||||||||||||||||||||||||||
b2gills | I tried implementing `multi COERCE` and this prevented me from making any progress. | ||||||||||||||||||||||||||||||||||||||
*(in a module) | 19:39 | ||||||||||||||||||||||||||||||||||||||
vrurg | timotimo: I'm too new to all this, will be doing my home work analysing the sources. So far debug informs me that ModuleLoader does fetch CORE.d when CORE.e is loaded. But when I define subs `for-d-only` and `for-e-only` in dorresponding settings I find the latter in SETTING::, not the former. | 19:41 | |||||||||||||||||||||||||||||||||||||
timotimo | hmm | 19:42 | |||||||||||||||||||||||||||||||||||||
is it only not in SETTING::, or is it also not reachable at all? | |||||||||||||||||||||||||||||||||||||||
vrurg | Not mentioning that I'd expect both to end up in CORE:: and be available to compilie time. | ||||||||||||||||||||||||||||||||||||||
timotimo | perhaps the way settings are stacked inside of each other, it's kind of like in SETTING::OUTER or something silly like that | ||||||||||||||||||||||||||||||||||||||
vrurg | timotimo: I'll check later when have time. | ||||||||||||||||||||||||||||||||||||||
b2gills | Maybe it isn't a one inside of another. Maybe `usev 6.d` just overwrites what is in `v6.c`. | 19:44 | |||||||||||||||||||||||||||||||||||||
vrurg | Brief look into how settings are loaded tells me that something like this is pretty much expected because when it loads CORE it sets outer_ctx key and then treats others like normal units; or, at least, it looks so to me. | ||||||||||||||||||||||||||||||||||||||
b2gills: 6.<letter> settings are supposed to override what's in earlier COREs. I.e. 6.e would override 6.d and both override 6.c. The bug you observe is probably what allows 6.d to work because it does not override normally but rather extends multi-dispatches. | 19:47 | ||||||||||||||||||||||||||||||||||||||
jnthn | vrurg: Yes, I think that's probably about the issue. | ||||||||||||||||||||||||||||||||||||||
vrurg | jnthn: Any docs, blog posts about this subject? Sources are great source of information, but they're much better if backed up by clearly formulated concepts. ;) | 19:51 | |||||||||||||||||||||||||||||||||||||
jnthn | vrurg: Not that I'm aware of, though maybe the nqp::ctx op and friends will be documented in the ops documentation | 20:04 | |||||||||||||||||||||||||||||||||||||
vrurg | jnthn: ok, thanks! | 20:06 | |||||||||||||||||||||||||||||||||||||
jnthn | iirc, the way that it works is that we iterate the set of symbols in the setting by obtaining it via nqp::ctx. The bug we have implies that we somehow get the 6.c one always in this context. We then use this information to set up a bunch of QAST::Var/.symbol entries with compile-time-known values. | 20:08 | |||||||||||||||||||||||||||||||||||||
And those are used by find_symbol to do the compile-time symbol resolution | |||||||||||||||||||||||||||||||||||||||
The reason anything works at all is because at runtime we do the lexical lookups and hit the correct setting "chain2 | |||||||||||||||||||||||||||||||||||||||
*chain | |||||||||||||||||||||||||||||||||||||||
There's also some trick in there to not *actually* resolve the values unless we have to as well | 20:09 | ||||||||||||||||||||||||||||||||||||||
In order to facilitate lazy deserialization | |||||||||||||||||||||||||||||||||||||||
A non-tiny bit of startup time goes on setting up the fake outer scope, and I've sometimes wondered if we couldn't avoid doing that at all, and have find_symbol look directly at the ctx or some such | 20:10 | ||||||||||||||||||||||||||||||||||||||
Not sure what else'd need to change though | 20:11 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | timotimo, dogbert11: OK! | 20:45 | |||||||||||||||||||||||||||||||||||||
we're down to 4 then | |||||||||||||||||||||||||||||||||||||||
one of them is just waiting for confirmation… | |||||||||||||||||||||||||||||||||||||||
Geth | ¦ problem-solving: AlexDaniel assigned to jnthn Issue read-bits/read-ubits on Int as well? github.com/perl6/problem-solving/issues/51 | 20:57 | |||||||||||||||||||||||||||||||||||||
21:12
pamplemousse left
21:13
pamplemousse joined
|
|||||||||||||||||||||||||||||||||||||||
vrurg | jnthn: thanx! That's a lot of info. | 21:35 | |||||||||||||||||||||||||||||||||||||
21:41
pamplemousse left
22:07
MasterDuke left
22:31
ggoebel left
22:45
|Tux| joined
23:29
rba left
|