Kaiepi | ok something seems to be very wrong with dns resolution on freebsd since beastiebot can't resolve any ip for irc.freenode.net | 06:34 | |
i'll write up an issue for it tomorrow once i find out more about what the problem is | |||
Geth | rakudo/js: a22bf543ef | pmurias++ | tools/build/gen-js-makefile.nqp [js] Build CORE setting with a source map |
11:00 | |
dogbert2_ | ZOFFLOP: t/spec/S10-packages/basic.rakudo.moar | 13:11 | |
ZOFFLOP fixed, was a local PATH problem | 13:14 | ||
lizmat | Files=1236, Tests=76264, 312 wallclock secs (14.73 usr 5.30 sys + 2142.74 cusr 213.43 csys = 2376.20 CPU) | 13:21 | |
AlexDaniel | jnthn: you write: “the next MoarVM release will include remote debug support”, yet we are 3 days before the release and it's not merged yet | 13:41 | |
jnthn | AlexDaniel: Will merge it later on today | 13:43 | |
AlexDaniel | ok thanks! | ||
jnthn | AlexDaniel: Given all the functionality is enabled by an explicit command line option, I'm pretty comfortable it won't have any impact | ||
Uh, impact on "normal" MoarVM usage, I mean | 13:44 | ||
AlexDaniel | yea that I see. But still I'm kind of expecting huge chunks of work to be merged earlier | ||
japhb | AlexDaniel: I would not be surprised if the other shoe drops in a couple weeks, given that jnthn refered to "our next Perl 6 product" coming out around then. | 14:15 | |
If that timing is accurate, it's comfortably right between releases. | |||
dogbert2_ | bisect: uptime | 15:33 | |
bisectable6 | dogbert2_, 22 hours, 59 minutes, and 24 seconds, 252.300781MiB maxrss. This is Rakudo version 2018.02.1-121-gde30c1621 built on MoarVM version 2018.02-27-g760b0913e implementing Perl 6.c. | ||
timotimo | hey Kaiepi, can you look into endian.h for me? there's a moarvm pull request that introduces usage of some endian conversion functions that are missing at least on mac osx, and this gist here gist.github.com/panzi/6856583 has something for BSDs, too. | 16:07 | |
github.com/MoarVM/MoarVM/pull/817 | 16:08 | ||
Kaiepi | sure | 16:34 | |
mr_ron | m: class Proxy2 is Proxy {method m {say "proxy2 method m"}}; my $p = Proxy2.new(FETCH => method {3}, STORE => {4.5}); # how to invoke Proxy2 method m ??? | 16:35 | |
camelia | ( no output ) | ||
mr_ron | m: class Proxy2 is Proxy {method m {say "proxy2 method m"}}; my $p = Proxy2.new(FETCH => method {3}, STORE => {4.5}); $p.m # container doesn't work - wouldn't expect | 16:36 | |
camelia | No such method 'm' for invocant of type 'Int' in block <unit> at <tmp> line 1 |
||
mr_ron | m: class Proxy2 is Proxy {method m {say "proxy2 method m"}}; my $p = Proxy2.new(FETCH => method {3}, STORE => {4.5}); $p.VAR.m | ||
camelia | No such method 'm' for invocant of type 'Int' in block <unit> at <tmp> line 1 |
||
Zoffix | mr_ron: RT#130403 | 16:39 | |
synopsebot | RT#130403 [new]: rt.perl.org/Ticket/Display.html?id=130403 [OO] cannot subclass Proxy | ||
Kaiepi | how would i test the debug server? | 16:40 | |
timotimo | 16:41 | ||
Zoffix | mr_ron: depending on what you need you could do something like what Proxee does and close over some object when making a Proxy | ||
timotimo | Kaiepi: just compiling would be enough, i expect | 16:42 | |
Zoffix | m: my $x := do { my $c := class Proxy2 { method m { say "proxy2" } }; Proxy.new: :STORE(-> $, $ {}), :FETCH{ $c.m } }; $x | ||
camelia | WARNINGS for <tmp>: Useless use of $x in sink context (line 1) |
||
mr_ron | Zoffix: reading through channel log from RT - thanks | ||
Zoffix | m: my $x := do { my $c := class Proxy2 { method m { say "proxy2" } }; Proxy.new: :STORE(-> $, $ {}), :FETCH{ $c.m } }; say $x | ||
camelia | proxy2 proxy2 proxy2 proxy2 proxy2 proxy2 proxy2 proxy2 proxy2 proxy2 proxy2 True |
||
timotimo | travis-ci.org/MoarVM/MoarVM/jobs/353086786#L809 - this is how it fails on mac osx | ||
Zoffix | eco: Proxee | ||
buggable | Zoffix, Proxee 'A more usable Proxy with bells': github.com/zoffixznet/perl6-Proxee | ||
timotimo | but actually i need endian switching in just a single place and there it's for basically a constant anyway | 16:43 | |
so i'll just write it by hand | |||
Kaiepi | where do i put portable_endian.h timotimo? | 16:48 | |
mr_ron | Zoffix: interesting with respect to RT 126198 - chan log from rt you mention has 'the magic of Proxy is hardwired into it's new method'. irclog.perlgeek.de/perl6/2016-12-25#i_13797157 | ||
synopsebot | RT#126198 [new]: rt.perl.org/Ticket/Display.html?id=126198 [BUG] Defining a Proxy with methods instead of subs leads to surprising results in Rakudo | ||
timotimo | i didn't do anything with it yet, tbh. put it anywhere and add an #include to it near the beginning of debugserver.c | 16:49 | |
Kaiepi | compiling runs fine | 16:52 | |
timotimo | i've actually decided against using the standard endian switch function | 16:54 | |
because seriously, including a file more than a hundred lines long might just be overkill to get a function i can write in 7 lines + 3 lines of preprocessor instructions | 16:57 | ||
oh, i also need to get stdbool.h in there for platforms like MSVC who don't have it m( | 16:58 | ||
except i'll use three lines of #define instead | 16:59 | ||
man, these travis mac machines take hours to boot | 17:07 | ||
FROGGS | maybe their owners need to find the right power cords first? | 17:10 | |
timotimo | :D :D | ||
it takes a while to connect to the network because travis can only afford three mac network cable adapters | |||
FROGGS | and looking for the right cord in the floor is problematic because of the scarf, you know | ||
hehe | |||
timotimo | "thunderbolt to gigabit ethernet adapter" "$ 29.00" | 17:11 | |
bleeehhhh, cmp itself is trying to #include <stdbool.h> i don't want to fork the project just to delete this one line | 17:19 | ||
[Coke] | tbrowder's CLA has been received. Need the github ID to complete the sheet, but go ahead and add him. Sorry about the delay, tb. | 17:23 | |
AlexDaniel | \o/ | 17:35 | |
[Coke] | 18:10 < timotimo> :D :D | 17:39 | |
18:10 < timotimo> it takes a while to connect to the network because travis can only afford three mac network cable adapters | 17:40 | ||
whoops, accidental cut and paste from same window. :) | |||
tbrowder_ | no problemo! | 18:17 | |
just glad it got there! | |||
Geth | roast: ae728d206a | usev6++ | 3 files [JVM] Unfudge some passing tests |
20:02 | |
roast: 28c0297abd | usev6++ | S16-filehandles/filetest.t Adjust code for touching a file We just removed a test for open(:create) as questionable, so we shouldn't use this to touch a file. Compare github.com/perl6/roast/commit/2482...ad9a70a5a3 |
20:22 | ||
roast: 77a8c4916d | usev6++ | S16-io/print.t [JVM] Skip test that uses atomicint |
20:43 | ||
rakudo: 4054ca6832 | (Elizabeth Mattijsen)++ | src/core/Channel.pm6 Streamline Channel.receive/receive-nil-on-close There is no difference between these two methods apart from the return value when the Channel closes. Therefore, it was implemented with a private method taking a flag. However, when you use .hyper on something longer running, the profile ... (6 more lines) |
20:52 | ||
lizmat | jnthn: I think the real problem is that the batch producer in many cases is not producing batches fast enough | 20:55 | |
which in turn causes fewer workers to be created, because the workers available can handle the load easily | 20:56 | ||
so I'm focusing now on making production of batches faster | |||
timotimo is just booking his hotel room for GPW2018 | 20:58 | ||
jnthn | lizmat: Hm, but batching is mostly just iterating the underlying data source | 21:22 | |
And I think we fill batches with a push- method on the iterator | 21:23 | ||
lizmat | push-exactly indeed | ||
jnthn | But sure, can see what's possible to tune. | ||
lizmat | the main problem with produce-batch is that it doesn't JIT | ||
jnthn | Hmm | 21:24 | |
Check the bail log, I guess | |||
lizmat | I guess it was the =:= IterationEnd | ||
jnthn: is there a deeper reason why CHANNEL_CLOSE / CHANNEL_FAIL are classes rather than Mu.new instances ? | 21:33 | ||
dogbert17 | m: say () X+ (1, 2) | 21:34 | |
camelia | This type (Scalar) does not support elems in block <unit> at <tmp> line 1 |
||
jnthn | lizmat: I don't think so; maybe spesh can reason about type stuff a tad easier, the cost of a constant comparison probably comes out at the cost of a guard, so it's likely a wash either way | 21:35 | |
Ohhh | 21:36 | ||
And I think FAIL has to be because it carries an exception object, no? :) | |||
gfldex | dogbert17: that error message is a nice example of accidental wisdom :) | ||
jnthn | So it's not just a sentinel | ||
CLOSE I think is | |||
So perhaps I did 'em both as lexical classes just to be uniform :) | 21:37 | ||
dogbert17 | m: say [] X+ [1, 2] | 21:38 | |
camelia | () | ||
dogbert17 | gfldex: indeed :) | 21:43 | |
lizmat | hmmm... running a --profile on the same .hypering code, produces wildly differently sized .html files (60MB - 342MB) # timotimo jnthn | ||
timotimo | probably has to do with massively fluctuating depths of backtraces from resuming continuations | 21:47 | |
lizmat | guess so... is that issue on the radar ? | 21:48 | |
timotimo | it's on mine, but i'm not sure i can do anything much :) | ||
lizmat | :-( | ||
timotimo | i haven't checked out the internals of continuations yet | 21:55 | |
that's what i mean | |||
samcv | greppable6: Encoding::Builtin | 22:05 | |
greppable6 | samcv, Found nothing! | ||
samcv | greppable6: Encoding::Encoder | ||
greppable6 | samcv, 1 lines, 1 modules: gist.github.com/68d75c0dc03fec0daa...8115910fb4 | ||
samcv | greppable6: Encoding::Decoder | ||
greppable6 | samcv, 1 lines, 1 modules: gist.github.com/46abe7ca5984fc0eb1...3faa34541d | ||
samcv | greppable6: .encoder | ||
greppable6 | samcv, 268 lines, 21 modules: gist.github.com/31346948763948b553...bb8b98a59e | 22:06 | |
samcv | greppable6: \.encoder | ||
greppable6 | samcv, 3 lines, 2 modules: gist.github.com/477d55f3219cd99012...c37680b1ca | ||
Geth | rakudo: 87815ee45c | (Zoffix Znet)++ | docs/archive/2018-03-04--Polishing-Rationals.md Dial down promised perf imrpovements Since this'll be part of TPF proposal, better to underpromise than to overpromise. |
22:48 | |
rakudo: 598832cc3a | (Elizabeth Mattijsen)++ | src/core/Rakudo/Internals/HyperPipeline.pm6 Reduce the number of DYNAMIC calls when hypering In a profile of '^Inf .hyper.grep( *.is-prime ).skip(9999).head', calls to DYNAMIC to 576 CPU msecs. With this patch it goes down to 0.07 msecs. So this should have at least have a positive effect on total CPUY usage when hypering. |
22:59 | ||
rakudo: eff92f94b4 | (Elizabeth Mattijsen)++ | src/core/Channel.pm6 Streamline Channel.poll Makes Channel.poll 2x as fast, which results in 7 msecs CPU less on things like say ^Inf .hyper.grep( *.is-prime ).skip(9999).head |
23:09 | ||
timotimo | oh, nice | 23:10 | |
Geth | rakudo: 8026cef847 | (Elizabeth Mattijsen)++ | 2 files Streamline HyperIteratorBatcher.produce-batch Also streamline creation of HyperWorkBatch. This brings down CPU usage of .produce-batch from 22 msecs to 6 msecs for something like: say ^Inf .hyper.grep( *.is-prime ).skip(9999).head *and* it now gets JITted. Being able to produce batches faster is important because then the scheduler is likely to create more workers, which then results in lower wallclock times. |
23:22 | |
lizmat calls it a day& | 23:23 | ||
jnthn | lizmat++ :) | 23:28 | |
Geth | rakudo: samcv++ created pull request #1617: Add strict, replacement options for IO::Handle, Str.encode & other fixes |
23:32 | |
nqp: 6282394125 | (Samantha McVey)++ | tools/build/MOAR_REVISION Bump MoarVM, bringing in debugger and encoding improvements Changes: 2018.02-39-g38eb2bd..2018.02-158-g449c7214f 0c64f6979 install debugserver.h 12b1d49a6 MSVC has _strtoi64 instead of strtoll 14edd2af9 mark functions MVM_PUBLIC f3fa1db5f bump cmp dependency ... (113 more lines) |
23:34 | ||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...g449c7214f | |||
rakudo: ffeff74e18 | (Samantha McVey)++ | tools/build/NQP_REVISION Bump Moar/NQP bringing in new debugger and encoding improvements For full changeset see: github.com/MoarVM/MoarVM/compare/2...g449c7214f |
23:35 | ||
¦ rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2018....g628239412 | |||
AlexDaniel | yey | ||
timotimo | "commit message has 113 more lines" %) | 23:44 | |
Geth | geth: bafe0c6aa4 | (Zoffix Znet)++ (committed using GitHub Web editor) | lib/Geth/GitHub/Hooks.pm6 Fix silence on merge of large PRs Apparently in those cases p6w.input has a bunch of strings, not Bufs |
23:55 |