Kaiepi | writing an update to the repl to make it so you have to press ctrl+c/ctrl+d twice to exit | 00:08 | |||||||||||||||||||||||||||||||||||||
i've made way too many typos like that and like to be able to clear the line easily | 00:09 | ||||||||||||||||||||||||||||||||||||||
starting to work out how the language works bit by bit \o/ | 00:10 | ||||||||||||||||||||||||||||||||||||||
timotimo | if you want repl, but not as bad, maybe the jupyter kernel might be better | 00:32 | |||||||||||||||||||||||||||||||||||||
haven't tried it in a whole while though | |||||||||||||||||||||||||||||||||||||||
Geth | nqp: ab5dec0978 | (Jeremy Studer)++ | src/QRegex/P6Regex/Actions.nqp Fix bug with iteration of empty character class Check that there is at least one character class before applying the regex nodes. When compiling the 'conj' regex node, it expects to be able to shift off at least one child node and iterates past the end as a result. Fixes [Rakudo Issue #1622](github.com/rakudo/rakudo/issues/1622) |
02:38 | |||||||||||||||||||||||||||||||||||||
Kaiepi | hm, i have getting using ^C twice to exit the repl to almost work, but the tests for it hang | 02:52 | |||||||||||||||||||||||||||||||||||||
fixed that, but broke some other tests | 03:15 | ||||||||||||||||||||||||||||||||||||||
ah ok, the tests weren't accounting for "Press ^D again to exit Rakudo" to end up in stdout | 03:34 | ||||||||||||||||||||||||||||||||||||||
samcv | i've gotten it to 4.3s down from 12s :) | 05:35 | |||||||||||||||||||||||||||||||||||||
written in such a way the compiler can vectorize it (eliminating all branches in the loop completely) | |||||||||||||||||||||||||||||||||||||||
and scanning all of the 32 bit string buffer at once instead of checking each one at the same time as assigning to the new buffer | 05:36 | ||||||||||||||||||||||||||||||||||||||
Kaiepi | nice | 06:05 | |||||||||||||||||||||||||||||||||||||
samcv | and for my $str = 'abcdcdecdce♥'; for ^20000 { $str = 'whathere' ~ $str; $str ~~ /z/; }; say now - INIT now; | 06:22 | |||||||||||||||||||||||||||||||||||||
i get 1.25s now versus 4.64s before | |||||||||||||||||||||||||||||||||||||||
[Tux] |
|
06:38 | |||||||||||||||||||||||||||||||||||||
Geth | roast: 0c2cc72729 | usev6++ | 2 files [JVM] Fudge two newly failing tests (R#1671) |
06:43 | |||||||||||||||||||||||||||||||||||||
synopsebot | R#1671 [open]: github.com/rakudo/rakudo/issues/1671 [JVM] [JVM] Calling .perl on Sequence produced by chained .grep after .grep, :k gives wrong result | ||||||||||||||||||||||||||||||||||||||
Geth | nqp: Kaiepi++ created pull request #434: Allow NativeCall support for wchar_t |
07:42 | |||||||||||||||||||||||||||||||||||||
rakudo: Kaiepi++ created pull request #1672: Implement NativeCall support for wchar_t |
07:45 | ||||||||||||||||||||||||||||||||||||||
lizmat | Files=1238, Tests=74617, 308 wallclock secs (14.52 usr 4.95 sys + 2117.17 cusr 204.24 csys = 2340.88 CPU) | 07:50 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: 53c02d8505 | (Elizabeth Mattijsen)++ | src/Perl6/Actions.nqp We only need a single decont for 'once' |
08:14 | |||||||||||||||||||||||||||||||||||||
rakudo: 022954d74e | (Elizabeth Mattijsen)++ | src/core/Any-iterable-methods.pm6 Fix for GH R#1671 Apparently, the JVM needs the boxing to prevent it from taking an alias and thus producing the final value each time. |
08:21 | ||||||||||||||||||||||||||||||||||||||
synopsebot | R#1671 [open]: github.com/rakudo/rakudo/issues/1671 [JVM] [JVM] Calling .perl on Sequence produced by chained .grep after .grep, :k gives wrong result | ||||||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build failed. Elizabeth Mattijsen 'Fix for GH R#1671 | 09:29 | |||||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/360185565 github.com/rakudo/rakudo/compare/5...2954d74e02 | |||||||||||||||||||||||||||||||||||||||
synopsebot | R#1671 [open]: github.com/rakudo/rakudo/issues/1671 [JVM] [JVM] Calling .perl on Sequence produced by chained .grep after .grep, :k gives wrong result | ||||||||||||||||||||||||||||||||||||||
buggable | [travis build above] ☠ All failures are due to: failed make test (1 failure). Across all jobs, only t/04-nativecall/13-cpp-mangling.t test file failed. | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: b9906ab10d | usev6++ | src/core/Any-iterable-methods.pm6 Add back a nqp::p6box_i() for grep :kv, too Fixes the second part of GH R#1671 (same fix as in 022954d74e). |
09:48 | |||||||||||||||||||||||||||||||||||||
synopsebot | R#1671 [closed]: github.com/rakudo/rakudo/issues/1671 [JVM] [JVM] Calling .perl on Sequence produced by chained .grep after .grep, :k gives wrong result | ||||||||||||||||||||||||||||||||||||||
Geth | roast: 9f65f3485a | usev6++ | 2 files Revert "[JVM] Fudge two newly failing tests (R#1671)" This works again, lizmat++. This reverts commit 0c2cc727292ca3c319994e30aa68030268e579c3. |
09:49 | |||||||||||||||||||||||||||||||||||||
lizmat | Cool :-) | 09:50 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: b22421e7e9 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm6 Split off to-millis(,True) into to-millis-allow-zero This speeds up cueing of start { } blocks a bit and saves one Scalar allocation per cue. First part of more refactoring on ThreadPoolScheduler.cue, which currently takes 6.5% of CPU on 'await do for ^100000 { start { } }' |
10:22 | |||||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build passed. usev6 'Add back a nqp::p6box_i() for grep :kv, too | 10:31 | |||||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/360207798 github.com/rakudo/rakudo/compare/0...906ab10d22 | |||||||||||||||||||||||||||||||||||||||
Rakudo build passed. Elizabeth Mattijsen 'Split off to-millis(,True) into to-millis-allow-zero | 11:13 | ||||||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/360216361 github.com/rakudo/rakudo/compare/b...2421e7e9e9 | |||||||||||||||||||||||||||||||||||||||
Geth | roast/6.c-errata: 7dbc84c323 | (Zoffix Znet)++ | packages/Test/Util.pm Sync Test::Utils package with master |
12:47 | |||||||||||||||||||||||||||||||||||||
nqp: 0d344c2f5c | (Zoffix Znet)++ | tools/build/MOAR_REVISION [MoarVM Bump] Brings 21 commits MoarVM bump brought: github.com/MoarVM/MoarVM/compare/2...6-g85fc758 85fc758 Missing write barrier enforcement in CStruct ce38e35 Fix missing GC mark of deserializer contexts list df4c94c Spot use of an item already put in a gen2 freelist 6ba2d8d Simplify rooting by using MVMROOT2 ... (17 more lines) |
12:56 | ||||||||||||||||||||||||||||||||||||||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...6-g85fc758 | |||||||||||||||||||||||||||||||||||||||
rakudo: 20495f097e | (Zoffix Znet)++ | tools/build/NQP_REVISION [NQP Bump] Brings 2 commits NQP bump brought: github.com/perl6/nqp/compare/2018....2-g0d344c2 0d344c2 [MoarVM Bump] Brings 21 commits ab5dec0 Fix bug with iteration of empty character class MoarVM bump brought: github.com/MoarVM/MoarVM/compare/2...6-g85fc758 ... (21 more lines) |
|||||||||||||||||||||||||||||||||||||||
¦ rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2018....2-g0d344c2 | |||||||||||||||||||||||||||||||||||||||
nine | make.nqp now checks the exit status of commands (unless explicitly requested not to), only builds targets when actually needed, handles recursive macros correctly in all cases rakudo needs, no longer hides the output of commands, supports @echo and is still only 288 LOC | 14:21 | |||||||||||||||||||||||||||||||||||||
gist.github.com/niner/a959cb893820...392d4c16cb | |||||||||||||||||||||||||||||||||||||||
jnthn | Wow :D | 14:22 | |||||||||||||||||||||||||||||||||||||
Does it do parallel building too? ;) | |||||||||||||||||||||||||||||||||||||||
nine | And it may even work on Windows :D | ||||||||||||||||||||||||||||||||||||||
No parallel building...yet. I've given it some thought though. | 14:23 | ||||||||||||||||||||||||||||||||||||||
jnthn | There's not much of it to exploit in the Rakudo build anyway, tbh | ||||||||||||||||||||||||||||||||||||||
nine | No, I usually don't bother to even type -j for rakudo | 14:24 | |||||||||||||||||||||||||||||||||||||
jnthn | Darn it. Just re-engineered Supplier::Preserving internals figuring they were to thank for the S17-supply/syntax.t occasional hang. The symptoms fitted and there was a problem. But...it seems not to actually help that problem. | 14:28 | |||||||||||||||||||||||||||||||||||||
timotimo | parallel builds are still good if you build moar and jvm backends at the same time | 15:54 | |||||||||||||||||||||||||||||||||||||
nine | With a small fix for macros in targets it now builds nqp. That'd be extreme bootstrapping ;) | 15:58 | |||||||||||||||||||||||||||||||||||||
timotimo | awesome! | ||||||||||||||||||||||||||||||||||||||
i remember talking about this very thing at the austrian (or was is the swiss?) perl workshop | |||||||||||||||||||||||||||||||||||||||
having our own bootstrapped make system | 15:59 | ||||||||||||||||||||||||||||||||||||||
nqp helpfully already includes a bootstrapped nqp :D | |||||||||||||||||||||||||||||||||||||||
Kaiepi | i wonder if ccache would work for builds | 16:01 | |||||||||||||||||||||||||||||||||||||
nine | Much usage of perl in nqp's build could be replaced by nqp. | ||||||||||||||||||||||||||||||||||||||
Kaiepi | at least for moar | ||||||||||||||||||||||||||||||||||||||
nine | Turns out, NQP is not that bad a language to build such tools :) | ||||||||||||||||||||||||||||||||||||||
timotimo | it probably can, Kaiepi, but we have a moar.h that includes every include we have, so every time a .h file changes, everything would miss the cache again :( | 16:02 | |||||||||||||||||||||||||||||||||||||
Kaiepi | ah | ||||||||||||||||||||||||||||||||||||||
Geth | nqp/nqpmake: 18035e5cde | (Stefan Seifert)++ | tools/make.nqp Add a basic implementation of make to the build tools |
16:05 | |||||||||||||||||||||||||||||||||||||
nine | Not sure if we'd ever want to use such a thing for anything but I don't know where else to put the code... | ||||||||||||||||||||||||||||||||||||||
timotimo | <3 | 16:20 | |||||||||||||||||||||||||||||||||||||
jnthn | Well...uh...I've managed to not solve the S17-supply/syntax.t bug, but instead reworked Supplier::Preserving sufficiently that it now seems to happen reliably :P | 16:47 | |||||||||||||||||||||||||||||||||||||
I think I know where the problem is | |||||||||||||||||||||||||||||||||||||||
(Down in the scary continuation juggling done by `whenever` in the case of a sync subscription) | |||||||||||||||||||||||||||||||||||||||
It makes an ordering assumption that isn't upheld here | |||||||||||||||||||||||||||||||||||||||
So far as I can tell, anyway | 16:48 | ||||||||||||||||||||||||||||||||||||||
Bah, after saying it's now a reliable failure, it fails to fail | 16:49 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo/supplier-preserving-refactor: 0562248f61 | (Jonathan Worthington)++ | src/core/Supply.pm6 Refine Supplier::Preserving semantics Of note, make sure it never tries to do message sending while holding a real lock, since that prevents any kind of downstream `await` taking advantage of the 6.d.PREVIEW non-blocking `await` semantics. These changes were done as part of looking into a hang in the spectest ... (5 more lines) |
17:03 | |||||||||||||||||||||||||||||||||||||
jnthn gives up on it for today | 17:08 | ||||||||||||||||||||||||||||||||||||||
At least I solved one nasty segv bug... :) | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | squashable6: next | 17:35 | |||||||||||||||||||||||||||||||||||||
squashable6 | AlexDaniel, ⚠🍕 Next SQUASHathon in 6 days and ≈16 hours (2018-04-07 UTC-12⌁UTC+14). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | jnthn: I have some good news to you I think | 17:41 | |||||||||||||||||||||||||||||||||||||
I think this is now resolved: github.com/rakudo/rakudo/issues/1259 | 17:42 | ||||||||||||||||||||||||||||||||||||||
jnthn | Hurrah | ||||||||||||||||||||||||||||||||||||||
Then it was the same bug as the one you more recently reported | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | I'd have to update rakudo on the server to be able to tell with 100% certainty, so let's do a bot kaboom… | 17:43 | |||||||||||||||||||||||||||||||||||||
jnthn | :) | ||||||||||||||||||||||||||||||||||||||
jnthn wanders home...bbl | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | github.com/rakudo/rakudo/issues/16...-377584146 | 18:05 | |||||||||||||||||||||||||||||||||||||
\o/ | |||||||||||||||||||||||||||||||||||||||
this is so great! | |||||||||||||||||||||||||||||||||||||||
according to whateverable#24 I think it's now segfault-free | 18:08 | ||||||||||||||||||||||||||||||||||||||
with only these issues remaining: github.com/rakudo/rakudo/issues/1501 github.com/rakudo/rakudo/issues/1595 github.com/MoarVM/MoarVM/issues/680 | 18:09 | ||||||||||||||||||||||||||||||||||||||
(these are not segfaults ofc) | |||||||||||||||||||||||||||||||||||||||
MasterDuke: \o/ | 18:10 | ||||||||||||||||||||||||||||||||||||||
\o\ | 18:12 | ||||||||||||||||||||||||||||||||||||||
/o/ | |||||||||||||||||||||||||||||||||||||||
dogbert17 | bisect: uptime | 18:22 | |||||||||||||||||||||||||||||||||||||
bisectable6 | dogbert17, 32 minutes and 56 seconds, 202.203125MiB maxrss. This is Rakudo version 2018.03-134-g20495f097 built on MoarVM version 2018.03-56-g85fc758ce implementing Perl 6.c. | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: kbucheli++ created pull request #1673: use tmpdir for precompliation/REPL history if home directory is readonly |
19:31 | |||||||||||||||||||||||||||||||||||||
rakudo: ac5cf2bb01 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm6 Make ThreadPoolScheduler.cue a multi The "cue" method takes *many* named parameters, which causes a lot of overhead. Whereas the most common use, namely in from "start { ... }" only uses *one* named parameter. Making it a multi with one required named parameter in each candidate, makes the most common call to .cue about 5x as fast with 25% fewer allocations. This makes something like await do for ^100000 { start { } } go from 2.6 seconds wallclock to 2.1 seconds wallclock. |
19:55 | ||||||||||||||||||||||||||||||||||||||
jnthn | lizmat++ | 19:59 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | wait what | 20:26 | |||||||||||||||||||||||||||||||||||||
??? | |||||||||||||||||||||||||||||||||||||||
evalable6 | Stub code executed in block <unit> at /tmp/GI4BngbxUm line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | ? that's a bug? | ||||||||||||||||||||||||||||||||||||||
not in evalable | |||||||||||||||||||||||||||||||||||||||
evalable looks at the exit code | 20:27 | ||||||||||||||||||||||||||||||||||||||
and in this case it is 0 | |||||||||||||||||||||||||||||||||||||||
why? | |||||||||||||||||||||||||||||||||||||||
6c: ??? | |||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/dea4377871e547f291...4d3c3330e3 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | all: ??? | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/fe17342e5e38ca9c01...9311c61b4e | 20:28 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | m: say ???; say 42 | 20:29 | |||||||||||||||||||||||||||||||||||||
camelia | Stub code executed 0 42 in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | oh | ||||||||||||||||||||||||||||||||||||||
m: ???; say 42 | |||||||||||||||||||||||||||||||||||||||
camelia | Stub code executed 42 in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | ooooh… | ||||||||||||||||||||||||||||||||||||||
so it's something about sinking ??? | 20:30 | ||||||||||||||||||||||||||||||||||||||
m: my $x = ???; say $x | 20:37 | ||||||||||||||||||||||||||||||||||||||
camelia | Stub code executed 0 in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | what is 0? | ||||||||||||||||||||||||||||||||||||||
timotimo | s: &term:<???> | 21:10 | |||||||||||||||||||||||||||||||||||||
SourceBaby | timotimo, Something's wrong: ERR: ===SORRY!=== Error while compiling -eUndeclared routine: term:<???> used at line 6. Did you mean 'term:<now>'? | ||||||||||||||||||||||||||||||||||||||
timotimo | hm, it's probably directly in the grammar |