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:53 epony joined
Geth nqp: 9eb5f2549c | (Vadim Belman)++ | tools/build/gen-js-makefile.nqp
Fix wrong makefile variable name

M_RUNNER -> M_BUILD_RUNNER
01:13
01:14 sivoais joined 01:30 squashable6 left 01:33 squashable6 joined, ChanServ sets mode: +v squashable6
vrurg .tell pmurias Thanks for the link. Unfortunately, it's not relevant bacuse I always have the command line tools installed. Anyway, it builds in a Linux VM, I can work with this. 01:40
tellable6 vrurg, I'll pass your message to pmurias
vrurg .seen patrickb
tellable6 vrurg, I saw patrickb 2019-08-31T13:55:03Z in #moarvm: <patrickb> afk for a bit
vrurg .tell patrickb Could you, pls, review and test R#3166? 01:41
synopsebot R#3166 [open]: github.com/rakudo/rakudo/pull/3166 [WIP][build] [WIP] [HEADSUP] Extract common parts of backend makefiles into a common template
tellable6 vrurg, I'll pass your message to patrickb
vrurg Anybody else willing to give a try for the new MoarVM/JVM makefile templates is welcome to try the above PR. 01:43
.tell pmurias I have drafted makefile template for JS. You can check it out in R#3166. It doesn't work yet but perhaps you can help me with that. 03:14
synopsebot R#3166 [open]: github.com/rakudo/rakudo/pull/3166 [WIP][build] [WIP] [HEADSUP] Extract common parts of backend makefiles into a common template
tellable6 vrurg, I'll pass your message to pmurias
Geth ¦ problem-solving: fecundf assigned to jnthn Issue Clean interpolation for enumerated character classes github.com/perl6/problem-solving/issues/97 05:47
bartolin vrurg: maybe I've done something wrong but I wasn't able to build Rakudo (neither on MoarVM, nor on JVM) with your branch. I've to go now, but two things caught my eyes: 06:16
vrurg: 1) when M_SET_NQP_LIB is used there is no space after it: $(M_SET_NQP_LIB)$(M_RUN_PERL6) ... There is a trailing whitespace on the line where it is set, though: 'M_SET_NQP_LIB = NQP_LIB=blib ' 06:19
vrurg: 2) It looks like the prerequisites like Actions.nqp, Grammar.nqp, etc. are not compiled at all 06:21
vrurg: that's on FreeBSD 11.2-RELEASE-p4. I'll try to take another look later today. 06:23
08:16 chloekek joined 08:19 camelCaser left 08:22 pmurias joined
pmurias vrurg: I haven't encoutered that error before so it's hard for me to help (and the message is not helpfull at all) 08:26
tellable6 2019-09-04T01:40:36Z #perl6-dev <vrurg> pmurias Thanks for the link. Unfortunately, it's not relevant bacuse I always have the command line tools installed. Anyway, it builds in a Linux VM, I can work with this.
2019-09-04T03:14:39Z #perl6-dev <vrurg> pmurias I have drafted makefile template for JS. You can check it out in R#3166. It doesn't work yet but perhaps you can help me with that.
synopsebot R#3166 [open]: github.com/rakudo/rakudo/pull/3166 [WIP][build] [WIP] [HEADSUP] Extract common parts of backend makefiles into a common template
pmurias vrurg: looking at stuff online people have "solved" such errors by things like removing the ~/.node-gyp, node_modules and rebooting (?!) 08:29
Geth problem-solving/path-to-raku: 3021673634 | (Elizabeth Mattijsen)++ | solutions/language/PATH-TO-RAKU.md
Also mention "p6" in repo names
08:47
09:10 chloekek left 09:11 Xliff joined
Xliff jmerelo: paste.fedoraproject.org/paste/xJhT...6~-ybZ2mLg 09:17
tellable6 Xliff, I'll pass your message to jmerelo
09:18 titsuki left, Kaiepi left, Kaiepi joined 09:19 titsuki joined 09:23 squashable6 left 09:25 squashable6 joined, ChanServ sets mode: +v squashable6
Geth nqp: 1b0230a92d | (Paweł Murias)++ | tools/build/gen-js-makefile.nqp
[js] Fix preprocessing the qregex tests
09:53
pmurias any ideas why paste.debian.net/1098712/ this prints 1 10:12
I think it's a bug
I can't reproduce that on the rakudo level tho 10:14
moritz pmurias: I guess it's related to literal parsing and valdation 10:41
don't floats go up only to e+238? 10:42
10:42 pmurias left 10:53 nebuchadnezzar left, nebuchadnezzar joined 11:18 pmurias joined
pmurias moritz: you can print out that float 11:47
moritz: ok I figure it out 11:48
* figured
11:53 camelCaser joined 11:58 chloekek joined
pmurias how can I check in nqp tests if a backend is 32 or 64 bits? 12:11
in the old days it seemed we had ./nqp-p -e 'say(nqp::backendconfig(){"intvalsize"})' 12:12
which now seems to be only supported on the js backend
nine Apparently Perl6::Actions uses integer overflow to detect it: my int $?BITS := nqp::isgt_i(nqp::add_i(2147483648, 1), 0) ?? 64 !! 32; 12:27
moritz somebody needs to manically shout and scream "UNDEFINED BEHAIVOR" please :D 12:30
|Tux| maniacally shouts UNDEFINE BEHAVIOR 12:35
(D omitted on purpose)
nine Noooo....now we no longer know how to behave! 12:36
|Tux| I see no change :}
12:50 lucasb joined
Geth nqp: ba5c67be39 | (Paweł Murias)++ | src/vm/js/Compiler.nqp
[js] Fix bug cause by == now being nqp::iseq_i in NQP
12:58
nqp: 1100382840 | (Paweł Murias)++ | t/nqp/060-bigint.t
[js] Skip a 64bit test
|Tux| Rakudo version 2019.07.1-254-g17d036ad4 - MoarVM version 2019.07.1-176-g1b67a94cc
csv-ip5xs0.659 - 0.687
csv-ip5xs-204.875 - 5.268
csv-parser21.970 - 22.174
csv-test-xs-200.429 - 0.430
test6.761 - 6.999
test-t1.733 - 1.765
test-t --race0.787 - 0.789
test-t-2029.124 - 29.662
test-t-20 --race9.308 - 9.315
12:59
13:02 pamplemousse joined
pmurias moritz: is that UNDEFINED BEHAVIOR in NQP? 13:22
nine: maybe moving that into the nqp setting would make sense?
moritz pmurias: probably not, just carrying prejudices from C over :D 13:24
13:33 pmurias left, pmurias joined
vrurg pmurias: thanks for looking into it. But it seems that the only solution for gyp is python2 being the system default. :( 13:52
bartolin: thanks for testing! I was afraid that BSD would have its own opinion about the makefile. :) 13:53
pmurias vrurg: did using python2 as system default fix your second issue? 14:07
vrurg pmurias: aha. And it's the only way. npm config doesn't work – somewhere inside they're still using the default. 14:08
luckily, macports has very simple way of switching defaults. Not a big deal to do it just for a build.
pmurias they do claim that they are looking up python2 (instead of python) first 14:09
vrurg pmurias: BTW, is installing indo node_modules for JS is mandatory? Can't we use blib as other backends do?
macports doesn't install python2, they use full versions in names. Perhaps I shall symlink manually for it. 14:10
Ha, python2 is being ignored either. :D 14:13
pmurias vrurg: it's not technically mandatory, for npm releases I was mangling files so that they only had relative dependencies 14:14
vrurg: I'll think how we should migrate to using blib
vrurg pmurias: also, how deep directory structure would work? I mean, BOOTSTRAP is now BOOTSTRAP/v6<rev> 14:15
pmurias why do we have a deep directory structure in the first place? 14:16
vrurg because bootstrap is now provided for each CORE version separately and must be versionized. 14:17
pmurias I mean why not BOOTSTRAPv6<rev>? 14:18
vrurg To have things structured. There is also something about ModuleLoader, I think, but not really sure right now. 14:19
No, nothing in the moduleloader. Fake memory of mine. 14:20
pmurias vrurg: ok, I'll think about the blib stuff 14:37
vrurg: if we get all the build things js analogous to the other backends they won't get broken by build changes right? 14:38
vrurg pmurias: I would rather say "less chances to break, easier to fix". This is the purpose. 14:39
jnthn Current HEAD of everything seems to come with some very significant performance regressions compared to a month or so ago 14:41
pmurias vrurg: is "will get fixed by whoever is changing the build system doing the required tweaks" a realistic goal? ;)
jnthn: :(
vrurg pmurias: I think yes for most cases. There're still pretty much backend-specific stuff in corresponding templates, but at least everything is unified and looks alike. 14:43
jnthn heck, even an empty for range loop has become incredibly slower 14:45
vrurg jnthn: that reminds me... When I created separate BOOTSTRAP for each core, I bundled spesh-plugin with 6.c BOOTSTRAP only. Two days ago it came to my mind that it might break optimization for other cores. 14:46
jnthn vrurg: The things it registers are global, so as long as it gets loaded, it's fine 14:47
It's really odd, though, it seems like MoarVM doesn't even get logs
vrurg jnthn: Ok, that was my hope.
vrurg is afk. will follow later today. 14:48
15:03 pmurias left 15:37 pamplemousse left 15:42 chloekek left
Geth rakudo: 9d1505d184 | (Jonathan Worthington)++ | 2 files
Fix exception propagation with race inside race

Or hyper inside of hyper. We should always propagate the exception, even if it is already wrapped. Fixes #3165.
15:49
synopsebot RAKUDO#3165 [closed]: github.com/rakudo/rakudo/issues/3165 Exception in nested race/hyper deadlocks
roast: 270dafd944 | (Jonathan Worthington)++ | S07-hyperrace/basics.t
Cover exception in race inside race

And the same with hyper.
Covers github.com/rakudo/rakudo/issues/3165
15:50
16:16 chloekek joined 16:54 chloekek left
Xliff Last call for thoughts: gist.github.com/Xliff/d426039cc162...f8067fe9fb 16:56
tellable6 2019-09-04T10:53:30Z #perl6 <jmerelo> Xliff thanks.
Xliff Otherwise I am sending this to problem-solving
m: ("MY_INSANE_ENUM => 2 << 33" ~~ /( <[_ A..Z]>+ ) ( [ '=' <m>?<d>+<L>? [ '<<' (<d>+) ]? ]? ) ','? \v*/).gist.say 17:02
evalable6 「MY_INSANE_ENUM」
0 => 「MY_INSANE_ENUM」
1 => 「」
17:02 travis-ci joined
travis-ci Rakudo build failed. Jonathan Worthington 'Fix exception propagation with race inside race 17:02
travis-ci.org/rakudo/rakudo/builds/580793471 github.com/rakudo/rakudo/compare/1...1505d1843f
17:02 travis-ci left
Xliff m: ("MY_INSANE_ENUM = 2 << 33" ~~ /( <[_ A..Z]>+ ) ( [ '=' <m>?<d>+<L>? [ '<<' (<d>+) ]? ]? ) ','? \v*/).gist.say 17:02
evalable6 「MY_INSANE_ENUM」
0 => 「MY_INSANE_ENUM」
1 => 「」
Xliff m: ("MY_INSANE_ENUM = 2 << 33" ~~ /( <[_ A..Z]>+ ) \s* ( [ '=' \s* <m>?<d>+<L>? \s* [ '<<' (<d>+) ]? ]? ) ','? \v*/).gist.say 17:03
evalable6 (exit code 1) No such method 'm' for invocant of type 'Match'
in block <unit> at /tmp/pRTSSY8tlU line 1
Xliff m: ("MY_INSANE_ENUM = 2 << 33" ~~ /( <[_ A..Z]>+ ) \s* ( [ '=' \s* '-'?[0..9]+'L'? \s* [ '<<' ([0..9]+) ]? ]? ) ','? \v*/).gist.say 17:04
evalable6 「MY_INSANE_ENUM 」
0 => 「MY_INSANE_ENUM」
1 => 「」
Xliff m: ("MY_INSANE_ENUM = 2 << 33" ~~ /( <[_ A..Z]>+ ) \s* ( [ '=' \s* '-'?[0..9]+'L'? \s* [ '<<' \s* ([0..9]+) ]? ]? ) ','? \v*/).gist.say
evalable6 「MY_INSANE_ENUM 」
0 => 「MY_INSANE_ENUM」
1 => 「」
Xliff m: my token d { <[0..9 x]> }; my token L { 'L' }; my rule enum_entry { /( <[_ A..Z]>+ ) ( [ '=' <m>?<d>+<L>? [ '<<' (<d>+) ]? ]? ) ','? \v*/ }; ("MY_INSANE_ENUM => 2 << 33" ~~ /<enum_entry>/).gist.say 17:05
evalable6 (exit code 1) 04===SORRY!04===
Unrecognized regex metacharacter / (must be q…
Xliff, Full output: gist.github.com/3f0a53d1816a1897a9...8f0dbb202f
Xliff m: my token d { <[0..9 x]> }; my token L { 'L' }; my rule enum_entry { ( <[_ A..Z]>+ ) ( [ '=' <m>?<d>+<L>? [ '<<' (<d>+) ]? ]? ) ','? \v* }; ("MY_INSANE_ENUM => 2 << 33" ~~ /<enum_entry>/).gist.say 17:06
evalable6 (exit code 1) No such method 'm' for invocant of type 'Match'
in regex enum_entry at /tmp/hpOg6eBQHA line 1
in block <unit> at /tmp/hpOg6eBQHA line 1
Xliff m: my token d { <[0..9 x]> }; my token m { '-' }; my token L { 'L' }; my rule enum_entry { ( <[_ A..Z]>+ ) ( [ '=' <m>?<d>+<L>? [ '<<' (<d>+) ]? ]? ) ','? \v* }; ("MY_INSANE_ENUM => 2 << 33" ~~ /<enum_entry>/).gist.say
evalable6 「MY_INSANE_ENUM 」
enum_entry => 「MY_INSANE_ENUM 」
0 => 「MY_INSANE_ENUM 」
1 => 「」
Xliff m: my token d { <[0..9 x]> }; my token m { '-' }; my token L { 'L' }; my rule enum_entry { ( <[_ A..Z]>+ ) ( [ '=' <m>?<d>+<L>? [ '<<' (<d>+) ]? ]? ) ','? \v* }; ("MY_INSANE_ENUM = 2 << 33" ~~ /<enum_entry>/).gist.say
evalable6 「MY_INSANE_ENUM = 2 << 33」
enum_entry => 「MY_INSANE_ENUM = 2 << 33」
0 => 「MY_INSANE_ENUM 」
1 => 「= 2 << 33」
d => 「2」
0 => 「33」
d => 「3」
d => 「3」
Xliff m: my token d { <[0..9 x]> }; my token m { '-' }; my token L { 'L' }; my rule enum_entry { ( <[_ A..Z]>+ ) ( [ '=' <m>?<d>+<L>? [ '<<' (<d>+) ]? ]? ) ','? \v* }; my $m = "MY_INSANE_ENUM = 2 << 33" ~~ /<enum_entry>/; $m[1][0].say 17:08
evalable6 Nil
Xliff m: my token d { <[0..9 x]> }; my token m { '-' }; my token L { 'L' }; my rule enum_entry { ( <[_ A..Z]>+ ) ( [ '=' <m>?<d>+<L>? [ '<<' (<d>+) ]? ]? ) ','? \v* }; my $m = "MY_INSANE_ENUM = 2 << 33" ~~ /<enum_entry>/; $m<enum_entry>[1][0].say
evalable6 「33」
d => 「3」
d => 「3」
17:14 Xliff left 18:28 chloekek joined 18:48 sortiz joined 19:35 vrurg left 19:37 vrurg joined 20:18 MasterDuke joined 20:20 pmurias joined 20:26 MasterDuke left 20:27 MasterDuke joined 20:35 Ven`` joined 20:52 Ven`` left 21:29 pmurias left 21:30 pmurias joined
Geth ¦ problem-solving: Xliff assigned to jnthn Issue Perl6 is missing the ability to store sub signatures for later use. Think Callbacks. github.com/perl6/problem-solving/issues/98 22:13
22:20 chloekek left 22:32 pmurias left 22:41 MasterDuke left 23:41 j3nnn1 left 23:55 vrurg left