00:00 lizmat joined 00:04 lizmat left 05:31 domidumont joined 05:38 domidumont left 05:39 domidumont joined 06:31 domidumont left 06:56 robertle joined 07:10 lizmat joined 07:13 ggoebel left 07:26 ggoebel joined 07:48 domidumont joined 07:53 brrt joined
brrt ryu as source code repo: github.com/ulfjack/ryu 07:53
MasterDuke++, nice rabbit hole to fall into 07:54
08:16 robertle left 08:37 scovit left 09:13 lizmat left 09:14 lizmat joined 09:42 brrt left 09:53 zakharyas joined 09:54 robertle joined 11:44 brrt joined 11:47 zakharyas left 12:03 brrt left 12:21 zakharyas joined 13:18 lizmat left 13:27 zakharyas left, zakharyas joined 13:28 brrt joined, brrt left 13:55 lizmat joined 14:16 AlexDaniel left, AlexDaniel joined 14:17 zakharyas left 14:22 ChanServ sets mode: +o AlexDaniel
AlexDaniel github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
ChanServ sets mode: -o AlexDaniel 14:29 scovit joined
scovit m: my $a; $a = $a // 0; say $a 14:35
yoleaux 2 Jun 2018 11:41Z <MasterDuke> scovit: a way to customize the error message from where constraints: class A { method c {} }; class B { method d {} }; my $e = A.new(); my $f = B.new(); sub ciao($g where so $g.^can("c") || die "Can't do c") {}; ciao($f);'
camelia 0
scovit m: $ = $ // 0; say $
camelia (Any)
scovit Do you know why? 14:36
jnthn m: for ^5 { say $++ ~ ' and ' ~ $++ } 14:38
camelia 0 and 0
1 and 1
2 and 2
3 and 3
4 and 4
jnthn Each anonymous variable is distinct
So you're talking about 3 different anonymous variablese
scovit Ah thanks, I didn't get this. I thought that for convenience a $ was defined in each scope.. Instead $ is something different 14:41
.oO( we're all $ )
scovit :) it is also a good obfuscated way to define state variables 14:44
m: sub foo() { my $a := $; $a++; say $a; }; foo(); foo();
camelia 1
14:55 geekosaur left 15:08 geekosaur joined 15:25 ggoebel left 15:40 ggoebel joined 15:48 domidumont left 16:08 AlexDaniel`` left, wictory[m] left, ilmari[m] left 16:11 evalable6 left, camelia left, greppable6 joined, evalable6 joined 16:14 MasterDuke left 16:15 camelia joined 16:23 robertle left 16:37 wictory[m] joined 16:44 domidumont joined 16:51 domidumont left 17:08 shareable6 joined 17:09 undersightable6 joined 17:18 AlexDaniel`` joined, ilmari[m] joined 17:46 AlexDani` joined, AlexDaniel left 17:50 lizmat left 17:52 AlexDani` is now known as AlexDaniel
Geth MoarVM: 213f32324a | (Jeremy Studer)++ | 3 files
Change getsignals output from hash to array

Changed the output of getsignals from a hash to an array with signal names interleaved with signal values.
The purpose of this is to allow for a more consistent ordering of signals when exposed to the HLL.
MoarVM: 943980b3de | (Jeremy Studer)++ | 2 files
JIT compile getsignals

Although this probably isn't likely to be part of any hot code path, adding JIT support for the getsignals op.
MoarVM: 6302ca74ee | (Aleks-Daniel Jakimenko-Aleksejev)++ (committed using GitHub Web editor) | 5 files
Merge pull request #870 from jstuder-gh/sig_hash_to_arr

Change getsignals output from hash to array
19:00 japhb joined 19:08 Ven`` joined 19:10 Ven`` left, Ven`` joined 19:11 Ven`` left, Ven`` joined 19:13 Ven`` left 19:14 Ven`` joined 19:16 Ven`` left, Ven`` joined 19:18 Ven`` left 19:19 Ven`` joined 19:26 Ven`` left 19:27 Ven`` joined 19:31 Ven`` left 19:32 Ven`` joined 19:33 Ven` joined 19:36 Ven`` left 19:37 lizmat joined 19:38 Ven` left 19:40 Ven`` joined 19:41 Ven`` left 19:50 zakharyas joined 19:56 japhb left 20:37 zakharyas left 20:48 brrt joined 20:49 AlexDaniel`` left, wictory[m] left, ilmari[m] left
brrt \o 20:50
20:51 reportable6 left 20:52 japhb joined, coverable6 joined, quotable6 joined, reportable6 joined, shareable6 left
lizmat brrt: o/ 20:59
perlmonks.org/?node_id=1216491 # segfaulting Perl 6
brrt :'-( 21:02
i'll see what i can do
lizmat well, it's basically the known issue that adding keys to a hash is not threadsafe
and racy
brrt hmmmmmm 21:04
i'm not fully convinced we want to pay the price of a concurrent hashmap for all cases
lizmat well, it's bad that it segfaults / crashes 21:05
being able to trivially do that, is sorta bad PR
brrt yeah, i understand
lizmat but I think jnthn had ideas about that for the future
I *think* it only happens when two threads attempt to add a key at the same time 21:06
brrt there's things you can do to make it never crash (but still racy and quite possibly memory-leaking)
lizmat I think I can live with leaking and racy, and not crashy :-) 21:08
jnthn Well, exception crashy is acceptable, segv not 21:10
21:10 wictory[m] joined
lizmat ok, exception would be fine by me as well :-) 21:11
jnthn Well, you won't be getting a reliable exception, data loss will be equally likely. :)
(Basically, I figure we can detect concurrent resize attempts)
brrt the thing is that I don't know how to make that exception crashy *without* some form of atomic-cas or locking
lizmat well, as long as something can be caught
brrt jnthn: having not looked at uthash at all, are concurrent resize attempts our biggest problem? 21:12
i imagine that if uthash is linked there can be some dragons there
jnthn brrt: The scheme I was figuring on is that we allocate a blob of memory, make sure to never leave its bounds, and then 1) free it using the FSA on resize/growth, and 2) throw if we see the pointer change (which you could do as an atomic op) 21:13
brrt also, maybe (probably?) the VM should expose a concurrent hash map
jnthn No, we're not putting more data structures in at VM level.
Hashes are really darn useful as a VM/HLL interface so I'll live with that :) 21:14
And arrays you kinda have to
As for uthash - yes, it's a linked thing, which is why it can't really stay in the long run :)
Also it's not really memory efficient 21:15
brrt I've been thinking of a hash table design that enables us to do links + big-blob allocations
as in, preallocated slots with links (and a tiny table) 21:16
jnthn Yeah, there's plenty we can do :) 21:17
21:20 robertle joined
lizmat perlmonks.org/?node_id=1216507 # my reply 21:58
brrt hmm. I kind of wish you *hadn't* written the first bit though :-) 22:07
because that idiom does not at all dwym 22:08
lizmat indeed, but that was the point :-) 22:09
it runs to completion and *still* gives the wrong answer :-)
what jnthn was saying in his blog post: 6guts.wordpress.com/2014/04/17/rac...ess-leads/
over 4 years ago already
afk& 22:10
22:12 MasterDuke joined
jnthn I like how I put the words in the post title in an somewhat broken word order as a kind of meta-pun :P 22:27
22:28 robertle left
timotimo i didn't know that was considered wrong 22:33
jnthn It's not wrong so much as awkwarder :) 22:34
timotimo i'd have called it "poetic" 22:37
jnthn :)
22:40 brrt left
geekosaur same 22:41
or rhetorical, since prose
22:47 lizmat left 22:50 yoleaux joined 22:53 lizmat joined 23:16 wictory[m] left 23:37 wictory[m] joined 23:41 Kaiepi left