Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2017-08-11

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:10 quotable6 joined #moarvm
00:11 jnthn 'night o/
00:11 AlexDaniel quotable6: ^‘m:’\s+\w+‘=’
00:11 quotable6 AlexDaniel, https://gist.github.com/a54e3d181ee4622084d87c7d030a9f80
00:12 AlexDaniel timotimo: ? it is safe to accept env variables even after the commit (e.g. HEAD MVM_SPESH_DISABLE=1)
00:12 AlexDaniel that's from the whole irc history, almost
00:12 timotimo cool
00:12 timotimo i'll head to bed now
00:13 timotimo seeya later!
00:13 timotimo can't wait for brrt's talk :)
00:13 timotimo hope i'll get more continuous uninterrupted time for talk review tomorrow
01:14 evalable6 joined #moarvm
01:21 colomon joined #moarvm
01:51 ilbot3 joined #moarvm
01:51 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
02:19 sivoais joined #moarvm
02:20 lizmat joined #moarvm
02:29 mtj_ joined #moarvm
02:30 camelia joined #moarvm
03:55 pharv_ joined #moarvm
04:28 pharv_ joined #moarvm
04:44 AlexDani` joined #moarvm
07:03 lizmat joined #moarvm
07:38 lizmat joined #moarvm
07:49 lizmat joined #moarvm
08:26 zakharyas joined #moarvm
08:30 zakharyas joined #moarvm
09:00 lizmat joined #moarvm
09:02 pharv_ joined #moarvm
09:15 jnthn morning o/
09:18 lizmat joined #moarvm
09:39 lizmat joined #moarvm
09:52 nwc10 jgoo d *
09:52 nwc10 yes, it's latted lagged :-)
09:53 nwc10 brrt has just done a very good talk
09:53 jnthn latted? As opposed to americanod? :)
09:53 jnthn brrt++
09:53 nwc10 and a chunk of the room moved to flavio's talk on Perlito
10:10 lizmat joined #moarvm
10:31 timotimo o/
10:32 lizmat joined #moarvm
10:34 jnthn o/ timotimo
10:34 timotimo i don't see brrt's talk on the facebook page :o
10:35 nwc10 I think that only the main room is being streamed live (and hence I'll guess captured by Facebook)
10:36 nwc10 but there are cameras in all the rooms, and human servants making sure that they are happy
10:36 timotimo jnthn: how do you feel about .socket-host, .socket-port and .peer-host, .peer-port on IO::Socket::Async?
10:36 timotimo i'm convinced samcv's talk wasn't in the main room
10:36 jnthn timotimo: seems reasonable to me
10:36 nwc10 timotimo: schedule agrees with you: http://act.perlconference.org/tpc-2017-amsterdam/schedule?day=2017-08-10  :-)
10:37 nwc10 ie, only stuff in the left column will be live
10:38 timotimo except for samcv's talk which was live but not in the left column :)
10:38 nwc10 then there's something more nuanced than I first knew
10:38 timotimo reality is so messy!
10:41 timotimo jnthn: would a moar bump be safe right now?
10:47 jnthn timotimo: Should be. I'm doing memory leak hunting at the moment
10:49 timotimo fantastic, then i'll do the thing
10:49 timotimo finishing the spec test first
10:50 timotimo huh, fails in samemark and ignoremark, even though i'm on latest rakudo and merged my stuff into master
10:51 jnthn Yeah, I see them too :S
10:52 timotimo huh, IO::Socket::INET is also unhappy
10:53 timotimo i'll have to dig a bit deeper i suppose?
10:56 timotimo something going wrong with line breaks
11:14 timotimo oh the INET failure was already traced to a commit about "is default" vs "=" in the attributes in IO::Handle
11:17 dogbert17 joined #moarvm
11:18 Geth ¦ MoarVM/master: 5 commits pushed by (Timo Paulssen)++
11:18 Geth ¦ MoarVM/master: cafe709765 | the listen callback shall also push socket and peer ip & port
11:18 Geth ¦ MoarVM/master: ba2ef171d3 | you use VMString to decode strings, box it in BOOTStr
11:18 Geth ¦ MoarVM/master: 527615e39d | return undefined hosts and ports in error cases
11:18 Geth ¦ MoarVM/master: c0853d24f6 | also pass socket and peer names for outgoing connections
11:18 Geth ¦ MoarVM/master: 5e94da03ad | Merge branch 'asyncsocket_listen_sockname'
11:18 Geth ¦ MoarVM/master: review: https://github.com/MoarVM/MoarVM/compare/955a9cd1a8...5e94da03ad
11:27 brrt joined #moarvm
11:30 brrt \o
11:31 timotimo o/ brrt
11:31 timotimo how'd your talk go?
11:31 brrt ehm, okay i guess :-)
11:31 timotimo heh.
11:31 brrt i hope people could make some sense out of it
11:32 brrt nine++ helpfully reminded me of some words i forgot
11:32 timotimo english can be hard :)
11:34 markmont joined #moarvm
11:34 lizmat joined #moarvm
11:41 nine Talking can be hard :)
11:42 nwc10 sometimes talking is easy, but making sense is hard
11:42 nwc10 (and knowing when to stop even harder)
11:43 brrt hehe
11:44 nine Ok, for those who weren't there: brrt did great :) Very interesting talk and very helpful. I really feel like I can contribute to the expression JIT now.
11:46 brrt thanks nine :-)
11:47 brrt question.. i have 42.WHO.WHAT, and that is a (Stash)
11:47 brrt 42.WHO.WHAT.HOW doesn't work
11:47 brrt should it?
11:47 timotimo m: say Stash.HOW
11:47 camelia rakudo-moar 76af17: OUTPUT: «No such method 'gist' for invocant of type 'Perl6::Metamodel::ClassHOW+{<anon>}'. Did you mean 'isa'??  in block <unit> at <tmp> line 1??»
11:49 brrt heh, i see
11:50 brrt i get 'no such method WHERE"
11:56 timotimo huh
11:56 brrt yeah
11:57 brrt it's not spesh-sensitive
12:04 brrt oh man, you bumped again, i need to merge again :-)
12:04 brrt i'll never get any real work done :-P
12:05 timotimo sorry :<
12:11 brrt joined #moarvm
12:19 tbrowder joined #moarvm
12:19 timotimo joined #moarvm
12:19 ggoebel joined #moarvm
12:23 zakharyas joined #moarvm
12:38 brrt hehe, i was kidding you know :-)
12:38 timotimo yeah
12:57 brrt hmm, i'm thinking of fixing jit-dump to work on  windows
12:58 timotimo that's the thing that disassembles the jit blobs that we dump into a folder?
12:59 brrt yeah, no, it's the thing that drives other porgrams to generate and disassemble the jit blobs
12:59 brrt :-)
12:59 brrt it used to be part of jit-bisect
12:59 timotimo oh
13:00 brrt and one thing it does is set up a pipeline between objdump and jit-comparify-asm, and that doesn't work on windows
13:02 timotimo "comparify" <3
13:03 lizmat joined #moarvm
13:10 brrt could also have called it diwm-for-difff, i guess
13:10 brrt *dwim
13:30 lizmat joined #moarvm
13:57 lizmat joined #moarvm
14:00 lizmat joined #moarvm
14:28 lizmat joined #moarvm
15:08 lizmat joined #moarvm
15:35 lizmat joined #moarvm
15:41 dogbert17 joined #moarvm
15:44 lizmat joined #moarvm
16:18 Geth ¦ MoarVM: e0ac570401 | (Jonathan Worthington)++ | src/gc/collect.c
16:18 Geth ¦ MoarVM: Don't set a bit we're meant to be clearing.
16:18 Geth ¦ MoarVM:
16:18 Geth ¦ MoarVM: In the case this is an object that we're promoting because it has an
16:18 Geth ¦ MoarVM: object ID rather than having been seen in the nursery before, we'd
16:19 Geth ¦ MoarVM: end up setting the "seen in nursery" bit. It appears to have not
16:19 Geth ¦ MoarVM: really mattered, but could cause confusion down the road.
16:19 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/e0ac570401
16:19 Geth ¦ MoarVM: 7d38e51ce1 | (Jonathan Worthington)++ | src/io/asyncsocket.c
16:19 Geth ¦ MoarVM: Harden listen_cancel against dupe calls.
16:19 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/7d38e51ce1
16:32 Geth ¦ MoarVM: 0d2e5f8cc0 | (Jonathan Worthington)++ | src/gc/collect.c
16:32 Geth ¦ MoarVM: Revert "calloc a tospace instead of memset old fromspace."
16:32 Geth ¦ MoarVM:
16:32 Geth ¦ MoarVM: In theory, this should have helped a good bit. It did make the numbers
16:32 Geth ¦ MoarVM: from callgrind look an awful lot better. However, further testing has
16:32 Geth ¦ MoarVM: been less encouraging; it seems it can cause increased memory use and,
16:32 Geth ¦ MoarVM: on more practical multi-threaded benchmarks, seems to be a slowdown.
16:32 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/0d2e5f8cc0
16:36 lizmat joined #moarvm
16:54 timotimo hm kind of makes sense that malloc and friends are locked for multithreading
16:58 brrt joined #moarvm
18:17 timotimo this is strange, i'm looking at a specialization of postcircumfix:<[ ]> which has a param_rp_o left in it even though it's a certain specialization for an obj, obj callsite
18:18 timotimo and for some reason its checkarity is also still there, isn't that supposed to go away when we have a callsite we're specializing for?
18:31 ilmari[m] joined #moarvm
18:32 harrow joined #moarvm
19:03 jnthn timotimo: Hm, that is surprising.
19:04 jnthn A certain one, except for the non-interned callsite, should still rewrite to sp_getarg and friends ideally
19:16 timotimo right, i've just grabbed a sub from subway, but i'll look into this a bit later on
19:17 jnthn With meatballs? :)
19:17 * jnthn hasn't had subway for...maybe a decade...
19:21 timotimo nah, just turkey & ham
20:06 ilmari[m] joined #moarvm
20:23 markmont joined #moarvm
20:56 timotimo anyway, the args stuff breaks off for the second parameter, which is a param_rp_i and the callsite has an obj there, but we don't have a type tuple
21:00 timotimo i wonder if in the absence of a type tuple it'd be fine to assume it's all right and do the sp_param_o and unbox?
21:02 MasterDuke thanks timotimo for the thumbs-up on https://github.com/MoarVM/MoarVM/pull/626, anyone else have input?
21:07 MasterDuke on a completely different topic, would it be possible for the default build of MoarVM to have both a regular and debug moar binary created?
21:07 MasterDuke and then have rakudo's perl6-gdb-m and perl6-valgrind-m use those?
21:08 jnthn MasterDuke: It'd mean compiling everything twice, pretty much
21:08 jnthn And linking
21:09 MasterDuke a couple times people have reported segvs and such and we've asked them to run perl6-(gdb|valgrind)0m but the output isn't very useful without moarvm
21:09 jnthn I know that not everyone has hardware that can do a clean MoarVM build in 5 seconds
21:09 MasterDuke *a moarvm built with debuging turned on
21:09 jnthn But it's not that much time
21:09 jnthn Maybe we should provide some script that can do a debug build of Moar?
21:10 MasterDuke i'm thinking about the pre-built packages provided by the distros
21:10 jnthn Ah
21:10 MasterDuke who really cares if those take an extra 30s to build?
21:10 jnthn Not sure we can do much there...
21:10 jnthn Uh, me?
21:11 jnthn I build MoarVM dozens of times a day... :)
21:11 jnthn But I also wonder how it'll work packaging wise
21:11 jnthn Hm, and do we even package the gdb/valgrind scripts?
21:11 MasterDuke yeah
21:11 jnthn Hmm
21:12 jnthn They aren't so useful without a debug build, but I'm not aware of what distros do in this regard
21:12 MasterDuke they run the same moar binary, but what if they ran a moar-debug instead?
21:12 timotimo how do distros like fedora have separate -dbg packages with debug symbols?
21:13 jnthn timotimo: Dunno, but that sounds worth looking into
21:13 timotimo objcopy --only-keep-debug "${tostripfile}" "${debugdir}/${debugfile}"
21:13 timotimo strip --strip-debug --strip-unneeded "${tostripfile}"
21:13 timotimo objcopy --add-gnu-debuglink="${debugdir}/${debugfile}" "${tostripfile}"
21:15 Geth ¦ MoarVM: the-eater++ created pull request #630: Add unix socket support
21:15 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/pull/630
21:16 eater \o/
21:16 jnthn ooh
21:16 jnthn eater++
21:17 jnthn afk for a bit, will look at it after I'm back :)
21:17 eater this is my first time writing C, so yea feel free to give feedback
21:17 eater thanks :)(
21:21 timotimo the annswer, of course, is you can't just unbox_i for shits and giggles because it could be a num or str instead
21:21 timotimo and if we knew it'd be an Int-ish we'd have that in the type tuple
21:21 timotimo now why don't we have a type tuple, that's the real question i should be asking, perhaps
21:30 timotimo probably because the one i was looking at was the one that had hardly any hits :P
21:32 timotimo nope, it did have hundreds of hits
21:32 timotimo not a single type tuple recorded
21:32 timotimo i'm not sure how exactly that works
21:33 timotimo eater: did you see my very recent commit that adds support for getting the IP for the local and remote end of sockets? doesn't that require some changes to my code?
21:33 eater timotimo: no :o
21:33 mtj_ joined #moarvm
21:33 timotimo oh!
21:33 timotimo this is syncsocket
21:33 timotimo not asyncsocket
21:34 timotimo important letter there :)
21:34 eater yeah, asyncsocket is a bit more complicated
21:34 timotimo just a lil :)
21:34 eater altho async also uses MVM_io_resolve_host_name
21:34 timotimo have to learn the uv api
21:35 timotimo oh, hmm, so if we pass a high port it'll get a unix domain socket instead and maybe b0rk
21:35 timotimo though since i pass the size of the struct it will pass it'll just not write anything, i'd expect
21:35 timotimo might want to make the code a bit robust for this
21:36 eater timotimo: hmmm, where do you do that?
21:37 timotimo for example in asyncsocket.c line 706
21:37 eater ah :')
21:38 timotimo i expect sockaddr_storage will also be big enough for domain sockets
21:38 timotimo but my push_name_and_port function, which lives at 482, doesn't expect that address family
21:39 eater hmm
21:39 eater this is gonna be fun :')
21:39 eater I mean, what port should I even return
21:39 timotimo Int
21:39 eater Int:U?
21:40 timotimo yup
21:40 timotimo there's code in the error handling branches that does that
21:40 timotimo it's super simple
21:42 timotimo the code would have to change a little, though
21:43 eater in what do you write C btw?
21:43 eater CLion is being a whiny bitch :')
21:43 timotimo vim
21:44 eater nice
21:44 timotimo because i'm a mad man
21:44 timotimo i'd like a bit more IDE for my C, actually
21:44 eater I started there too ye
21:44 timotimo BBL
21:44 eater o/
22:01 dogbert17 joined #moarvm
22:10 eater anyway, i'll be off too, will look tomorrow at asyncsocket{,udp}.c
22:29 timotimo re
22:29 timotimo cool
22:29 timotimo thanks alot
22:33 timotimo do we have a way of invoking frames that doesn't log type tuples?
22:36 Geth ¦ MoarVM: 348b4262de | (Timo Paulssen)++ | src/io/asyncsocket.c
22:36 Geth ¦ MoarVM: don't do something silly for unknown address families
22:36 Geth ¦ MoarVM:
22:36 Geth ¦ MoarVM: like support for unix domain sockets which is coming soon
22:36 Geth ¦ MoarVM: review: https://github.com/MoarVM/MoarVM/commit/348b4262de
22:36 timotimo this should let us have domain sockets and not explode violently :)
22:37 timotimo it just won't give you a hostname
23:02 jnthn timotimo: A certain specialization is one that doesn't do any kind of type-based speculation
23:03 timotimo right
23:03 timotimo why do i see zero type tuples in the spesh stats?
23:05 timotimo i'll try a friend's ram to see if only my ram unit is broken or something in the more expensive rest of the laptop
23:07 jnthn Anywhere, or for a particular frame?
23:32 timotimo postcircumfix:<[ ]> for obj, obj
23:32 timotimo i have a workload that has CArray stuffs
23:33 lizmat joined #moarvm
23:33 timotimo my friend's ram doesn't work in my device, so i busted the ram slot somehow
23:34 timotimo but his ram didn't take any damage and i'll sell the ram i had to the guy sat next to me
23:36 jnthn Such is hardware...
23:36 timotimo haha, it made his machine hang
23:37 jnthn Sold! :P
23:38 timotimo "sorry, no take-backs"
23:38 timotimo "you broke it, you pay it"
23:45 timotimo memtest has beautiful display errors
23:47 timotimo gonna drive home for some sleeps

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary