Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2014-03-31

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

All times shown according to UTC.

Time Nick Message
00:02 colomon joined #moarvm
00:50 dalek joined #moarvm
01:25 ilbot3 joined #moarvm
01:25 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
01:49 FROGGS joined #moarvm
02:00 woosley joined #moarvm
02:25 benabik joined #moarvm
06:36 FROGGS joined #moarvm
07:13 brrt joined #moarvm
07:29 brrt hi #moarvm
07:29 nwc10 hi brrt
07:29 FROGGS morning brrt
07:30 FROGGS <jnthn> .tell brrt I'm on target to have the initial code available on Tuesday
07:30 FROGGS <jnthn> bah, no message bot here
07:30 FROGGS <--- le message bot
07:31 brrt i've seen it Froggs, thanks :-)
07:31 brrt hi nwc10
07:31 FROGGS :o)
07:31 brrt i read backlogs too ;-)
07:32 FROGGS okay, noted
07:32 brrt but thanks anyway
07:32 brrt awesome, excited
07:33 FROGGS me too
07:34 FROGGS quite a few nice thing are happening atm
07:34 FROGGS things*
07:34 brrt uhuh
07:34 brrt i'd like to help out with the whole lock-placement things,but i'm a bit strapped for time right now
07:45 cognominal joined #moarvm
08:58 woolfy1 joined #moarvm
10:02 cognominal FROGGS prend son pied à fait le bot.
10:04 FROGGS cognominal: google translates it as "takes his foot made ​​the bot", but somehow I doubt that this is correct :o)
10:05 cognominal that's a indirect pun about "pied bot"
10:06 jnthn mmm...pie bot
10:07 brrt :-)
10:07 * brrt lunches
10:07 cognominal "il prend son pied" is translated litteraly by Google but really means to "he enjoys himself"
10:08 cognominal and pied bot is http://fr.wikipedia.org/wiki/Pied_bot
10:08 cognominal btw, s/fait/faire/ on my original sentence
10:45 masak "FROGGS enjoys himself creating the bot"?
10:46 jnthn playing the bot, maybe
10:46 jnthn or being
10:50 cognominal yup
10:51 cognominal polysemy makes google-translate a fool all the time.
11:03 masak oh, "acting the bot".
11:04 colomon joined #moarvm
11:04 masak cognominal: polysemy is probably AI-complete ;)
11:06 cognominal nope "playing/being" the bot is/are correct
11:07 masak oki
11:09 cognominal il y du jeu dans les langages naturels.   "Jeu" meaning either game or http://en.wikipedia.org/wiki/Backlash_(engineering)
11:12 masak marvellous.
11:40 zakharyas joined #moarvm
12:09 colomon joined #moarvm
12:35 JimmyZ joined #moarvm
12:44 colomon joined #moarvm
13:48 btyler joined #moarvm
13:59 jnap joined #moarvm
14:02 btyler joined #moarvm
14:13 woolfy1 left #moarvm
14:37 FROGGS[mobile] joined #moarvm
14:51 zakharyas joined #moarvm
14:51 FROGGS joined #moarvm
15:32 brrt left #moarvm
15:47 benabik joined #moarvm
16:13 FROGGS_ joined #moarvm
16:44 jnap1 joined #moarvm
17:17 dalek MoarVM: 26e829f | gerd++ | Configure.pl:
17:17 dalek MoarVM: add the both flags 'has-libuv and 'has-libatomic_ops'
17:17 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/26e829fb74
17:18 jnthn gerd also notes, "I think there will no other flags for the Fedora build needed."
17:18 jnthn So looks like we're in decent shape for packagers.
17:30 FROGGS cool!
17:31 nwc10 that sounds like a challenge :-)
17:42 jnthn well, gerd++ is working on it for fedora. :)
18:11 colomon joined #moarvm
18:13 timotimo is that gerd or not_gerd?
18:13 FROGGS gerd
18:13 timotimo OK
18:14 timotimo i still wonder what not_gerd is up to these days
18:15 FROGGS yeah, me too
18:15 FROGGS I really hope he is well
18:29 brrt joined #moarvm
18:35 jnap joined #moarvm
18:57 dalek MoarVM: 57f735a | (Tobias Leich)++ | src/math/bigintops.c:
18:57 dalek MoarVM: shortcut shr when we have a small lhs but rhs is >= 32
18:57 dalek MoarVM:
18:57 dalek MoarVM: Otherwise we will run into issues where a >> 32 == a, at
18:57 dalek MoarVM: least on gcc.
18:57 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/57f735a0b0
19:15 dalek MoarVM: 02c7ece | jnthn++ | src/io/syncstream.c:
19:15 dalek MoarVM: Revert "First pass at locking for syncstream."
19:15 dalek MoarVM:
19:15 dalek MoarVM: This reverts commit 1261936ddb75e91c78a91d830dad3a575d17ffe3. We'll
19:15 dalek MoarVM: take a safer, more general, approach.
19:15 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/02c7ecebc2
19:15 dalek MoarVM: eceea4c | jnthn++ | src/core/ (3 files):
19:15 dalek MoarVM: Add infrastructure for mutex release on exception.
19:15 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/eceea4c711
19:15 dalek MoarVM: 81d57d5 | jnthn++ | src/io/io.c:
19:15 dalek MoarVM: Protect all I/O operations using handle mutex.
19:15 dalek MoarVM:
19:22 timotimo i like the sound of that
19:29 lue joined #moarvm
19:36 jnap joined #moarvm
19:37 colomon joined #moarvm
19:43 brrt if i understand it correctly, the thread context is now provided with a mutex especially for when an exception is thrown
19:43 brrt i'm not so sure that is a good idea
19:44 brrt it maybe better - perhaps - to write macro's to create a try/catch/finally kind of idiom
19:44 brrt but i'm not so sure about that, either
19:44 jnthn brrt: This basically *is* one.
19:44 brrt well, what happens when you forget to 'clear' the exception mutex?
19:44 jnthn brrt: Note the code path its on: exceptions thrown inside VM internals. Not general user-land ones.
19:45 brrt true
19:45 jnthn brrt: Same as happens if you forget to unlock one.
19:45 brrt but in that case, why not keep the unlocking local
19:45 jnthn Because exceptions are non-local.
19:45 jnthn We lngjmp back to the interpreter.
19:45 brrt i agree, its just - there are now two paths in which the mutex can be cleared
19:45 jnthn In the normal non-exceptional case, we never hit this.
19:46 brrt 'normally' and 'via the exception'
19:46 jnthn Right, the happy path and the sad path.
19:46 jnthn *nod*
19:46 brrt in other words, why don't we do the 'goto exception' cleanup dance that is typicall in c-land?
19:46 jnthn I think I'd rather not try and invent a try/catch/finally mechanism in C when we already have lngjmp going on.
19:46 brrt true
19:47 brrt wouldn't work anyway, with what i'm imagining
19:47 jnthn Thing is that exceptions can be thrown fairly "deep" in IO stuff (such as, in the decoder).
19:48 brrt you could make an argument that the thread itself take a list of all mutexes that are held
19:48 brrt threadcontext object
19:48 jnthn Well, if we ever get to a "taking multiple" situation we can make it a stack
19:48 jnthn But I really hope not.
19:48 colomon joined #moarvm
19:49 jnthn Because as soon as you're taking multiple you're asking for deadlocks.
19:49 brrt it depends i guess
19:49 brrt multiple locks are common in stuff like queues
19:50 jnthn You don't take both though.
19:50 brrt i'm just saying, i guess, that stuffing a single mutex into the thread context for cleanup when an exception is thrown seems like something that will be broken
19:50 brrt .. no i agree
19:50 jnthn I agree it's fragile, but it was the second thing after the first thing was far more fragile.
19:50 jnthn C doesn't really provide us good ways to do this.
19:50 brrt maybe we'll come up with a better solution
19:51 brrt no indeed
19:51 brrt c++ has the compiler fix it for you, i believe
19:51 jnthn I'm fine with that, but whatever it is should be easy to reason about.
19:53 brrt longjmp isn't easy to reason about :-)
19:54 brrt (for many other things, though, i think C is the knee's bees. not for exception handling, though)
19:55 jnthn Right, that's why I only want *one* longjmp'ing thing in the VM if possible :)
19:57 jnap joined #moarvm
19:57 brrt as a manner of distraction, want to see mergesort-for-linked-lists-in-scheme?
19:58 brrt some blogger i read said 'don't sort linked lists on a whiteboard during an interview' and i thought it'd be a nice challenge
19:59 jnthn People say "don't do live demos" but I always ignore that too :P
19:59 brrt and rightly so
19:59 * jnthn could glance it :)
19:59 brrt https://github.com/bdw/lab/blob/master/scheme/mergesort.scm with pride :-)
20:00 brrt the point to notice is that i only spend n time to 'divide' the list once
20:01 jnap1 joined #moarvm
20:01 brrt in a more naive implementation i'd spend n time for each 'division' which doesn't affect asymptotic runtime but is not very efficient anyway
20:04 jnthn Cute :)
20:07 brrt thanks :-)
20:07 * jnthn glances the rosettacode one out of curiosity
20:07 brrt i'm a closet lisp / scheme fan
20:07 brrt d'oh, rosettacode
20:10 jnthn I didn't do enough of those, though I went to a "Build your own lisp for great justice" talk a few months ago and started hacking a lisp compiler in NQP in it :)
20:11 brrt nice
20:15 jnthn bbi10
21:09 jnap joined #moarvm
22:28 colomon joined #moarvm
23:45 woolfy joined #moarvm
23:55 lizmat joined #moarvm
23:58 jnap joined #moarvm

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