| Geth | rakudo/nom: d69f3751d5 | (Elizabeth Mattijsen)++ | src/core/Any-iterable-methods.pm Streamline Any::IterateOneWithoutPhasers.sink-all - put return value in signature - remove unnecessary $running flag - simplify next handling - indicate extra scope is for optimization only Makes for @a { ... } about 1% faster. Normally I wouldn't take this but this is for a *very* common idiom, so feels like somethingw we want anyway. |
00:23 | |
| lizmat | which depleted my tuits for today | 00:24 | |
| good night, #perl6-dev! | |||
| brokenchicken | night | ||
| Geth | nqp: f21c8f1668 | TimToady++ | 2 files get rid of $*ACTIONS The current actions class is now passed via the cursor. |
07:06 | |
| rakudo/nom: 9493ffb90c | TimToady++ | 2 files get rid of $*ACTIONS The current actions class is now passed via the cursor. |
|||
| rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....4-gf21c8f1 951a441d10 | TimToady++ | tools/build/NQP_REVISION |
|||
| ¦ rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....4-gf21c8f1 | 07:07 | ||
| [Tux] | This is Rakudo version 2017.01-131-g951a441d1 built on MoarVM version 2017.01-25-g70d4bd53 | 07:45 | |
| csv-ip5xs 2.748 | |||
| test 12.182 | |||
| test-t 4.834 | |||
| csv-parser 13.224 | |||
| second run 4.880 | |||
| TimToady | parsing seems a percent or so faster now, I think | 08:37 | |
| though we mostly got rid of $*ACTIONS because it was the right thing to do | 08:38 | ||
| masak | I love it when performance and the right thing to do come together | 08:39 | |
| Geth | roast: ac12ffeb5f | usev6++ | S17-promise/nonblocking-await.t Fudge some newly added tests for JVM |
10:03 | |
| samcv | how do i stop this error payload: don't change grammar in the setting, please! | 10:36 | |
| if trying to add an op | |||
| lizmat | well, that seems to be 6.d then ? | 10:37 | |
| *6.d material | |||
| jnthn: is the "Introducing spesh" part in 6guts.wordpress.com/2014/04/12/opt...-and-moar/ still correct ? | 10:38 | ||
| samcv: what are you trying to do ? | 10:39 | ||
| having been in that situation in the past :-) | |||
| samcv | gist.github.com/samcv/d633ebd66fb5...2492d7217b to Str.pm | ||
| lizmat | ok | 10:41 | |
| you need to add it to the Grammar.nqp | |||
| although this *could* be 6.d material: adding methods to classes ok, adding ops wasn't if I recall correctly | 10:42 | ||
| samcv | lizmat, which one? | 10:43 | |
| lizmat | src/Perl6/Grammar.nqp | ||
| jnthn | lizmat: Yes, if incomplete | ||
| lizmat: It's out of date in that we now *can* also product machine code at the end | |||
| *produce | 10:44 | ||
| lizmat | ok :-) | ||
| jnthn | lizmat: And since then, importantly, it supports inlining and OSR | ||
| samcv | lizmat, thanks :) | ||
| <sym> >> <O(|%structural)> # not sure what this means but just gonna steal the one for cmp and leg | 10:45 | ||
| jnthn | lizmat: Can also resolving multi-dispatches at spesh time too | ||
| *resolve | |||
| Guess you can just put "And many other little opts" :) | |||
| lizmat | jnthn | 10:46 | |
| samcv: that's a start | |||
| you would also need to add it to src/core/precedence.pm I think | |||
| samcv | well good sign, it compiled | ||
| jnthn | <sym> means "match whatever is in :sym<here>", >> means word boundary, <O(...)> specifies precedence, associativity, etc. | 10:47 | |
| lizmat | jnthn: are you ok with adding this to 6.c instead of 6.d.PREVIEW ? | 10:48 | |
| jnthn | Well, according to the doc I did, it'd go in 6.d | 10:50 | |
| How strictly we want to follow that at the moment is another matter. | |||
| `await` clearly needed to be because it's a notable behavior changes | 10:51 | ||
| samcv | what are you guys discussing? | ||
| there's so many changes, hard to keep up :P | 10:52 | ||
| lizmat | jnthn: I'm having trouble finding the doc you did about this | 10:54 | |
| jnthn | samcv: Whether or not unicmp belongs in 6.d.PREVIEW or not :) | ||
| samcv | ah ok | ||
| jnthn | lizmat: It got put into the Rakudo repo so we wouldn't have that problem, I tought? :P | 10:55 | |
| samcv | i'm not even sure what the final name for it is gonna be tho | ||
| jnthn | *thought | ||
| samcv: That'd be even more reason to put it behing 6.d.PREVIEW :) | |||
| *behind | |||
| But for now, I guess, make it work at all :) | |||
| samcv | though i mean a new op won't be noticed by anybody so idk if we need to hide it | 10:59 | |
| since it's not gonna be in the docs just yet | |||
| samcv wonders if we could hide sorting strings with cmp to use unicmp_s in the preview | 11:00 | ||
| jnthn | Yeah, I was wondering about that | ||
| I think it might be doable | |||
| Or if not, we can fix it to be doable :) | |||
| samcv | heh | 11:01 | |
| Geth | rakudo: samcv++ created pull request #1009: Add unicmp op which uses unicmp_s nqp op to do string compare |
11:07 | |
| samcv | jnthn, lizmat thoughts on this pr | 11:09 | |
| lizmat | samcv: what does the 7,0,0 signify ? | 11:10 | |
| samcv | 7 means do primary secondary and tertiary collation | ||
| lizmat | I wonder whether that should maybe be settable with a dynamic var? | 11:11 | |
| samcv | lizmat, full info here github.com/MoarVM/MoarVM/commit/875867d1 | ||
| samcv actually might change that 7, but atm the 7 doesn't actually change anything about what MVM does | 11:12 | ||
| lizmat | something like $*TOLERANCE | 11:13 | |
| samcv | but i may change it to be 15, meaning primary, secondary tertiary, and 4th level is breaking ties by cp | ||
| lizmat | perhaps $*COLLATION ? | ||
| samcv | well | ||
| read the whole thing, there's also countrys and languages | |||
| let me know when you've read that mvm commit | |||
| lizmat | read it :-) | 11:16 | |
| samcv | kk | ||
| so yeah maybe $*COLLATION | 11:17 | ||
| but yeah about 95% sure that 7 is gonna be changed to a 15. because i think it might be useful to be able to call cmp and get "same" if the collation values was equal | 11:18 | ||
| lizmat | could be a Collation object, with settings for primary/ secondary / ternary | ||
| and that would then map to 15,0,0 or so for now | |||
| samcv | yeah | ||
| that sounds fine | |||
| lizmat | jnthn: is that an idea? so we can encapsulate that functionality in a simple unicmp operator, yet are able to change its meaning dynamically ? | 11:19 | |
| samcv | and if we have cmp do unicmp_s i think it should do language inspecific | ||
| though there is something to say for always getting the same sorting order even if unicode changes things, though we have synthetics | 11:20 | ||
| jnthn | Not sure about dynamically | ||
| samcv | and those can be sorted differently based on what synthetic codepoint they are assigned to | ||
| jnthn | Could certainly do adverbs, and a pragma | ||
| lizmat | jnthn: I was thinking one liners and env variables :-) | ||
| jnthn | Please not env vars. :P | 11:21 | |
| And one-liners could easily do it with the adverbs | |||
| lizmat | ok | ||
| clearly I've not gotten rid of the cold yet :-) | |||
| samcv | haha. | 11:22 | |
| not good when the same program runs differently on different computers | |||
| lizmat goes to clock another few hours in bed | |||
| samcv | o/ | ||
| jnthn | lizmat: Feel better! o/ | ||
| samcv | wow suprised it made it 3x faster | 11:41 | |
| i already optimzed a ton of this part of the script but | |||
| gist.github.com/3bf513759424aae24a...a616c278ff top took 1.5s, bottom took .5s | 11:42 | ||
| which was already at least 3x faster than doing @dec.».parse-base(16), by using the nqp ops | |||
| i have the sub that processes UnicodeData.txt now 2x faster than it was yesterday :) | 11:46 | ||
| brokenchicken | \o/ | ||
| samcv | it still takes hours? idk some really long amount of time to do all cp | ||
| i have not waited for it to finish | |||
| well it's still going on the bisectable server, been at least a couple hours | 11:47 | ||
| brokenchicken | The <sym> >> <O(|%structural)> stuff: <sym> is the same string as the :sym<....> on that particular proto regex. The `>>` is the right word boundary, and <O...> stuff is the precedence thingie being set up these settings github.com/rakudo/rakudo/blob/nom/....nqp#L3828 this stuff is briefly mentioned in Day 1 of Rakudo Internals course | 11:51 | |
| samcv | ah ok i will look at that more then, thanks :) | 11:52 | |
| is there a nqp noop? | 12:04 | ||
| arnsholt | Why do you need a noop? | 12:06 | |
| If you're building a QAST tree, a Stmts with no children is fine | 12:07 | ||
| samcv | just to put in placeholders things that want something there. | 12:08 | |
| m: use nqp; nqp::if(iseq_i(0,0), ) | |||
| camelia | rakudo-moar 951a44: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Undeclared routine: iseq_i used at line 1» | ||
| samcv | anyway not super important but was curious if we had a noop | 12:09 | |
| arnsholt | Doesn't look like it | ||
| There's a debugnoop listed in the docs, but looks like it's only on JVM | |||
| But what kind of thing do you have that requires an op? | 12:10 | ||
| samcv | it's not really important, i just wondered it, while i was trying to benchmark if statements compared to code without if statements | ||
| and wanted to just put noop in there so it would compile | |||
| string ne ''; is basically equivalent to nqp::isne_i( nqp::chars($stc), 0); ? at least that's what i'm doing to try and optimize this code | 12:11 | ||
| unless there's a better way to do it | |||
| arnsholt | Oh, something to pass nqp::if? Did you try just passing in an empty block? | 12:13 | |
| samcv | yea | ||
| arnsholt | Then I'm all out of ideas. But if it's any consolation, nqp::if(..., nqp::noop()) wouldn't work either =) | 12:15 | |
| But from --target=ast it looks like if $cond { $consequent } compiles more or less directly to nqp::if anyways | 12:16 | ||
| samcv | kk | 12:17 | |
| yeah i haven't gotten much speedup changing to nqp::if unless all the surrounding code is already nqp | 12:18 | ||
| then i get a speedup | |||
| jnthn | --target=ast doesn't show that the optimizer (output of --target=optimize to see) often optimizes away QAST::Block too | 12:39 | |
| samcv | i wish i could have macros that would go to nqp ops that wouldn't slow anything down | 12:46 | |
| macros seem slower than subs i guess. hmm. maybe i'll just make subs | 12:47 | ||
| it seems making this thing i'm doing a sub is about the same speed | 12:48 | ||
| timotimo | make: *** [gen/moar/stage1/nqpmo.moarvm] Illegal instruction (core dumped) | 12:58 | |
| that's fun! | |||
| samcv | jnthn, is there a way to make for sure something gets inlined? | 13:03 | |
| is raw and is pure, what effect do those have on that? | |||
| timotimo | is raw is for what happens to the return value, is pure is for whether it'll be considered for compile-time evaluation | ||
| jnthn | is pure means it can be constant folded | 13:04 | |
| Most inlining happens in the VM, and it decides based on code size, heat, and whether there's things in the sub that make it impossible to inline | 13:05 | ||
| MasterDuke_ | samcv: re that snippet you posted, `%decomp_spec{$cp}<mapping> = @dec.map( { nqp::atpos(nqp::radix(16, $_, 0, 0), 0) } )` was about twice as fast in my rough test | 13:09 | |
| samcv | faster than the faster test? | 13:10 | |
| MasterDuke_ | yeah. .25s intead of .5s | 13:13 | |
| samcv | nice | ||
| MasterDuke_ | oh, could also try `%decomp_spec{$cp}<mapping> = @dec.map(-> int $_ { nqp::atpos(nqp::radix(16, $_, 0, 0), 0) } )`, might be faster still | ||
| dogbert17_ | jnthn: fun fact, the original reporter of github.com/MoarVM/MoarVM/issues/234 saw your changes from yesterday and closed the issue | 13:17 | |
| timotimo | very nice | ||
| dogbert17_ | timotimo: how's your stomach? | 13:18 | |
| timotimo | it's recovered completely, thank god! | ||
| dogbert17_ | horay | ||
| jnthn | \o/ on both :) | 13:20 | |
| samcv | MasterDuke_, it's actually about exactly the same as what i ended up doing | ||
| MasterDuke_ | the code or the speed? | ||
| timotimo | so ... how do i get a working moarvm again? o_O | 13:21 | |
| MasterDuke_ | good either way i guess | ||
| samcv | the speed | ||
| MasterDuke_, this is what i'm doing now gist.github.com/samcv/566950400b06...cmp-p6-L30 | |||
| though i might do what you said just to make it more readable | |||
| compared to yours gist.github.com/samcv/566950400b06...cmp-p6-L53 | |||
| timotimo | Program received signal SIGILL, Illegal instruction. | 13:22 | |
| SHA1_Transform (state=state@entry=0x7fffffffdb20, | |||
| is my hardware dying?! | |||
| MasterDuke_ | samcv: can't `if nqp::eqat(nqp::atpos($dec, 0), '<', 0) {` be simplified to `if nqp::eqat($dec, '<', 0) {`? | 13:23 | |
| samcv | does eqat allow arrays? | 13:24 | |
| MasterDuke_ | samcv: doh, nm, read your code wrong | 13:25 | |
| timotimo | no, it's only for strings | ||
| samcv | actually yours is like 10% faster than mine. gonna go with yours | 13:28 | |
| jnthn | timotimo: No, it's just ill... | 13:29 | |
| timotimo | i'll give it a reboot and see if that changes things to the better | ||
| if not .. well, at least i still have my laptop to switch to | |||
| and rebooting is quite fast | 13:32 | ||
| well, that still asplodes ... | 13:33 | ||
| samcv | MasterDuke_, also gonna use map in a different place and prolly speed things up | ||
| timotimo | why do u do dis gcc | ||
| just had to rm the sha1 .o and .a files | 13:40 | ||
| travis-ci | NQP build failed. Pawel Murias 'Test that 'local' variables are properly initialized.' | 13:49 | |
| travis-ci.org/perl6/nqp/builds/197113556 github.com/perl6/nqp/compare/501c5...90db6fe491 | |||
| brokenchicken | t/qast/01-qast.t ....................... Failed 1/119 subtests | 13:51 | |
| dogbert17_ | it's getting increasingly difficult to find bugs in MoarVM, argh :) | 13:55 | |
| travis-ci | NQP build failed. Zoffix Znet 'Add rudimentary docs for `locallifetime` | 13:56 | |
| travis-ci.org/perl6/nqp/builds/197131227 github.com/perl6/nqp/compare/5490d...a05465e84e | |||
| timotimo | so we build some features instead and voila | 13:58 | |
| more bugs for you | |||
| jnthn | dogbert17_: Your collecting info on them is making the quicker for me and others to fix, which works against your hunting. :-P | 14:00 | |
| *making them | |||
| brokenchicken | I'm guessing I can't declare a var I plan on returning inside QAST::Op.new( :op('locallifetime'), ? | 14:02 | |
| brokenchicken tries anyway | |||
| timotimo | returning out of it should be fine | ||
| things ought to be returned through a register, i'd assume | |||
| brokenchicken | I know nothing about registers :) (yet) | 14:03 | |
| travis-ci | NQP build failed. Zoffix Znet 'Merge pull request #344 from perl6/robust_dentin_dentout | 14:04 | |
| travis-ci.org/perl6/nqp/builds/197133735 github.com/perl6/nqp/compare/34a05...3f5515689d | |||
| NQP build failed. TimToady 'get rid of $*ACTIONS | 14:09 | ||
| travis-ci.org/perl6/nqp/builds/197212396 github.com/perl6/nqp/compare/213f5...1c8f1668f8 | |||
| [Coke] | news.mit.edu/2017/optimizing-code-...grams-0130 | 14:15 | |
| jnthn | Will be interesting to read the papers :) | 14:19 | |
| DrForr | Hyperoptimizer? | ||
| jnthn | :P | ||
| DrForr | Oo, quantum compiler - simultaneously test all possible code paths. | 14:20 | |
| brokenchicken | What could error mean? There isn't a '{' or '}' for miles in sight.Unable to parse expression in blockoid; couldn't find final '}' at line 7850, near "$past := Q" | 14:22 | |
| And the code is a bunch of QAST nodes... | |||
| DrForr | Are you using any #`(..) comments? I've had a few problems with nesting with those. | 14:23 | |
| brokenchicken | nope | ||
| timotimo | it can mean you broke the parser :) | 14:24 | |
| brokenchicken | heh | ||
| jnthn | May mean a mis-nested other brace too | 14:25 | |
| timotimo | seriously, though. many changes i've tried in moar in the past have caused the most random errors from parsing code | ||
| arnsholt | Yeah, that sounds like NQP code. And the error reporting in NQP is in the tradition of most other compilers =) | 14:26 | |
| (That is, not terribly helpful in most cases) | |||
| MasterDuke_ | samcv: replacing gist.github.com/samcv/566950400b06...p6-L57-L62 with a ternary, e.g., `%decomp_spec{$cp}<type> = nqp::eqat(nqp::atpos(@dec, 0), '<', 0) ?? nqp::shift(@dec) !! 'Canonical'` would probably also be faster | 14:27 | |
| brokenchicken | *sigh* don't see it | ||
| brokenchicken undos until last working version | |||
| [Coke] | brokenchicken: got a URL or a patch or something? I can stare at code if it helps. | 14:28 | |
| brokenchicken | It's already gone, but thanks :) | 14:30 | |
| [Coke] | WOOT | ||
| glad I could... "help"? | |||
| brokenchicken | heh | ||
| timotimo | :D | 14:31 | |
| perlpilot | .oO( ... and the cosmic joker arranges it such that brokenchicken's code still complains about a missing '}' even after backing out his changes ) |
14:34 | |
| Geth | rakudo/nom: 97359ae42e | (Zoffix Znet)++ | src/Perl6/Actions.nqp Fix result variables of S///; perlpilot++ for tips Currently S/// uses $/ to store the result of its operation, which clobbers the Matches it's supposed to have and causes numerous other issues due to returning a container that's re-used on multiple S/// calls. Fix by leaving the $/ alone (so it keeps the Match objects) and ... (20 more lines) |
15:31 | |
| roast: 1ed4d128d2 | (Zoffix Znet)++ | S05-substitution/subst.t Test S/// does not return $/ and so can be used in .map RT#130355: rt.perl.org/Ticket/Display.html?id=130355 Rakudo fix: github.com/rakudo/rakudo/commit/97359ae42e |
15:33 | ||
| synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130355 | ||
| roast: b15e0a0d9b | (Zoffix Znet)++ | S03-operators/andthen.t Unfudge now passing S/// andthen S/// tests RT#127822: rt.perl.org/Ticket/Display.html?id=127822 Rakudo fix: github.com/rakudo/rakudo/commit/97359ae42e |
15:34 | ||
| synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=127822 | ||
| perlpilot | brokenchicken: see? I told you, you'd do better :) | 15:36 | |
| brokenchicken | :) | 15:37 | |
| hm... | 16:03 | ||
| m: 'foo'.match: :g, /o/; say $/ | |||
| camelia | rakudo-moar 97359a: OUTPUT«(「o」 「o」)» | ||
| brokenchicken | m: 'foo'.subst: :g, /o/, 'x'; say $/ | ||
| camelia | rakudo-moar 97359a: OUTPUT«「o」» | ||
| brokenchicken | m: ($ = 'foo').subst-mutate: :g, /o/, 'x'; say $/ | ||
| camelia | rakudo-moar 97359a: OUTPUT«「o」» | ||
| brokenchicken | m: S:g/o/x/ given 'foo'; say $/ | ||
| camelia | rakudo-moar 97359a: OUTPUT«(「o」 「o」)» | ||
| brokenchicken | Seems .subst/.subst-mutate don't set $/ to all the matches when :g is used | 16:04 | |
| and that was so since before 2015.12 | 16:05 | ||
| Geth | roast: 4b949eb583 | usev6++ | 2 files [JVM] Fudge newly failing tests for r-j |
16:06 | |
| brokenchicken | :( | 16:11 | |
| hm, no idea how to fix it. | 16:48 | ||
| Don't get why its broken either. It seems to just call .match under the hood, fowarding the $/ up the food chain | |||
| RaKUDOBUgged: rt.perl.org/Ticket/Display.html?id=130688 | 16:57 | ||
| jdv79 | this is as good as i can golf this bug so far: gist.github.com/anonymous/d6011770...c70ac4465a | 17:44 | |
| can anybody repro that or better yet have any ideas? | |||
| brokenchicken | That has a feel of a concurrency bug. | 17:46 | |
| jdv79 | i know. oddly if you only have one class i can repro it. | 17:47 | |
| brokenchicken | reproed on 4th run on 2017.01-121-gf94cb21 | ||
| jdv79 | also even the for loop has to have a pair or whatever that is in there - 1..1 kills the repro. | 17:48 | |
| so weird | |||
| i guess that's golfed enough to report | 17:49 | ||
| brokenchicken | mhm, stick [CONC] at the start of the subject line | ||
| jdv79 | oops. i meant can't repro with jut one class | ||
| that's our best guess? | |||
| sure | |||
| timotimo | the message seems very much like a concurrency bug, yeah | ||
| jdv79 | thanks | 17:50 | |
| timotimo | how long do i have to run it every time to get it to explode in valgrind before i decide "it's run long enough, this time it's probably fine" | 18:02 | |
| jdv79 | for me it usually kicks in a few seconds or i just restart and it'll hit in a handful | 18:03 | |
| sometimes it never hits | |||
| travis-ci | Rakudo build errored. Jonathan Worthington 'Only generate static inline info when native args. | ||
| travis-ci.org/rakudo/rakudo/builds/197004056 github.com/rakudo/rakudo/compare/f...b346943910 | |||
| buggable | [travis build above] ✓ All failures are due to timeout (0), missing build log (3), or GitHub connectivity (0). | ||
| jdv79 | initial state? | ||
| timotimo | jdv79: the thing is that valgrind makes things between 10x and 100000x slower :) | 18:04 | |
| jdv79 | its #130690 | ||
| synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130690 | ||
| timotimo | so do i run it for 5 minutes? 10 minutes? 1 hour? | ||
| jdv79 | ew | ||
| i run it for no more than 30s and then just ctrl-c and do it again if it hasn't hit | 18:05 | ||
| most of the time | |||
| you can repro it without valgrind? | |||
| timotimo | yeah | ||
| i can | 18:06 | ||
| jdv79 | huh | ||
| timotimo | valgrind also serializes threads, so ... | 18:09 | |
| ==24651== More than 1000 different errors detected. I'm not reporting any more. | 18:11 | ||
| ==24651== Final error counts will be inaccurate. Go fix your program! | |||
| helgrind be like -^ | |||
| jdv79 | haha | 18:13 | |
| timotimo | i'm having a hard time interpreting the firehose that is helgrind | ||
| disabling spesh seems to make it harder to repro, can you confirm? | 18:14 | ||
| i've tried like 20 times and didn't get it to crash once | 18:17 | ||
| SPESH_INLINE_DISABLE doesn't seem to prevent repro, on the other hand | 18:18 | ||
| SPESH_OSR_DISABLE also doesn't prevent the crash | 18:19 | ||
| JIT_DISABLE also doesn't prevent it | 18:20 | ||
| but i still can't repro when MVM_SPESH_DISABLE is set | 18:21 | ||
| Geth | geth: 5f3744acad | (Zoffix Znet)++ | lib/Geth/Plugin/GitHub.pm6 Use bold instead of italics italics don't seem to be displaying right in irc clients |
18:40 | |
| travis-ci | Rakudo build canceled. Jonathan Worthington 'Only generate static inline info when native args. | 18:57 | |
| travis-ci.org/rakudo/rakudo/builds/197004056 github.com/rakudo/rakudo/compare/f...b346943910 | |||
| buggable | [travis build above] ✓ All failures are due to timeout (0), missing build log (3), or GitHub connectivity (0). | ||
| Geth | rakudo: ronaldxs++ created pull request #1010: replace s///r in fudgeandrun for compatibility with perl 5.10 |
19:31 | |
| rakudo/nom: ac37a20e9e | (Ronald Schmidt)++ | t/fudgeandrun replace s///r in fudgeandrun for compatibility with perl 5.10 |
19:34 | ||
| rakudo/nom: bc53f6770f | (Zoffix Znet)++ | t/fudgeandrun Merge pull request #1010 from ronaldxs/new-fancier-fudgeandrun replace s///r in fudgeandrun for compatibility with perl 5.10 |
|||
| travis-ci | Rakudo build canceled. Elizabeth Mattijsen 'Streamline Any::IterateOneWithoutPhasers.sink-all | 20:32 | |
| travis-ci.org/rakudo/rakudo/builds/197151628 github.com/rakudo/rakudo/compare/b...9f3751d50d | 20:33 | ||
| buggable | [travis build above] ☠ Did not recognize some failures. Check results manually. | ||
| RabidGravy | ah | 20:35 | |
| with "use 6.d.PREVIEW" if you take the server example from docs.perl6.org/type/IO$COLON$COLON...COLONAsync and add a $conn.close after the write it craps out after the second connection every time | 20:37 | ||
| brokenchicken | report it | ||
| RabidGravy | Unhandled exception in code scheduled on thread 9 | ||
| Attempt to unlock mutex by thread not holding it | |||
| brokenchicken | on ticket tracker | 20:38 | |
| RabidGravy | yeah | ||
| is there a way to get a backtrace from an exception in a thread? | 20:42 | ||
| brokenchicken | If you stick CATCH {} into it | ||
| CATCH { default { .gist.say } } | 20:43 | ||
| RabidGravy | Hmm not it seems | 20:44 | |
| timotimo | i think the recent await changes also made backtraces for threads better? | 20:45 | |
| RabidGravy | no backtrace | ||
| can't seem to catcch | 20:46 | ||
| ah there is no backtrace | 20:51 | ||
| I'll RT it, it'll probably be obvious to someone | 20:53 | ||
| jnthn | Hm, that's an interesting one :) | 21:02 | |
| RabidGravy | Quite bizarre | 21:03 | |
| and I can't make a ticket on rt | |||
| what? | 21:04 | ||
| timotimo | only via mail | ||
| has been that way for what, three months now? | |||
| maybe longer | |||
| RabidGravy | pfft | 21:05 | |
| it's RT #130692 | 21:12 | ||
| synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130692 | ||
| jnthn | Thanks | 21:22 | |
| Will look when less exhausted :) | |||
| RabidGravy | definitely odd | 21:24 | |
| jnthn | For anyone who found the article linked (I think) here on fork-join in the LLVM IR, cpc2016.infor.uva.es/wp-content/up...per_12.pdf is the actual paper | 21:33 | |
| Which hopefully is less hand-wavey :) | |||
| Argh, wait, it's one page | |||
| wsmoses.com/tapir.pdf seems to be the full thing :) | 21:34 | ||
| Geth | rakudo/nom: 9f15a4d649 | (Elizabeth Mattijsen)++ | src/core/Any-iterable-methods.pm Streamline Any::IterateTwoWithoutPhasers.push-all - add another case of .slip-all - simplify code for handling Slip - add scope for magic performance improvement This make my @b = @a.map: -> \a,\b { } about 15% faster |
22:31 | |
| rakudo/nom: 7384939eb1 | (Elizabeth Mattijsen)++ | src/core/Any-iterable-methods.pm Streamline Any::IterateTwoWithoutPhasers.sink-all - remove unnecessary flag - simplify next handling Makes for @a -> \a, \b { } about 2% faster. It's not a lot, but for such a common idiom, I guess we'll take it. |
22:49 | ||
| timotimo | i got myself a nice toy | 23:42 | |
| "cyber clean" "the high-tech cleaning compound" | 23:43 |