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:00 reportable6 left 00:01 reportable6 joined, ChanServ sets mode: +v reportable6
Geth rakudo: ribbon-otter++ created pull request #3127:
Fix misleading paragraph in readme.
00:35
vrurg I guess github.com/perl6/6.d-prep/issues/10 was implemented at some point, wasn't it? 01:06
01:39 fake_space_whale joined 03:45 fake_space_whale left 05:15 Xliff joined
Xliff \o 05:15
Can I use here docs in a hash initializer? 05:16
Also where are the docs for $=pod? 05:20
06:00 reportable6 left 06:04 reportable6 joined, ChanServ sets mode: +v reportable6 06:52 Xliff left
Geth rakudo: 23cfe1c697 | (Stefan Seifert)++ | src/core/CompUnit/PrecompilationRepository.pm6
Don't recompile a dependency if another process did it for us

When a direct dependency of the current compilation unit is outdated by a change of one of the transitive dependencies, after taking the lock for the precomp store, we now check if the dependency became up-to-date while we were waiting for a lock. It may be that another process did the work for us. ... (5 more lines)
07:20
nine hopes that this makes lizmat happy :)
MasterDuke i wonder if that'll help Xliff, he has some crazy long compile times for some of his very inter-related modules 07:22
09:33 [Tux] left 09:48 [Tux] joined 09:59 chloekek joined 10:07 [Tux] left 10:20 [Tux] joined 10:26 fake_space_whale joined
[Tux] New kernel. OS updates to openSUSE 15.1. Timings are now running 10:27
10:28 Kaiepi left 10:29 Kaiepi joined
[Tux] Rakudo version 2019.07.1-172-g23cfe1c69 - MoarVM version 2019.07.1-75-g7d23bd266
csv-ip5xs0.715 - 0.749
csv-ip5xs-205.009 - 5.104
csv-parser22.394 - 22.553
csv-test-xs-200.434 - 0.446
test6.944 - 7.100
test-t1.703 - 1.725
test-t --race0.786 - 0.807
test-t-2029.734 - 29.765
test-t-20 --race9.101 - 9.405
10:43
timotimo MasterDuke: i think it'll only help if you run the precompilation in parallel, which iiuc wasn't the case so far 11:44
MasterDuke timotimo: oh, this was only a preparatory commit? so that precomp can be made parallelized? 11:46
timotimo welllllllll 11:47
parallelized precomp is a tough problem
but if the dev kicks off multiple precomps at the same time, and each starts at a different point, this commit will make sure no duplicate work happens 11:48
11:52 chloekek left 12:00 reportable6 left 12:05 reportable6 joined
AlexDaniel that should speed up toaster 12:05
even if we don't use it anymore :)
timotimo blin doesn't profit because it makes everything completely seperate anyway? 12:17
AlexDaniel well, it might profit a little bit 12:37
when is the first prepcomp happening?
not during installation, right?
timotimo dunno if zef or rakudo do that 12:38
AlexDaniel so if you get to install two modules at the same time that have the same dependency, then it's potentially one precomp less?
timotimo by module do you mean "a thing that has a META6 file" or "a file"? 12:39
12:44 Ven`` joined
AlexDaniel a thing that has a META6 file 12:46
12:53 chloekek joined
timotimo in that case, yes. but doesn't installing first do that stuff in an isolated location and copies it to the system afterwards? 12:55
13:00 Kaiepi left, Kaiepi joined
AlexDaniel timotimo: I mean, that's the weird thing, yeah. So if you're installing something, then you normally run tests, so of course everything should be precomped, right? But then normally I still have to wait extra on the first run… so either there's something kinda wrong, or I'm misremembering things 13:02
13:03 Kaiepi left, Kaiepi joined
timotimo you mean that from the perspective of an end-user, right? 13:04
AlexDaniel do you know a perspective in which that'd be alright? 13:05
:)
timotimo the perspective of the implementor who has had a little too much torture recently :) 13:06
13:09 pamplemousse joined 13:32 tellable6 joined, ChanServ sets mode: +v tellable6 13:35 lizmat joined
AlexDaniel alright, well, I don't know if it works or not 13:44
but there we go :)
.seen jnthn
tellable6 AlexDaniel, I saw jnthn 2019-07-27T23:35:45Z in #moarvm: <jnthn> And I've certainly got no idea what to do about it if it is to blame without having a much closer look
13:48 evalable6 left 13:49 evalable6 joined
nine Precompilation does happen at installation time. Zef however runs tests first so that will cause compilation, too. My commit does not change anything for installation as that will precompile in any case but only the modules in the diat (dependenciea will already have been compiles) 14:02
If the first run also triggers compilation (and not juat the much faster re-checking of dependencies) there's a bug that needs fixing 14:03
14:04 Ven`` left
timotimo this could have good implications for when you run a test suite where not every file uses all module files 14:04
and you run tests in parallel
nine Zef could get rid of the double compilation btw by way of the staging rwpo but that'd need a differwnt logic for installation. That would have been the better approach from the start though 14:05
Yes, parallel tests is what my commit fixes
timotimo today, will i finally work up the courage to look into why the moar-ha spits out some garbage results with my last test heap dump? 14:07
pamplemousse nine: I was wondering if you knew how/where the manifest file for modules that lists out all of the subcomponents and their locations is generated? 14:10
nine pamplemousse: there's some script in the ecosystem repo 14:14
I think
Geth nqp/self-contained-executable: 4 commits pushed by (Madeleine Goebel)++
14:17 Ven`` joined 14:22 lucasb joined
jdv79 the whole pre-comp while deving is still kinda slow:( 14:35
would it ever be possible, in theory, to not have to recompile all dependents? 14:37
i guess just not needing pre-comp (compile actually being fast) would probably be more valuable though in practice
14:40 chloekek left
pamplemousse nine: Sorry, I phrased that in an unclear way. I was wondering if you know where the files that wind up in /share/perl6/site/dist are generated 14:41
14:49 evalable6 left 14:52 evalable6 joined, ChanServ sets mode: +v evalable6
pamplemousse If I run perl6 -I./lib ./test.p6, it looks likes it creates a .precomp directory in the lib directory that contains the modules used by test.p6. If I run the exact same command a second time, will it execute using that precompiled bytecode? 15:15
15:16 ExtraCrispy joined, ExtraCrispy left
timotimo it should 15:19
pamplemousse Nifty 15:22
15:52 evalable6 left 15:56 evalable6 joined, ChanServ sets mode: +v evalable6
nine pamplemousse: ah those are generated by CompUnit::Repository::Installation.install 16:08
pamplemousse Thanks! 16:09
16:11 dogbert17 joined 16:15 Ven`` left 16:56 evalable6 left 16:59 evalable6 joined, ChanServ sets mode: +v evalable6
AlexDaniel m: say 42 17:43
evalable6 42
AlexDaniel ?? 17:44
I don't get it?
why is camelia not responding, and how does evalable6 know that it needs to respond?
ahhh
ok I see…
17:45 camelia left 17:47 camelia joined
camelia 42 17:48
17:48 ChanServ sets mode: +v camelia 18:00 reportable6 left 18:03 reportable6 joined
AlexDaniel m: say 42 18:03
camelia 42
AlexDaniel hmm 18:04
m: say 42 18:36
camelia 42
18:36 evalable6 left 18:37 evalable6 joined 18:55 ufobat joined
AlexDaniel m: say 42 18:56
evalable6 42
camelia 42
18:56 evalable6 left
bartolin vrurg: do you have an idea, maybe, why stubbing Rakudo::Internals::HyperWorkBatch makes the JVM backend die with a NullPointerException when compiling CORE.d.setting? github.com/rakudo/rakudo/blob/23cf...ue.pm6#L13 18:57
vrurg: it builds without that line. (moar also seems to build fine without that line -- do you remember the exact reason, why you added it? 18:58
MasterDuke i'm i the only one who is getting consistent fails in t/spec/S07-hyperrace/basics.t? 19:10
oh. ha. forgot i had unfudged a test 19:11
Geth rakudo: aaec2cfe3e | usev6++ | tools/templates/jvm/Makefile.in
Compile CORE.e.setting on the JVM backend, too

Cargo-culted from tools/templates/moar/Makefile.in
19:12
MasterDuke that's why i got distracted about putting a lock in sprintf
Geth problem-solving/path-to-raku: c5cb2c97fe | (Elizabeth Mattijsen)++ | solutions/language/PATH-TO-RAKU.md
Add mention of $*PERL and Perl class
19:44
20:15 ufobat left 20:33 leont joined 20:40 Kaiepi left 20:47 Kaiepi joined 20:48 Kaypie joined
lucasb ^^ In addition to that, also environment variables starting with PERL6_* and installation filesystem paths containing "perl6" 20:55
so there'll be env vars starting with both RAKU_* and RAKUDO_* 20:56
and the class Raku, and package/namespace Rakudo:: 20:57
Maybe the only paths are "install/share/perl6" and ~/.perl6 21:02
21:10 pamplemousse left
AlexDaniel lucasb: leave a comment? 21:10
lucasb I thought it was locked but I see now it's open for me :) 21:31
AlexDaniel it is, but anyone who wants to say something useful gets a pass :) 21:47
22:03 fake_space_whale left
AlexDaniel coverable6: say 42 22:08
coverable6 AlexDaniel, Seems like you forgot to specify a revision (will use “HEAD” instead of “say”)
AlexDaniel, No! It wasn't me! It was the one-armed man! Backtrace: gist.github.com/9328b0e6f31f7d9628...af349e342c
AlexDaniel huh weird 22:09
links no longer work
coverable6: HEAD say 42 22:11
tellable6 AlexDaniel, I'll pass your message to coverable6
AlexDaniel ok that was very wrong… 22:12
coverable6 AlexDaniel, ¦HEAD(aaec2cf): «42␤»
tellable6 2019-08-18T22:11:59Z #perl6-dev <AlexDaniel> coverable6: HEAD say 42
AlexDaniel what???
22:13 epony left
AlexDaniel … nvm… 22:15
kawaii did you break it
22:19 coverable6 left 22:22 coverable6 joined 22:39 epony joined 22:48 coverable6 left 22:55 coverable6 joined, ChanServ sets mode: +v coverable6 22:57 coverable6 left 22:59 coverable6 joined 23:00 coverable6 left 23:03 leont left 23:06 coverable6 joined 23:08 coverable6 left 23:12 coverable6 joined, ChanServ sets mode: +v coverable6, coverable6 left 23:13 coverable6 joined, ChanServ sets mode: +v coverable6 23:15 coverable6 left 23:17 coverable6 joined, ChanServ sets mode: +v coverable6 23:27 coverable6 left 23:28 coverable6 joined
AlexDaniel let's try again x) 23:28
coverable6: say 42
coverable6 AlexDaniel, Seems like you forgot to specify a revision (will use “HEAD” instead of “say”)
AlexDaniel, gist.github.com/f855746d638d858a3f...c8d6f1c60b 23:29
AlexDaniel that sorta works! 23:30
nobody is using it though :)
23:55 tellable6test joined
AlexDaniel . 23:56
tellable6test: AlexDaniel
tellable6test AlexDaniel, I saw AlexDaniel 2019-08-18T23:56:14Z in #perl6-dev: <AlexDaniel> .
23:56 tellable6test left