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:12
lizmat joined,
p6bannerbot sets mode: +v lizmat
00:16
lizmat left
00:30
Slade3 joined
00:35
Slade3 left
02:04
dalek left
02:05
dalek joined,
ChanServ sets mode: +v dalek,
p6bannerbot sets mode: +v dalek
02:21
Ven` joined
02:22
p6bannerbot sets mode: +v Ven`
02:26
Ven` left
02:45
dalek left,
[Tux] left
02:47
[Tux] joined
02:48
p6bannerbot sets mode: +v [Tux]
02:54
dalek joined,
ChanServ sets mode: +v dalek
02:55
p6bannerbot sets mode: +v dalek
03:25
camelia left
03:27
nine left
03:32
MasterDuke left,
camelia joined
03:33
nine joined,
p6bannerbot sets mode: +v camelia
03:34
p6bannerbot sets mode: +v nine
03:55
lizmat joined,
p6bannerbot sets mode: +v lizmat
03:59
lizmat left
04:57
Ven` joined
04:58
p6bannerbot sets mode: +v Ven`
05:02
Ven` left
06:14
AlexDaniel left
06:21
Hoolootwo joined
06:26
Hoolootwo left
07:51
ilogger2 joined
07:52
p6bannerbot sets mode: +v ilogger2
08:00
Ven` joined
08:01
p6bannerbot sets mode: +v Ven`
08:09
robertle joined,
p6bannerbot sets mode: +v robertle
08:10
brrt joined,
p6bannerbot sets mode: +v brrt
08:20
Kaypie joined
08:21
p6bannerbot sets mode: +v Kaypie
08:22
lizmat joined,
p6bannerbot sets mode: +v lizmat
08:24
brrt left
08:26
brrt joined
08:27
p6bannerbot sets mode: +v brrt
|
|||||||||||||||||||||||||||||||
|Tux| |
|
08:49 | |||||||||||||||||||||||||||||
I do not have time to go into it, but this is worrysome: | 08:50 | ||||||||||||||||||||||||||||||
$ perl6 -Ilib csv-ip5xs.pl < /tmp/hello.csv | |||||||||||||||||||||||||||||||
Segmentation fault (core dumped) | |||||||||||||||||||||||||||||||
And I got a mail from OSSEC: | 08:51 | ||||||||||||||||||||||||||||||
Sep 5 10:26:21 tux kernel: traps: moar[9167] general protection ip:7fd3f07cbef6 sp:7fd3ef487860 error:0 in libmoar.so[7fd3f0555000+623000]traps: | |||||||||||||||||||||||||||||||
lizmat | segfault conformed # nine | 08:52 | |||||||||||||||||||||||||||||
09:45
brrt left
09:49
ExtraCrispy joined
09:50
p6bannerbot sets mode: +v ExtraCrispy,
AlexDaniel joined,
p6bannerbot sets mode: +v AlexDaniel
|
|||||||||||||||||||||||||||||||
lizmat | thought of the day: use "use precompilation" in a script to have it precompiled using CU:R:FileSystem semantics | 10:15 | |||||||||||||||||||||||||||||
10:27
Ven` left
|
|||||||||||||||||||||||||||||||
tbrowder__ | g’day #perl-dev | 10:29 | |||||||||||||||||||||||||||||
i have a question on a grammar construct in rakudo Perl6/Grammar.nqp | 10:30 | ||||||||||||||||||||||||||||||
what does this line do: “<pod_content=.pod_textcontent>**0..1”? | 10:33 | ||||||||||||||||||||||||||||||
it creates an array, but does it create exactly two elements? does it duplicate the pod_textcontent? | 10:34 | ||||||||||||||||||||||||||||||
Geth | rakudo: 874ec00225 | (Elizabeth Mattijsen)++ | src/core/IO/Handle.pm6 Make for IO::Handle.lines { } about 10% faster By losing the // and using nqp::ops instead |
10:44 | |||||||||||||||||||||||||||||
11:04
pmurias joined
11:05
p6bannerbot sets mode: +v pmurias
|
|||||||||||||||||||||||||||||||
Geth | nqp/master: 5 commits pushed by (Paweł Murias)++
|
11:05 | |||||||||||||||||||||||||||||
timotimo | tbrowder__: the . in front of pod_textcontent prevents it from being captured | 11:08 | |||||||||||||||||||||||||||||
tbrowder__ | ok, that’s right, and pod_content takes on the data from pod_textcontent? | 11:10 | |||||||||||||||||||||||||||||
timotimo | yep, <pod_content=.pod_textcontent> is basically the same as $<pod_content>=<.pod_textcontent> | 11:11 | |||||||||||||||||||||||||||||
tbrowder__ | what really confuses me is that pod_textcontent looks like it can take from 0 to inf number of text lines—i don’t see anything that stops it while in its block | 11:13 | |||||||||||||||||||||||||||||
timotimo | it requires the lines to start with the right amount of spaces | 11:15 | |||||||||||||||||||||||||||||
so any line with fewer spaces will endi t | 11:16 | ||||||||||||||||||||||||||||||
hm, that's not quite right i think, hold on. | |||||||||||||||||||||||||||||||
tbrowder__ | unless (the lightbulb may be turning on), the difference between abbrev and paragraph blocks (which can only have one para) and delimited blocks which can have more than one para... | ||||||||||||||||||||||||||||||
hm, the 1 in 0..1 is a little fuzzy... | 11:18 | ||||||||||||||||||||||||||||||
timotimo | probably a holdover from when ? and ** 0..1 were changed to their current behaviour | ||||||||||||||||||||||||||||||
with regards to returning Nil vs the value or returning an empty array or an array with the value in it | |||||||||||||||||||||||||||||||
tbrowder__ | good thought! | 11:19 | |||||||||||||||||||||||||||||
i’ll try replacing 0..1 with a ? | 11:20 | ||||||||||||||||||||||||||||||
11:20
travis-ci joined,
p6bannerbot sets mode: +v travis-ci
|
|||||||||||||||||||||||||||||||
travis-ci | NQP build failed. Paweł Murias '[js] Change to non-deprecated method of Buffer construction' | 11:20 | |||||||||||||||||||||||||||||
travis-ci.org/perl6/nqp/builds/424738550 github.com/perl6/nqp/compare/8846e...8a6d330881 | |||||||||||||||||||||||||||||||
11:20
travis-ci left
|
|||||||||||||||||||||||||||||||
tbrowder__ | timotimo: thanks so much—it helps to | 11:20 | |||||||||||||||||||||||||||||
talk to someone who is so thoughtful | 11:21 | ||||||||||||||||||||||||||||||
timotimo | oh, thank you for that compliment :) | ||||||||||||||||||||||||||||||
11:24
Ven` joined
11:25
p6bannerbot sets mode: +v Ven`
|
|||||||||||||||||||||||||||||||
lizmat | .ask jnthn do you have any thoughts on expanding the Encoding::Decoder role to include something like "consume-line-chars-chomp" which in its default implementation would call "consume-line-chars(:chomp)" ? | 11:25 | |||||||||||||||||||||||||||||
yoleaux | lizmat: I'll pass your message to jnthn. | ||||||||||||||||||||||||||||||
Geth | rakudo: d198c1b732 | (Elizabeth Mattijsen)++ | src/core/IO/Handle.pm6 Make my @a = IO::Handle.lines about 10% faster Lose the // in the loop. |
11:26 | |||||||||||||||||||||||||||||
11:28
Ven` left
|
|||||||||||||||||||||||||||||||
pmurias | lizmat: what would be the benefit of that? reduce the overhead of a named parameter? | 11:40 | |||||||||||||||||||||||||||||
lizmat | yeah, but I just figured out that it doesn't gain much, if anything | 11:41 | |||||||||||||||||||||||||||||
timotimo | no, more like "if the decoder can do it cheaply, skip the newline directly rather than chopping off after reading" | ||||||||||||||||||||||||||||||
lizmat | timotimo: the thing is that nqp::decodertakeline(self, $chomp, $eof); still takes the parameters | ||||||||||||||||||||||||||||||
it would only make sense if there were nqp versions of that without chomping / eof behaviour | |||||||||||||||||||||||||||||||
11:42
brrt joined
|
|||||||||||||||||||||||||||||||
lizmat | .tell jnthn scratch that last question | 11:42 | |||||||||||||||||||||||||||||
yoleaux | lizmat: I'll pass your message to jnthn. | ||||||||||||||||||||||||||||||
11:42
p6bannerbot sets mode: +v brrt
|
|||||||||||||||||||||||||||||||
brrt | i think the new irc log site is down :-( | 11:44 | |||||||||||||||||||||||||||||
timotimo | yup | ||||||||||||||||||||||||||||||
11:44
Ven` joined
|
|||||||||||||||||||||||||||||||
brrt | 😢 | 11:44 | |||||||||||||||||||||||||||||
11:44
p6bannerbot sets mode: +v Ven`
|
|||||||||||||||||||||||||||||||
brrt needs a terminal emulator that has emoji substitution | 11:45 | ||||||||||||||||||||||||||||||
lizmat | m: say "😢".uninames | 12:01 | |||||||||||||||||||||||||||||
camelia | (CRYING FACE) | ||||||||||||||||||||||||||||||
lizmat | .u 😢 | 12:02 | |||||||||||||||||||||||||||||
yoleaux | U+1F622 CRYING FACE [So] (😢) | ||||||||||||||||||||||||||||||
lizmat | I guess thats shorter :-) | ||||||||||||||||||||||||||||||
Geth | nqp: 8dd59c4451 | (Paweł Murias)++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java [jvm] Make nqp::expmod handle negative exponents |
12:03 | |||||||||||||||||||||||||||||
12:10
pmurias left
12:14
pmurias joined
12:15
p6bannerbot sets mode: +v pmurias
12:33
ggoebel joined
12:34
p6bannerbot sets mode: +v ggoebel
|
|||||||||||||||||||||||||||||||
nine | lizmat: "use precompilation;" for scripts wouldn't make much sense, since to get at the information that we should look for a precomp file, we'd have to parse the script. | 12:45 | |||||||||||||||||||||||||||||
lizmat | not necessarily: if the script loader would look for a compiled version and execute that | 12:46 | |||||||||||||||||||||||||||||
nine | lizmat: nevertheless, I've looked into precompiling scripts from time to time. It's certainly possible, but also a bit involved, since the perl6 program's structure very much expects to compile something | ||||||||||||||||||||||||||||||
lizmat | the "use precompilation" would then be responsible for making the precomp version | ||||||||||||||||||||||||||||||
nine | lizmat: but why have that pragma then in the first place? If we can precompile scripts, we ought to do it always. | 12:47 | |||||||||||||||||||||||||||||
lizmat | whenever the loader notices the script has changed, it would drop the precomp version | ||||||||||||||||||||||||||||||
that's also a point | |||||||||||||||||||||||||||||||
nine | OTOH if you want to precompile the script's code, just shove it into a module and "use" that. | ||||||||||||||||||||||||||||||
pmurias | nine: re running scripts without rakudo I played with that for rakudo.js | ||||||||||||||||||||||||||||||
lizmat | nine: well, that still feels like a workaround | 12:48 | |||||||||||||||||||||||||||||
pmurias | s/played/got it to work/ | ||||||||||||||||||||||||||||||
nine: the biggest thing that was needed was putting a fake compiler into nqp::getcomp('perl6') | 12:49 | ||||||||||||||||||||||||||||||
timotimo | hack.p6c.org/~timo/perl6-dev_log.html - brrt and friends | 12:50 | |||||||||||||||||||||||||||||
pmurias | nine: plus setting up %*COMPILING, loading up Perl6::World and setting up @END_PHASERS | 12:51 | |||||||||||||||||||||||||||||
nine | pmurias: that's quite interesting! | 12:52 | |||||||||||||||||||||||||||||
pmurias | nine: file that does the required hacks github.com/perl6/parcel-plugin-nqp...l6Asset.js | 12:54 | |||||||||||||||||||||||||||||
timotimo: thanks | 12:59 | ||||||||||||||||||||||||||||||
timotimo | pmurias: also moarvm_log and perl6_log | ||||||||||||||||||||||||||||||
Geth | rakudo: 1905838c10 | (Elizabeth Mattijsen)++ | src/core/IO/Handle.pm6 Make IO::Path.lines about 10% faster - put the close logic into the iterator classes - remove need for nested iterators (except when asking for limit) - remove a .lines candidate - since only one client of PIOIterator role, merge into class |
13:00 | |||||||||||||||||||||||||||||
timotimo | cool | 13:01 | |||||||||||||||||||||||||||||
lizmat | cycling&& | 13:02 | |||||||||||||||||||||||||||||
13:12
pmurias left
13:18
pmurias joined
13:19
p6bannerbot sets mode: +v pmurias
13:27
AlexDaniel left
|
|||||||||||||||||||||||||||||||
[Coke] | lizmat++ # continuous improvements | 13:32 | |||||||||||||||||||||||||||||
13:36
Ven` left
13:47
Ven` joined
13:48
p6bannerbot sets mode: +v Ven`
13:55
pmurias left
13:56
pmurias joined
13:57
p6bannerbot sets mode: +v pmurias,
pmurias left
13:59
pyrimidine joined
14:00
p6bannerbot sets mode: +v pyrimidine
14:02
pmurias joined
14:03
p6bannerbot sets mode: +v pmurias
14:07
lizmat left
|
|||||||||||||||||||||||||||||||
Geth | nqp: c734c8c646 | (Paweł Murias)++ | 3 files [js] Suport .HOW.name on lowlevel NQP string to fix --target=ast in rakudo.js |
14:07 | |||||||||||||||||||||||||||||
nqp: 5cf777b137 | (Paweł Murias)++ | src/vm/js/bin/run_tests.pl [js] Don't run failing tests |
|||||||||||||||||||||||||||||||
14:08
pmurias left
14:19
pmurias joined
14:20
p6bannerbot sets mode: +v pmurias
|
|||||||||||||||||||||||||||||||
japhb | Anyone know if we lost colabti permanently or just temporarily? | 14:24 | |||||||||||||||||||||||||||||
14:27
pmurias left,
pmurias joined
14:28
p6bannerbot sets mode: +v pmurias
|
|||||||||||||||||||||||||||||||
timotimo | dunno; did you see my replacement irclog for backlogging purposes? | 14:28 | |||||||||||||||||||||||||||||
14:39
brrt left
14:45
pmurias left
14:47
pmurias joined,
p6bannerbot sets mode: +v pmurias
|
|||||||||||||||||||||||||||||||
jnthn | . | 15:08 | |||||||||||||||||||||||||||||
yoleaux | 11:25Z <lizmat> jnthn: do you have any thoughts on expanding the Encoding::Decoder role to include something like "consume-line-chars-chomp" which in its default implementation would call "consume-line-chars(:chomp)" ? | ||||||||||||||||||||||||||||||
11:42Z <lizmat> jnthn: scratch that last question | |||||||||||||||||||||||||||||||
jnthn | .tell lizmat Scratched, but the answer would be that I don't see the point :) | 15:10 | |||||||||||||||||||||||||||||
yoleaux | jnthn: I'll pass your message to lizmat. | ||||||||||||||||||||||||||||||
japhb | timotimo: Yeah, saw it, but not having the parts and joins faded, collapsed, or removed makes it very hard for me to follow. The signal gets lost in the noise. | 15:27 | |||||||||||||||||||||||||||||
15:27
Kaypie is now known as Kaiepi
|
|||||||||||||||||||||||||||||||
japhb | (These days the same could be said for everything p6bannerbot does) | 15:27 | |||||||||||||||||||||||||||||
15:32
AlexDaniel joined,
p6bannerbot sets mode: +v AlexDaniel
15:33
Ven` left
15:42
Ven` joined
15:43
p6bannerbot sets mode: +v Ven`
15:47
robertle left
|
|||||||||||||||||||||||||||||||
timotimo | i should be able to grep them out | 16:04 | |||||||||||||||||||||||||||||
16:06
brrt joined
|
|||||||||||||||||||||||||||||||
timotimo | ... how do i grep for tab characters ... | 16:07 | |||||||||||||||||||||||||||||
16:07
p6bannerbot sets mode: +v brrt
|
|||||||||||||||||||||||||||||||
geekosaur | control-v, tab | 16:07 | |||||||||||||||||||||||||||||
timotimo | thanks! | ||||||||||||||||||||||||||||||
ah, not in fish | |||||||||||||||||||||||||||||||
geekosaur | can't help. aside maybe from grep -P and then sue \t | ||||||||||||||||||||||||||||||
use | 16:08 | ||||||||||||||||||||||||||||||
timotimo | i can go outside of the quotes and put \t | ||||||||||||||||||||||||||||||
japhb: refresh, these lines are now gone :) | 16:10 | ||||||||||||||||||||||||||||||
16:45
Ven` left
16:48
robertle joined,
p6bannerbot sets mode: +v robertle
16:49
fake_space_whale joined,
Kaiepi left,
p6bannerbot sets mode: +v fake_space_whale
16:57
Kaiepi joined
16:58
p6bannerbot sets mode: +v Kaiepi
17:14
lizmat joined
17:15
p6bannerbot sets mode: +v lizmat
17:31
brrt left
18:19
stmuk_ joined
18:20
p6bannerbot sets mode: +v stmuk_
|
|||||||||||||||||||||||||||||||
lizmat | another thought of the day: are the spesh / optimizer threads running during setting compilation? if so, does that make sense ? | 18:51 | |||||||||||||||||||||||||||||
yoleaux | 15:10Z <jnthn> lizmat: Scratched, but the answer would be that I don't see the point :) | ||||||||||||||||||||||||||||||
timotimo | they are, and yeah, of course it makes sense, since the parser and compiler are also perl6 code that gets optimized | 19:19 | |||||||||||||||||||||||||||||
lizmat: ^ | 19:20 | ||||||||||||||||||||||||||||||
lizmat | do we have prove that it makes sense ? | 19:21 | |||||||||||||||||||||||||||||
timotimo | turning off spesh also turns off the jit | ||||||||||||||||||||||||||||||
i recently posted on #perl6 what times i get for core setting compilation with and without jit | 19:22 | ||||||||||||||||||||||||||||||
Geth | rakudo: 92951168bd | (Elizabeth Mattijsen)++ | 2 files Extract Str.words(:autoderef) and streamline it The runtime post-processing of quoted words used a special candidate of Str.words. By giving the method its own name, it is no longer part of the MMD of Str.words *and* we can remove a named parameter to the call. The inside of the method could also be streamlined a bit so that we have a lot less boxing going on. |
||||||||||||||||||||||||||||||
timotimo | i should perhaps try without spesh as well | ||||||||||||||||||||||||||||||
lizmat | inquiring minds need to know :-) | 19:23 | |||||||||||||||||||||||||||||
timotimo | 98.72user 0.55system 1:39.58elapsed 99%CPU (0avgtext+0avgdata 1375660maxresident)k | 19:27 | |||||||||||||||||||||||||||||
78.10user 0.58system 1:17.65elapsed 101%CPU (0avgtext+0avgdata 1387728maxresident)k | 19:29 | ||||||||||||||||||||||||||||||
the second one is jit off, spesh on, the first one is jit off spesh off | |||||||||||||||||||||||||||||||
75.37user 0.66system 1:13.77elapsed 103%CPU (0avgtext+0avgdata 1417380maxresident)k | 19:30 | ||||||||||||||||||||||||||||||
that is spesh on jit on | 19:31 | ||||||||||||||||||||||||||||||
to me that says either "turning the jit off can save a nice amount of memory during core setting compilation without costing much time", or "we should see what the jit could do better in core setting compilation in particular" | 19:33 | ||||||||||||||||||||||||||||||
but spesh is definitely worth it | 19:34 | ||||||||||||||||||||||||||||||
20:16
pmurias left
20:18
pmurias joined
|
|||||||||||||||||||||||||||||||
lizmat | feels to me that we could switch off JIT for core compilation as memory usage for core setting compilation *is* a problem on small machines | 20:18 | |||||||||||||||||||||||||||||
20:19
p6bannerbot sets mode: +v pmurias
|
|||||||||||||||||||||||||||||||
pmurias | lizmat: offering a switch could be a sensible option | 20:20 | |||||||||||||||||||||||||||||
in Perl6::Optimizer do we assume QAST nodes aren't used shared in multiple places? | 20:27 | ||||||||||||||||||||||||||||||
we seem to be editing them a lot inplace | |||||||||||||||||||||||||||||||
(and intersection of two optimizations is causing a bug on js/jvm backends) | 20:28 | ||||||||||||||||||||||||||||||
lizmat | timotimo might know | 20:31 | |||||||||||||||||||||||||||||
Geth | rakudo: ae739adf3a | (Elizabeth Mattijsen)++ | 2 files Obscurize words-autoderef a bit |
20:44 | |||||||||||||||||||||||||||||
21:05
MasterDuke joined,
p6bannerbot sets mode: +v MasterDuke
21:07
MasterDuke left,
MasterDuke joined,
herbert.freenode.net sets mode: +v MasterDuke,
p6bannerbot sets mode: +v MasterDuke
|
|||||||||||||||||||||||||||||||
timotimo | sometimes we edit them in-place so that both subtrees of a QAST::Want get optimized even though we only descend into one of the two | 21:11 | |||||||||||||||||||||||||||||
pmurias | timotimo: so the bug is that when we are optimizing $var += ... | 21:15 | |||||||||||||||||||||||||||||
timotimo: $var is used twice | |||||||||||||||||||||||||||||||
timotimo | ah, yeah, perhaps it should be bound to a local first | 21:16 | |||||||||||||||||||||||||||||
pmurias | the problem is that when we have nqp::assign_i($var, $var + ...) lexicalref is turned into lexical when optimizing $var + ... | 21:17 | |||||||||||||||||||||||||||||
timotimo | oh, right | ||||||||||||||||||||||||||||||
pmurias | timotimo: it could be fixed with a nqp::clone on one of the QAST::Vars | ||||||||||||||||||||||||||||||
timotimo | that's bad | ||||||||||||||||||||||||||||||
pmurias | timotimo: the fix or the problem? | ||||||||||||||||||||||||||||||
timotimo | the problem | 21:19 | |||||||||||||||||||||||||||||
and the situation | |||||||||||||||||||||||||||||||
but a good catch | |||||||||||||||||||||||||||||||
pmurias | I'll spectest the fix and commit it tommorow ;) | 21:20 | |||||||||||||||||||||||||||||
21:43
pmurias left
21:44
pyrimidi_ joined,
p6bannerbot sets mode: +v pyrimidi_
|
|||||||||||||||||||||||||||||||
japhb | timotimo: Thanks for the cleaner irclog view! :-) | 21:54 | |||||||||||||||||||||||||||||
timotimo | \o/ | ||||||||||||||||||||||||||||||
22:11
pyrimid__ joined,
pyrimidi_ left
|
|||||||||||||||||||||||||||||||
Geth | rakudo: 07089e89e8 | (Elizabeth Mattijsen)++ | src/core/Str.pm6 Make Str.chop(N) about 5x as fast First check for bigint ness, then use native int logic only |
22:11 | |||||||||||||||||||||||||||||
22:11
p6bannerbot sets mode: +v pyrimid__
|
|||||||||||||||||||||||||||||||
timotimo | oh wow | 22:12 | |||||||||||||||||||||||||||||
lizmat | and that concludes my hacking for today | ||||||||||||||||||||||||||||||
good night! | |||||||||||||||||||||||||||||||
timotimo | gnite lizmat | 22:13 | |||||||||||||||||||||||||||||
22:26
robertle left
22:45
pyrimid__ left
23:18
pyrimidi_ joined
23:19
p6bannerbot sets mode: +v pyrimidi_
|