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.
01:10 vrurg_ joined, vrurg left, vrurg_ is now known as vrurg 01:47 ggoebel left 02:12 AlexDani` joined 02:16 AlexDaniel left
japhb Thank you to vrurg++ and the other folks fixing blockers; I've managed to complete my first full rebuild-and-install-everything runs in a good while. 05:48
06:09 AlexDani` is now known as AlexDaniel, AlexDaniel left, AlexDaniel joined 06:14 gfldex left 06:20 gfldex joined 06:48 [TuxCM] left 06:49 AlexDaniel left
lizmat Files=1275, Tests=108114, 206 wallclock secs (26.62 usr 7.36 sys + 2883.17 cusr 281.17 csys = 3198.32 CPU) 07:23
07:58 gfldex left 08:03 gfldex joined 08:10 Guest69029 is now known as masak
|Tux| Rakudo version 2019.03.1-635-g6c0235463 - MoarVM version 2019.05-87-ga601746d6
csv-ip5xs1.125 - 1.222
csv-ip5xs-2062.010 - 62.070
csv-parser22.710 - 23.694
csv-test-xs-200.428 - 0.444
test6.657 - 6.878
test-t1.733 - 1.742
test-t --race0.776 - 0.791
test-t-2028.693 - 29.115
test-t-20 --race8.882 - 8.907
08:24
08:25 [TuxCM] joined
|Tux| The beauty of using Unicode to print a bold comma: 08:39
m: 'say "\x[002c]\x[0327]\x[0326]"'
camelia WARNINGS for <tmp>:
Useless use of constant string "say \"\\x[002c]\\x[0327]\\x[0326]\"" in sink context (line 1)
|Tux| m: say "\x[002c]\x[0327]\x[0326]"
camelia ,̧̦
lizmat m: say "\x[002c]\x[0327]\x[0326]".uninames 08:45
camelia (COMMA COMBINING CEDILLA COMBINING COMMA BELOW)
jnthn morning, #perl6 o/ 09:11
yoleaux 14 Jun 2019 06:34Z <Xliff> jnthn: How often are the DLLs on gtk-dlls.p6c.org refreshed?
jnthn .tell Xliff I'm pretty sure I didn't put those there, so no idea; sorry 09:12
yoleaux jnthn: I'll pass your message to Xliff.
09:13 Tux__ joined 09:19 |Tux| joined 09:32 |Tux| left 09:33 |Tux| joined 09:34 |Tux| left 09:35 |Tux| joined, |Tux| left 09:37 AlexDaniel joined, |Tux| joined 09:38 |Tux| left
Guest77572 jnthn: did you have a good trip? 09:45
09:48 |Tux| joined
jnthn Guest77572: Yes, overall very good, just a bit too hot in the last couple of days. 09:54
Guest77572 I thought Scandinavia was cooler than Prague 09:55
jnthn It was; the last couple of days were spent in Germany :)
Guest77572 ah
releasable: next 10:10
releasable6 Guest77572, Next release in ≈8 hours. 6 blockers. 258 out of 635 commits logged (⚠ 3 warnings)
Guest77572, Details: gist.github.com/1337a2edefb7640ead...7a59941959
Guest77572 cool
10:15 AlexDaniel left 10:36 Tux__ left 11:34 dogbert11 joined 11:49 ggoebel joined 12:12 AlexDaniel joined 12:22 vrurg left 12:35 AlexDaniel left 12:41 vrurg joined 12:50 vrurg left 12:55 vrurg joined, ggoebel left 13:00 pmurias joined
pmurias I have a new use foo:from<node.js> problem 13:01
the problem is that Perl 6 can be split into compilation and runtime
so do we want to call the require at runtime and install a stub at compile time? 13:02
Geth nqp: 4c5ec49dd0 | (Paweł Murias)++ | 3 files
[js] Allow calling methods on a wrapped js function

Wrap js functions in a full class when passing them to Perl 6 land
13:03
13:16 vrurg left
pmurias does such a scheme seem sane? 13:24
Geth rakudo: 8abfbbc48e | (Paweł Murias)++ | src/core/Kernel.pm6
[js] Use nqp::uname on the js backend too
13:25
rakudo: 07f6ccc319 | (Paweł Murias)++ | src/vm/js/README.md
[js] Add a rakudo.js specific README for npm package
rakudo: 8871219911 | (Paweł Murias)++ | 3 files
[js] Add a basic form of use Foo:from<node.js>
13:30 vrurg joined 13:51 lucasb joined 14:00 [TuxCM] left
pmurias nine: I have the same problem that Inline-Perl5 has requiring node.js modules at compile time and loading them at runtime 14:00
vrurg pmurias: Funny, I have similar issue with require. 14:16
14:20 vrurg_ joined 14:22 vrurg left, vrurg_ is now known as vrurg 14:33 lizmat joined
pmurias vrurg: what's your issue? 14:37
vrurg I need require to install a stub at compile time to be replaced with actually imported type objects or constants at runtime. 14:38
pmurias vrurg: in pure Perl 6? 14:39
vrurg You mean moar backend? Yes, but it should eventually work anywhere.
The point is that require installs stubs already – but does so with QAST::Var. 14:40
That later gets optimized so when require tries to replace it with actual role it gets containerized into a Scalar and puned into a class. 14:41
pmurias vrurg: my problem is with the JavaScript node.js require() function loading js modules and compile time 14:42
vrurg: it's more a conceptual problem with js not having a compile time execution stages as Perl 6 does 14:43
vrurg pmurias: I see. But the requirement is similar: have a way to install an abstract stub to be replaced later with actual symbol at runtime. Right? 14:45
jnthn vrurg: "gets optimized" - by what, lexical to local lowering?
vrurg: If so, one can mark such things so that won't happen 14:46
vrurg jnthn: right, lexical to local.
jnthn: but installing a variable as a stub for class/role – is it a right thing to do?
jnthn Probably, because lexpads are immutable at runtime (well, the set of keys they have are) 14:50
And QAST::Var is the way you get such a slot
14:50 lizmat_ joined
jnthn So the only thing that's needed is to make sure l2l doesn't go and eat it 14:51
Probably also to make sure it's not being set up as a container viv slot
And that require is then binding into it, not assigning 14:52
14:52 lizmat left
vrurg jnthn: I would prefer a more abstract QAST::Sym which would later turn into anything non-variable. But I'm not an expert in QAST whatsoever. 14:52
pmurias jnthn: any thoughts how using modules from languages that load stuff at runtime should work?
vrurg Anyway. REQUIRE_IMPORT does bind – that's ok.
14:54 AlexDaniel joined
vrurg What does look wrong is Actions using declare_variable to install a stub. I would try working it out by adding a declare_symbol for sigilless entitites and which would take care of not allowing lowering. 14:54
pmurias jnthn: does a scheme where at compile time we return stub objects that are filled in a runtime seem sane? 14:55
jnthn vrurg: The number of node types in QAST is kept intentionally small; QAST::Var can mean a number of things. 14:57
Including things that don't actually vary
There's already a $*W.install_lexical_symbol that does what you want, I think :)
vrurg Ok. Hopefully, last question: what annotation to use to prevent lowering? They're not documented and gathering them across the source is time consuming. 14:58
jnthn So declare_symbol is probably not needed, or just sugar for that.
vrurg Somehow install_lexical_symbol didn't satisfy me. But I will re-check with the new knowledge. 14:59
jnthn vrurg: Looks like if you call install_lexical_symbol then the lowerer won't touch it
vrurg Ok, will work into this direction. Thanks! 15:00
jnthn It only wants to work on var, param, and contvar
And if you're using declare_variable you have contvar, so it noms it
I'm surprised it uses declare_variable in require; that sounds wrong to me.
vrurg jnthn: I agree, it is wrong. Though there is no hard if importing sigilled stuff. My plan is to choose between declare_variable/install_lexical_symbol depending on this. Hope it works. 15:03
TimToady jnthn: yesterday I was asked if it's possible to introspect the allocated size of a REPR from npq, and I didn't know the answer offhand...
vrurg Though this are is so much new to me that I'm certainly gonna make a lot of bumps. 15:04
s/are/area/
TimToady
.oO(first bump)
15:05
pmurias TimToady: it's not possible on js and jvm backends (not 100% about moar) 15:06
vrurg pmurias: a stub would report back an error then. But having it where the backend allows for it would be beneficial for profiling. 15:07
TimToady pmurias: thanks 15:09
pmurias vrurg: I haven't actually checked if something like that is present on MoarVM
vrurg pmurias: It is not yet. 15:10
pmurias afk& 15:11
jnthn vrurg: I think it would always be install_lexical_symbol, because we'd be binding the symbol exported by the module, not assigning it
vrurg: Unless we think that we should be able to assign to the symbol before the `require`...though that feels dubious
TimToady I don't see any reason to allow for that 15:12
[Coke] TimToady: I heard your name in a dream today. someone told me you wanted a vi installer that let you run a basic version immediately, then swapped that running copy out for a full featured version when done. My brain is weird.
vrurg jnthn: I got the point.
[Coke] Maybe it's sad that I couldn't get to TPC this year. :)
TimToady [Coke]: nice to know there's someone out there crazier than me :) 15:13
jnthn TimToady: I don't believe we provide a means for that during "normal" execution (though timotimo++ would probably have implemented it if anyone other than me has :)). The only way at present is the heap snapshot mechanism.
[Coke] HA!
timotimo oh greetings TimToady 15:15
yeah, i was thinking of allowing an op that gives you at the very least managed and unmanaged size of a given object 15:16
TimToady me is still trying to get his brane back from a number of different assaults, but feels he's improving 15:17
timotimo one way to get it to work, which is admittedly rather complicated, is to connect to your own running process via the debugger protocol :)
15:17 pmurias left
[Coke] Hope you feel better soon. 15:17
timotimo aye, i wish for a brief reload period :) 15:18
the debug protocol allows more direct access to an object's reference targetts, though. like, isn't there still something like accessing a p6opaque's attribute and causing it to initialize just by reading? or did we finally get rid of that completely? 15:20
15:36 lizmat_ left
Kaiepi i did some work to make it possible to build rakudo with the js vm but i got stuck at the very end on the part where it compiles CORE.setting.x because node kept running out of memory 15:40
anyone know how to fix that?
vrurg Kaiepi: try catching pmurias 15:47
jnthn TimToady: Best wishes; glad you're feeling improvement and hope it continues that way. 15:52
I'm aware there's lots of problem-solving tickets assigned to me (they piled up nicely while I doing a work trip, and some vacation); will try and pick those off in the coming days. 15:53
AlexDaniel jnthn: maybe it's better to do it this way, actually 16:13
so that you see multiple problems at the same time
jnthn: some time ago I asked why we have rakudo and moar orgs separately. Thoughts?
jnthn: I don't see any advantage but I do see that it's impossible to move tickets from rakudo to problem-solving 16:14
AlexDaniel: sounds like something you should create a ticket for! 16:16
rba is asking myself if there are devs with multiple cores, ahm personalities 16:20
AlexDaniel jnthn: github.com/perl6/problem-solving/issues/46
rba: oh that'd be great for multitasking. As far as I know I have only one core, if not less
rba AlexDaniel+++ 16:22
Geth ¦ problem-solving: AlexDaniel self-assigned Moving tickets between rakudo and problem-solving repos is impossible github.com/perl6/problem-solving/issues/46
Kaiepi rba, i may 16:26
not entirely sure
AlexDaniel
.oO(two developers for the price of one)
16:29
jnthn Hmm, did the location that perl6.moarvm is installed to change at some point? 16:32
Seems some share => lib change, or vice versa? 16:33
16:53 benchable6 joined 16:55 greppable6 joined, reportable6 joined, ChanServ sets mode: +v reportable6 16:56 TreyHarris joined 16:57 nativecallable6 joined, ChanServ sets mode: +v nativecallable6, squashable6 joined
vrurg jnthn: I gues it did. patrickb separated nqp and rakudo installs. 17:02
17:17 vrurg left 17:31 vrurg joined
jnthn dinner & 17:37
TreyHarris Could I have contributor access to rakudo on GitHub? I wanted to modify a few tickets 17:43
AlexDaniel TreyHarris: sure, there: github.com/rakudo/rakudo/invitations 17:46
TreyHarris: though for committing significant chunks to rakudo you'll need to sign a CLA and stuff, but all the other minor things you can already do now 17:47
TreyHarris AlexDaniel: I already do pullreqs for any large changes in perl6 org (though someone always reminds me I don't have to when I do ;-) 17:49
AlexDaniel TreyHarris: if you need me to raise Write privs to Admin let me know 17:55
I guess some useful issue tracker features are admin only 17:56
TreyHarris AlexDaniel: It's okay for what I wanted--I just marked a duplicate. Is there a convention on whether to close dupes or keep them open? 17:57
AlexDaniel TreyHarris: I typically close the old one
TreyHarris k. Thanks!
AlexDaniel if the new one has better info, of course, and that's usually the case 17:58
TreyHarris Well, the new one is mine, so of course it does ;-)
I asked a question on #perl6 last night nobody answered, so I thought I'd try again here... is there a package on CPAN or GitHub that shows good use of inline POD to self-document all the methods, attributes, and arguments of a class? 18:00
Sorry, not "is there", but "would you recommend one to look at"?
There's an entirely undocumented library I'm using and I thought I might as well document it as I'm learning it, but I want to do it right 18:01
AlexDaniel TreyHarris: yeah, I guess that library is a good example, just check it in like two weeks after your PRs are merged :) 18:02
TreyHarris AlexDaniel: what library?
It annoys me to no end when someone sends me a pull req for a docfix that doesn't use the correct doc syntax, whatever the language, so I don't want to be That Guy 18:03
AlexDaniel TreyHarris: it's a joke, I'm saying we'll have a package with good example of POD6 usage once *you* add the docs to whatever library you're trying to use :) 18:04
TreyHarris AlexDaniel: oh, I get it. heh. p6doc doesn't seem to work correctly in a lot of cases anyway, so I'm not sure how I'll know, but I'll give it the old college try.
AlexDaniel greppable6: =head2 18:05
hellooo?
greppable6 AlexDaniel, 9052 lines, 390 modules: gist.github.com/6dc650316070473937...0710e03f86 18:06
AlexDaniel TreyHarris: ↑ seems to be a list of documented modules!
tobs fwiw, I was avoiding #| and #= so far and made the headings and signatures myself. #|«» and #=«» sure are nice but I wasn't content with how whatever mi6 used then rendered them, iirc 18:07
(my example would be github.com/taboege/p6-OEIS/blob/ma.../OEIS.pm6) 18:08
TreyHarris This is (one example of) what I got when I cleared out my p6docs and tried to rebuild them: gist.github.com/treyharris/bf75917...1df7332899
And `p6doc list` ends with a ton of "sub whatever" output, but you can't look up the items containing a space AFAICT 18:09
Yikes, even more `method whatever` lines--almost 800. 18:11
oh... that's what p6doc -f is for, and you leave out the "sub " or "method " bit. hrm. that was a bit unclear 18:13
still don't know what's going on with the `p6doc Str` example I gist'ed, though... 18:16
Ah, looks like Str is broken, as `p6doc -f uniparse` dies the same way 18:18
19:25 vrurg left 19:46 vrurg joined 19:51 ggoebel joined 20:20 lucasb left 20:28 lizmat joined 20:52 lizmat left 21:41 go|dfish joined
Geth rakudo: vrurg++ created pull request #3005:
Make require import any kind of symbols correctly
21:44
roast: vrurg++ created pull request #554:
Tests for rakudo/rakudo#3005
21:48
synopsebot_ RAKUDO#3005 [open]: github.com/rakudo/rakudo/pull/3005 Make require import any kind of symbols correctly
21:59 pmurias joined
pmurias Kaiepi: ping 21:59
Kaiepi: re building rakudo.js when changing the build system did you pass to node the option that increases the memory limit
Kaiepi: --max-old-space-size=8192 22:00
Kaiepi i tried that pmurias but i think it was set too low 22:02
pmurias Kaiepi: maybe, what did you change so that you get the out of memory limit? 22:08
Kaiepi nothing 22:09
at least on the part that makes it run out of memory
pmurias Kaiepi: so you are just building rakudo HEAD and it runs out of memory? 22:11
Kaiepi HEAD from 2 weeks ago at least
pmurias I sometimes had that error when I had too many tabs open in Chrome and it was eating too much memory for rakudo.js to build 22:13
22:14 AlexDaniel left
pmurias Kaiepi: I built HEAD rakudo.js (with head NQP) on my machine today 22:14
Kaiepi any changes in the past couple weeks? 22:15
Geth rakudo: 9dca33b620 | (Vadim Belman)++ | src/Perl6/Actions.nqp
Make require import any kind of symbols correctly

Prevent extra containerization of type objects and constants.
rakudo/rakudo#2983
22:16
synopsebot_ RAKUDO#2983 [open]: github.com/rakudo/rakudo/issues/2983 [regression] Cannot mix in non-composable type Any into object
Geth rakudo: 63b9e1fe37 | (Vadim Belman)++ (committed using GitHub Web editor) | src/Perl6/Actions.nqp
Merge pull request #3005 from vrurg/rakudo_2983

Make require import any kind of symbols correctly
roast: 708b2d3a46 | (Vadim Belman)++ | 2 files
Tests for rakudo/rakudo#3005

Testing if type objects and constants are imported as is while scalars preserve their container.
rakudo/rakudo#2983
synopsebot_ RAKUDO#3005 [closed]: github.com/rakudo/rakudo/pull/3005 Make require import any kind of symbols correctly
roast: b24d9400ef | (Vadim Belman)++ (committed using GitHub Web editor) | 2 files
Merge pull request #554 from vrurg/rakudo_2983

Tests for rakudo/rakudo#3005
pmurias Kaiepi: hmm, I don't think anything that should affect memory usage
pmurias Kaiepi: I updated the deps to onces that work on newer nodes 22:17
Kaiepi what versions are you talking about
i'm running 10.something
pmurias v12.3.1
that's what I built on today 22:19
Kaiepi: what os are you using?
Kaiepi openbsd 6.5
current
pmurias I haven't tried it on anything bsd maybe it's just a question of a bigger memory limit being used there 22:20
* being needed 22:21
22:37 pmurias left 22:44 vrurg left 22:47 ggoebel left 22:48 vrurg joined 22:50 vrurg left 22:56 lizmat joined 23:10 a3f left 23:22 a3f joined