Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes. Set by lizmat on 24 May 2021. |
|||
00:08
reportable6 left
00:10
reportable6 joined
03:35
ggoebel left
05:17
frost joined
06:08
reportable6 left
06:09
reportable6 joined
07:39
nativecallable6 left,
greppable6 left,
unicodable6 left,
benchable6 left,
shareable6 left,
statisfiable6 left,
bisectable6 left,
reportable6 left,
linkable6 left,
bloatable6 left,
coverable6 left,
notable6 left,
sourceable6 left,
committable6 left,
evalable6 left,
releasable6 left,
quotable6 left
07:40
coverable6 joined,
sourceable6 joined,
shareable6 joined,
statisfiable6 joined,
linkable6 joined,
reportable6 joined,
releasable6 joined,
greppable6 joined
07:41
notable6 joined,
bisectable6 joined,
unicodable6 joined,
benchable6 joined,
evalable6 joined
07:42
committable6 joined,
quotable6 joined,
bloatable6 joined,
nativecallable6 joined
|
|||
nine | releasable6: statisfiable6: | 08:42 | |
releasable6 | nine, I cannot recognize this command. See wiki for some examples: github.com/Raku/whateverable/wiki/Releasable | ||
nine | releasable6: status | ||
releasable6 | nine, Next release in ≈19 days and ≈10 hours. There are no known blockers. Changelog for this release was not started yet | ||
nine, Details: gist.github.com/f574a1b543f8a8bf95...886b0e39e2 | |||
Geth | MoarVM/master: 4 commits pushed by (Stefan Seifert)++, niner++ | 08:43 | |
Nicholas | good *, * | 08:50 | |
Geth | MoarVM: a3476e2869 | (Stefan Seifert)++ | 2 files Turn on C11 atomics by default It's been a while since these were enabled optionally and I've been using them for almost as long without any fault whatsoever. It's time we give them some more exposure. |
08:53 | |
Nicholas | oh, "may you live in interesting times" | ||
nine | Well, Linux distros will like this as it gets us rid of one more bundled dependency | 08:59 | |
The packages for openSUSE Tumbleweed already build with --has-libffi --has-libtommath --has-libuv and work just fine. | 09:00 | ||
09:07
linkable6 left,
evalable6 left,
evalable6 joined
09:09
linkable6 joined
09:37
bartolin left,
bartolin joined
10:48
ggoebel joined
10:54
frost left
|
|||
lizmat | nine: compilation seems slower since I bumped MoarVM... should it ? | 11:44 | |
nine | No. How much slower? | 11:46 | |
lizmat | finger in the air: up to 5% ? | 11:51 | |
11:52
sena_kun left
11:53
ggoebel left,
sena_kun joined
11:59
ggoebel joined
12:08
reportable6 left,
reportable6 joined
|
|||
nine | That would be ~ 1s for core.c parsing. Sounds like that's within noise | 12:09 | |
12:17
dogbert11 left
|
|||
lizmat | I also see it in spectest timing | 12:17 | |
afk for a few hours& | 12:20 | ||
in any case, it shouldn't be slower, right ? | 12:22 | ||
ugexe | well doing .mkdir is twice as slow than .e for the common case, and now that is happening during every path object creation | 12:27 | |
moon-child | users.cs.northwestern.edu/~robby/c...g-data.pdf | ||
ugexe | ...in CUR. which is still a lot | 12:28 | |
[Coke] | would it work to re-add the "once"? | 12:29 | |
and then still not bother calling .e then? | |||
jnthnwrthngtn | nine: Nice work on the package vars; left a couple of comments on the commit, but also t/12-rakuast/package.t has regressed, also spectest lost 28 fully passing test files. | 12:32 | |
(The latter by `make spectest` and then `RAKUDO_RAKUAST=1 make spectest | grep '\. ok' | wc -l`, which was 320 before and now 292 | 12:33 | ||
) | |||
12:33
frost joined
12:37
nebuchadnezzar joined
|
|||
nine | I'll try to get those declarations to work without making the Package do LexicalScope | 12:38 | |
It's kinda funny that packages and $?PACKAGE specifically are often used as examples in comments, when they were not actually implemented :) | 12:40 | ||
13:11
sena_kun left
|
|||
jnthnwrthngtn | Well, `$?PACKAGE` was already bound to GLOBAL in RakuAST::CompUnit, I believe | 13:13 | |
But yeah, any kind of nested package stuff hasn't really been done yet | |||
Well, it's getting done now thanks to you :) | 13:14 | ||
13:15
sena_kun joined
|
|||
nine | This stuff is complicated... Replacing PRODUCE-IMPLICIT-DECLARATIONS and direct QAST manipulation with an apply-implicit-block-semantics that calls $!body.add-generated-lexical-declaration, we get correct runtime behaviour, but at compile time it doesn't find the package's $?PACKAGE | 13:47 | |
14:24
ggoebel left
|
|||
nine | Ah, I'm actually so close... problem is just that QAST::Var(lexical $?PACKAGE :decl(static)) is generated right after the QAST::Op(bind) that looks up $?PACKAGE | 14:34 | |
And now its working :) | 14:48 | ||
jnthnwrthngtn: I wonder: do we actually need to lookup $?PACKAGE for initializing package scoped variables? It's used for $bar := $?PACKAGE.AT-KEY('$bar'). Seems to work just fine when I use a WVal for the meta-object and I guess that would be a little bit faster? | 14:50 | ||
lizmat | ugexe: good catch | 15:01 | |
TIL nqp::mkdir is pretty expensive | |||
15:04
frost left
|
|||
ugexe | src\moar.h(44): fatal error C1083: Cannot open include file: 'stdatomic.h': No such file or directory | 16:13 | |
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.EXE"' : return code '0x2' | |||
Stop. | |||
Stop. | 16:14 | ||
16:24
sena_kun left
|
|||
jnthnwrthngtn | nine: I think the WVal approach should work | 16:26 | |
16:30
sena_kun joined
|
|||
nine | done :) | 16:33 | |
18:07
reportable6 left
18:08
reportable6 joined
|
|||
nine | Would be so nice to just be able to use note(...) for debug output in the nodes | 18:30 | |
lizmat | what can't you ? | 18:34 | |
nine | They're part of the bootstrap. No settings available yet and NQP's setting is not in scope either | 18:39 | |
lizmat | hmmm | 18:41 | |
nqp::say() | |||
19:09
sena_kun left
|
|||
nine | Apparently I have a nack for breaking things. My "less hacky" commit broke class Foo { method foo() { 456 } }; which now gives "Package 'Foo' already has a method 'foo'". No idea how though. | 19:18 | |
Looks like the parser attaches the method multiple times which means that it will be added to the package multiple times. | 19:19 | ||
lizmat | existence check always returning true ? | ||
ah... yes, that would do it | |||
nine | Removing "is RakuAST::ImplicitBlockSemanticsProvider" from RakuAST::Package again unbreaks it. What the? | 19:22 | |
19:26
sena_kun joined
|
|||
nine | Aaah...it's the self.meta-object call in apply-implicit-block-semantics | 19:35 | |
Commit ae3b46ee51 fixes the package regression. | 19:44 | ||
Doesn't fix all the spectests though :/ commit 023ec833f gives me 277 ok, HEAD^ gives 246 and HEAD is at 254 | 20:00 | ||
20:00
linkable6 left
20:02
linkable6 joined
|