Show enters and exits. Hide enters and exits.
| 00:17:50 | postmodern | brixen, so i deleted rubinius and recloned it |
| 00:18:00 | postmodern | brixen, im still getting failures wrt Process.wait2 |
| 00:18:13 | brixen | postmodern: yep, I repro'd them yesterday |
| 00:18:20 | brixen | but you were already gone |
| 00:18:27 | brixen | I'll take a look at them |
| 00:18:43 | postmodern | brixen, dbussink had be run the script manually in gdb |
| 00:19:01 | postmodern | brixen, looks like some destructor failure |
| 07:03:47 | dbussink | morning :) |
| 13:30:22 | goyox86 | dbussink: morning! |
| 13:33:03 | dbussink | goyox86: morning |
| 13:33:30 | goyox86 | dbussink: how are you man? |
| 13:33:43 | goyox86 | dbussink: working on hydra? |
| 13:36:16 | dbussink | goyox86: nope, doing payed work atm :p |
| 13:36:58 | goyox86 | dbussink: :) |
| 13:37:50 | dbussink | goyox86: one has to make some money too :) |
| 13:37:59 | dbussink | not that i don't like it btw |
| 13:38:12 | goyox86 | dbussink: agree :) |
| 13:42:01 | dbussink | goyox86: so what do you do? |
| 13:43:28 | goyox86 | dbussink: I'm a web developer, (working RoR), but i love programming languages, vm's so that's why i became interested in rbx :] |
| 13:45:45 | goyox86 | dbussink: I'm based in Venezuela (South America) |
| 13:47:09 | dbussink | goyox86: already thought so because of the hostname ;) |
| 15:31:28 | goyox86 | is there some one working on porting rbx to windows? |
| 15:31:49 | goyox86 | i know this is not priority, just asking |
| 15:37:58 | krrrronos | somebody forked rubinius for that, I don't remeber who it was |
| 15:38:18 | krrrronos | *remember |
| 15:38:53 | goyox86 | krrrronos: i see |
| 15:48:19 | boyscout | CI: rubinius: 725c432 successful: 3511 files, 15076 examples, 42901 expectations, 0 failures, 0 errors |
| 17:21:31 | tarcieri | well, here's my whole rant on why threads are good: http://www.unlimitednovelty.com/2010/08/multithreaded-rails-is-generally-better.html |
| 17:23:02 | brixen | tarcieri: woot woot woot |
| 17:23:06 | brixen | reads now... |
| 17:23:35 | tarcieri | heh |
| 17:33:46 | tarcieri | brixen: what ya think? |
| 17:34:43 | brixen | tarcieri: sorry, fixing an rbx thing for carllerche |
| 17:34:54 | tarcieri | heh ok |
| 17:35:10 | carllerche | i'm needy |
| 17:35:13 | brixen | it's very complicated, involves booting linux |
| 17:35:20 | tarcieri | haha |
| 17:36:26 | carllerche | saying "threads are bad when they share data" is like saying "memory is bad when you leak it" (maybe not the best analogy, but something like that) |
| 17:37:08 | brixen | that's pretty good actually |
| 17:37:29 | carllerche | sharing data for highly concurrent apps is bad no matter how you do it |
| 17:38:08 | brixen | well, shared data does not make threads bad, any more than your crappy program makes memory bad |
| 17:38:38 | cremes | tarcieri: good article; i need to think on it before sharing any feedback |
| 17:39:43 | carllerche | when you write async apps, either you share data and can only use 1 core, or you don't share data, in which case, you could write the same logic using threads |
| 17:39:49 | carllerche | and it would be easier to follow |
| 17:39:50 | carllerche | (imo) |
| 17:39:52 | tarcieri | cremes: cool, thanks |
| 17:40:16 | brixen | all things in moderation |
| 17:40:17 | carllerche | but yes, threads make perfect sense for an HTTP request |
| 17:40:25 | brixen | you will share some data no matter what |
| 17:40:29 | tarcieri | brixen: yeah, it's more that when threads don't share state, they don't have the potential for thread synchronization errors |
| 17:40:47 | brixen | tarcieri: indeed |
| 17:49:07 | cremes | tarcieri: first bit of feedback... code examples always make things clearer (for me) |
| 17:49:27 | cremes | some examples of inversion of control versus synchronous would make the article clearer |
| 17:49:39 | cremes | also a quick example of reia would be neat |
| 17:49:41 | tarcieri | cremes: aah, yeah good point |
| 17:49:55 | tarcieri | there's an example of Reia on wiki.reia-lang.org, heh |
| 17:50:19 | cremes | sure, but embed it in the article so folks don't have to chase links all over (if they don't want to) |
| 17:50:43 | tarcieri | yeah |
| 17:51:03 | cremes | i haven't looked at reia in a long time (at least a year) so this is a good time for me to take another peek |
| 17:51:37 | tarcieri | it was coming along well, then I got all crazy busy again |
| 17:51:57 | brixen | tarcieri: I 2nd the code samples feedback |
| 17:52:22 | tarcieri | hrmm, wonder if I can really quick sneak some in :) |
| 17:52:27 | brixen | tarcieri: excellent overview I think |
| 17:52:32 | BrianRice-work | rosetta code might be a good source for examples. I used it for Slate |
| 17:52:39 | tarcieri | thanks |
| 17:52:46 | brixen | tarcieri: I'd consider the post a work in progress, since it's more like a paper |
| 17:52:55 | brixen | tarcieri: feel free to revise it |
| 17:53:03 | nicksieger | I wonder if em-synchrony is basically a threading library on top of events. haven't looked at it yet |
| 17:53:04 | tarcieri | wtf blogger inaccessible? |
| 17:53:22 | tarcieri | nicksieger: well, cooperative "threading" |
| 17:53:22 | tarcieri | heh |
| 17:53:47 | tarcieri | oh I see, office DNS down... |
| 17:53:54 | tarcieri | switch to Google ohnoez! |
| 17:54:53 | nicksieger | tarcieri: yeah, i'm referring to a something I read about a guy who was working in an async model but didn't like the callbacks so he wrote a library to manage the state for the state machine and when he was done, he basically found he had implemented a threading library |
| 17:55:08 | tarcieri | nicksieger: sounds like what I went through :) |
| 17:55:22 | BrianRice-work | I see |
| 18:04:22 | tarcieri | all right, well I added a small code example |
| 18:04:23 | tarcieri | heh |
| 18:04:31 | tarcieri | not much, could probably use more, but it's better than nothing |
| 18:05:20 | boyscout | Removed unneeded ncurses dep in readline ext. - 9260460 - Brian Ford |
| 18:07:18 | jakedouglas | tarcieri: not that i really care about EM anymore, but you know the write completion thing you keep talking about is like a 5 line patch right? :p |
| 18:07:46 | tarcieri | jakedouglas: I tried to add it one time and got tired of spelunking around the C++ code |
| 18:07:52 | tarcieri | but that was like 4 years ago |
| 18:08:00 | jakedouglas | heh. i promise its *really* easy |
| 18:08:11 | tarcieri | why hasn't it ever been added then? |
| 18:08:21 | jakedouglas | and the proxying case that you mention is handled by something else |
| 18:08:30 | jakedouglas | and thats kind of the only case where it's really a problem |
| 18:08:35 | tarcieri | yes, use-case specific solutions instead of a general one |
| 18:09:04 | jakedouglas | shrug. i've never seen anyone complain about it over 2-3 years exception for the proxy case |
| 18:10:07 | jakedouglas | s/exception/except |
| 18:10:28 | tarcieri | well, point still stands without it you can't implement a "blocking" write with Fibers |
| 18:10:32 | jakedouglas | yea, it's never been added because no one has ever asked for it until you |
| 18:10:37 | jakedouglas | heh |
| 18:11:01 | tarcieri | I do know people who've run into it in the proxy case |
| 18:11:02 | jakedouglas | yea i dont really care anymore about the general conversation, i just wanted to nitpick over that minor detail |
| 18:11:03 | jakedouglas | :p |
| 18:11:06 | tarcieri | haha |
| 18:11:32 | tarcieri | every time I've tried to patch EventMachine it's just been an exercise in frustration, but maybe it's been refactored quite a bit since |
| 18:11:59 | tarcieri | Francis had a very... shall we say non-idiomatic style to his Ruby |
| 18:12:00 | jakedouglas | im sure its been worked on, that probably doesn't mean it's any easier to understand. |
| 18:12:04 | tarcieri | heh |
| 18:12:47 | jakedouglas | i just happen to know where the 5 lines would need to go, that's all :p |
| 18:12:50 | tarcieri | nice |
| 18:13:26 | tarcieri | I've thought about trying to port Revactor to EventMachine |
| 18:13:27 | jakedouglas | yea, EM is and always has been a huge mess though. i dont blame you for giving up on patching it. |
| 18:13:31 | tarcieri | or at least let it support both Rev and EventMachine |
| 18:13:39 | tarcieri | but yeah, that's the missing piece |
| 18:14:36 | jakedouglas | its just not even worth working on, i dont really believe in it enough to write it properly heh |
| 18:15:16 | tarcieri | don't stop believin' |
| 18:15:19 | tarcieri | and why? |
| 18:15:19 | tarcieri | heh |
| 18:15:28 | jakedouglas | in general i would not choose to write a network server in EM anymore |
| 18:15:41 | tarcieri | yeah same here |
| 18:15:46 | jakedouglas | i duno, why do you think? its just a mess |
| 18:15:55 | tarcieri | yeah |
| 18:15:59 | jakedouglas | i would almost rather it didnt scale than dealing with all that shit heh |
| 18:16:12 | tarcieri | it'd be interesting to port Rev to libevent's buffered I/O |
| 18:16:31 | jakedouglas | i used to think it was really cool but i've seen the light and realized its just a bitch for creating real products with |
| 18:17:22 | tarcieri | yeah |
| 18:17:31 | tarcieri | maybe I'll do a talk on Rev and Revactor at RubyConf :) |
| 18:17:32 | brixen | funny how 10 lines of a demo look completely different in another context |
| 18:17:47 | jakedouglas | if i had something that was honestly appropriate for that kind of thing and i couldnt use erlang, i would probably use node just because it's actually maintained unlike the ruby tools |
| 18:17:57 | brixen | methods generally do not give you enough context to understand where they are appropriate |
| 18:18:01 | brixen | you find that out the hard way |
| 18:18:03 | poet | does the standard library attempt to track Ruby's or are there Rubinius specific extensions? |
| 18:18:17 | brixen | poet: come again? |
| 18:18:36 | poet | brixen: are there parts of Rubinius' standard library that are not in MRI ? |
| 18:18:47 | brixen | poet: hm, some yes |
| 18:18:55 | tarcieri | jakedouglas: it seems for a lot of those use cases there's off-the-shelf stuff written in C |
| 18:19:06 | poet | how are contributions of that nature treated ? |
| 18:19:13 | brixen | poet: lib/rubinius lib/debugger |
| 18:19:21 | jakedouglas | i would rather build stuff on a platform thats maintained, has libs actively being built, and written by someone who can actually write clean C/C++ |
| 18:19:22 | brixen | poet: contributions to rubinius? |
| 18:20:09 | poet | brixen: say for example someone wrote a Net::VNC (or whatever) implementation. Is that something that Rubinius would include? |
| 18:20:26 | brixen | poet: depends, it's certainly possible |
| 18:20:33 | brixen | poet: you'd just have to make a case for it to evan |
| 18:20:38 | poet | VNC is a bad example, but some fundemental protocol that makes sense to have in a standard library |
| 18:20:42 | brixen | poet: for example, we include an Actor lib |
| 18:20:48 | poet | ah, ok |
| 18:21:03 | brixen | poet: we'd probably prefer it be a gem |
| 18:21:15 | brixen | in general, we thing stdlib should be gems in the first place |
| 18:21:23 | brixen | er think also |
| 18:21:47 | brixen | poet: is there a reason gem doesn't work for your case? |
| 18:21:51 | poet | brixen: how to the TLS extensions to FTB and Telnet fit in? |
| 18:21:55 | poet | *FTP |
| 18:21:59 | poet | that you are working on? |
| 18:22:20 | brixen | I'm not aware of any TLS extensions |
| 18:22:26 | brixen | is that a RSoC? |
| 18:22:30 | poet | http://github.com/evanphx/rubinius/blob/master/lib/net/ftptls.rb |
| 18:22:34 | poet | it's pretty old |
| 18:22:42 | poet | and not implemented |
| 18:22:52 | brixen | heh, no idea on that |
| 18:23:13 | poet | ok |
| 18:23:21 | poet | I like the idea of moving stdlib to gems ^_^ |
| 18:33:53 | boyscout | CI: rubinius: 9260460 successful: 3511 files, 15076 examples, 42901 expectations, 0 failures, 0 errors |
| 19:35:07 | tarcieri | yeah same here |
| 19:35:19 | tarcieri | Ruby stdlib has so much unmaintained junk in it |
| 19:44:55 | elux | hey guys |
| 19:45:04 | elux | i hear that rubinius is working on removing the GIL .. that is amazing |
| 19:45:18 | elux | i was wondering if rubinius is working on supporting 1.9? |
| 19:45:26 | elux | a lot of my code base has shifted to 1.9 at this point .. |
| 19:56:32 | kronos_vano | elux, As I know rubinius team doesn't work on supporting 1.9. Here is a more important things. |
| 19:58:47 | dbussink | elux: kronos_vano: actually brixen recently talked on getting the syntax changes in |
| 19:58:55 | dbussink | elux: what kind of features do you use? |
| 19:59:01 | elux | i would imagine it wouldnt be that difficult to add to rubinius |
| 19:59:05 | dbussink | i've found it pretty easy to support both actually |
| 19:59:06 | elux | dbussink: Process.spawn .. and Fibers |
| 19:59:20 | dbussink | elux: there's already a fiber implementation in rbx |
| 19:59:25 | dbussink | elux: you could try if that works |
| 19:59:36 | elux | does rubinius have a debugger? |
| 19:59:49 | elux | like ruby-debug .. and how comparable is its performance to 1.9.2 ? |
| 19:59:52 | dbussink | elux: a work in progress one yeah |
| 20:00:02 | dbussink | but off to play another sc2 game :P |
| 20:00:05 | elux | nice. |
| 20:00:12 | elux | i play too |
| 20:00:40 | elux | dbussink: ..another 1.9 thing i need are all the encoding support |
| 20:02:01 | brixen | elux: 1.9 support is coming soon |
| 20:02:08 | elux | that is amazing |
| 20:02:15 | elux | very impressive turn around |
| 20:02:56 | brixen | the difference in rbx between 1.8 and 1.9 is pretty much just hash syntax, splats, and encoding support |
| 20:03:04 | brixen | most of the rest is already in 1.8.7 |
| 20:03:15 | elux | yea.. i realize its not that much. the encoding is big for me |
| 20:03:24 | elux | plus some of my code assumes ordered hashes |
| 20:03:31 | elux | i could work around it |
| 20:03:49 | brixen | heh, order hashes *eyeroll* |
| 20:03:56 | brixen | that's actually really easy to add |
| 20:03:58 | elux | :P |
| 20:04:04 | brixen | elux: Hash is all in Ruby |
| 20:04:07 | elux | just saying.. it requires work for me |
| 20:04:10 | brixen | you could take a shot at adding it |
| 20:05:29 | elux | btw.. hows the working coming on removing the GIL and having truly native threads? that sounds amazing to me .. |
| 20:05:38 | elux | at that point .. would there be a real need for MVM? |
| 20:06:04 | brixen | MVM and truly concurrent threads are different use cases IMO |
| 20:06:16 | elux | what is the advantage of MVM? |
| 20:06:17 | brixen | you can see the work on removing the GIL in the hydra branch |
| 20:08:01 | elux | cool |
| 20:08:42 | brixen | mvm could be used to have process type separation behind an actor message passing scheme |
| 20:08:52 | brixen | process-like because each vm gets its own heap |
| 20:09:19 | elux | i see.. would you see use for mvm+native threads .. |
| 20:09:24 | elux | for better concurrency .. |
| 20:09:30 | elux | and making it efficient |
| 20:10:02 | brixen | mvm is implemented with native threads, yes |
| 20:10:20 | brixen | efficiency is not necessarily a function of concurrency ;) |
| 20:10:31 | brixen | so that assumption is confusing |
| 20:10:36 | elux | is there an mvm branch for rubinius? |
| 20:10:50 | brixen | there is no mvm branch, the code is in mainline but it's old |
| 20:11:02 | brixen | it needs to be fixed up some |
| 20:11:21 | brixen | |Blaze|: not much more than an additional process |
| 20:11:24 | elux | brixen: i meant more overall efficiency of distributing the work to the entire system .. cpu, disk i/o, network i/o |
| 20:11:31 | brixen | it's a full vm in a separate os thread |
| 20:11:44 | brixen | elux: again, that depends |
| 20:12:12 | brixen | with truly concurrent threading in rbx, you should be able to saturate a system with one vm instance |
| 20:14:50 | elux | i see |
| 20:24:13 | evan | afternoon. |
| 20:25:27 | brixen | hello hello |
| 20:26:02 | evan | i'm debugging a weird situation where a object seems to loose it's lock. |
| 20:26:23 | evan | lose, rather. |
| 20:28:06 | dbussink | evan: the hang in sysread? |
| 20:28:11 | evan | nope |
| 20:28:26 | dbussink | evan: ah, got that fixed? |
| 20:28:26 | evan | but it's mildly related. |
| 20:28:28 | evan | nope. |
| 20:28:36 | evan | trying to fix it |
| 20:28:39 | evan | and now getting another problem. |
| 20:29:03 | evan | i think i've found it. |
| 20:29:04 | dbussink | evan: ah, down the rabbit hole |
| 20:29:07 | evan | yep. |
| 20:29:20 | evan | i'll be back in LA tomorrow afternoon btw. |
| 20:29:25 | evan | for those who are stalking me. |
| 20:29:37 | dbussink | evan: you get that feeling from me ;) |
| 20:30:24 | evan | no, but i'll bet you get it from me when you mention stoopwaffles. |
| 20:30:43 | evan | ok, i think i found the lock issue. |
| 20:30:46 | evan | yay. |
| 20:31:17 | evan | and the per-object-locks seem to be working well. |
| 20:31:39 | dbussink | evan: i suspect you having a keyword alert on that one ;) |
| 20:31:44 | evan | :D |
| 20:32:49 | evan | thin locks weren't surviving past GC. |
| 20:32:59 | brixen | ahh I was wondering |
| 20:33:07 | evan | because they're bits in the header |
| 20:33:10 | brixen | when you said an object appeared to lose it's lock |
| 20:33:11 | brixen | yep |
| 20:33:22 | brixen | -' |
| 20:33:23 | evan | i'm going to improve how we move an object |
| 20:33:27 | evan | the code is all over the place. |
| 20:38:22 | evan | you guys think about synchronized ivar references any more? |
| 20:38:42 | brixen | I read about java memory model |
| 20:38:53 | evan | k, thats a great start. |
| 20:38:54 | evan | thoughts? |
| 20:39:02 | brixen | the approach you suggested sounds good |
| 20:39:11 | brixen | I mean, we absolutely need a memory model |
| 20:39:27 | brixen | I don't see a real need to make a particular ivar synchronized |
| 20:39:28 | evan | well, we'll HAVE a memory model whether we define it in english or not :) |
| 20:39:43 | brixen | it's ad hoc unless it's formalized |
| 20:39:47 | evan | yep. |
| 20:39:57 | evan | you mean it makes sense to have all ivars in a class be synch |
| 20:40:01 | evan | rather than just one ivar |
| 20:40:05 | evan | or rather, defined per ivar. |
| 20:40:09 | brixen | yeah, I think that seems fine |
| 20:40:19 | brixen | the class approach |
| 20:40:35 | brixen | if it becomes a real problem, we could refine it |
| 20:40:40 | brixen | it's a good balance to start |
| 20:41:08 | brixen | I think the most important thing I've heard about concurrency recently was your chat with mental about STM |
| 20:41:28 | brixen | he said that the concurrency facilities should be focused and limited |
| 20:41:37 | brixen | not something that affects everything |
| 20:41:43 | evan | right |
| 20:41:50 | evan | which was my big confusion with STM all these years |
| 20:41:51 | brixen | I think that's something that is missing from many folks mental model |
| 20:41:57 | brixen | yeah, me too |
| 20:42:41 | evan | now that I see that STM explicit rather than implicit, it's much clearer. |
| 20:42:55 | brixen | this, btw, is also the advice in The Art of Concurrency book I'm reading |
| 20:43:10 | brixen | ie, you carefully design the concurrent parts |
| 20:43:25 | brixen | you don't just whiz bang add some sauce and everything is concurrent |
| 20:43:52 | brixen | he also strongly recommends always starting with a tuned serial implementation and then design concurrency into it |
| 20:43:56 | evan | now even "special sauce" ?! (it's ketchup and mayo mixed) |
| 20:44:00 | evan | s/now/not/ |
| 20:44:04 | brixen | which is pretty much the path you've taken here |
| 20:44:15 | evan | rad. |
| 20:44:17 | brixen | heh, maybe there's an exception for special sauce |
| 20:44:22 | evan | sounds like I need to get that book. |
| 20:44:38 | brixen | it's really good so far, but basically an introduction |
| 20:44:44 | brixen | you may not learn a lot from it |
| 20:44:45 | evan | lets see if it's on kindle. |
| 20:44:58 | evan | (I wonder if my kindle works here) |
| 20:45:20 | evan | well to the great american deadzone |
| 20:45:23 | evan | welcome, rather. |
| 20:45:33 | evan | typing is failing me today. |
| 20:45:57 | evan | oh, there we go. |
| 20:45:58 | evan | yay. |
| 20:46:00 | brixen | I'm so close to getting an iPad |
| 20:46:12 | brixen | but a lot of the books I want are not on kindle yet |
| 20:46:36 | brixen | oh, btw, Genius Scan iphone app is the shit |
| 20:46:38 | brixen | and free |
| 20:46:54 | evan | oh, whats that? |
| 20:47:14 | brixen | also, apparently canon has a 20 ppm 2-side scanner that saves the image with transparent OCR'd text over it |
| 20:47:30 | brixen | so my book scanning project may have to commence soon |
| 20:47:55 | evan | huzzah! |
| 20:47:57 | brixen | genius scan uses the camera to take a pic and ocr it, so you can send it as a pdf |
| 20:47:59 | evan | it's on kindle. |
| 20:48:02 | brixen | sweet! |
| 20:48:08 | evan | and only $28 |
| 20:48:15 | brixen | not too bad |
| 20:48:25 | brixen | still pretty frustrated with the cost of ebooks |
| 20:48:34 | evan | you like it thus far? |
| 20:48:45 | brixen | the concurrency book? |
| 20:48:48 | evan | yeah |
| 20:48:54 | brixen | I think it's a good primer, yeah |
| 20:49:01 | evan | k |
| 20:49:05 | brixen | I've done some parallel programming before |
| 20:49:12 | brixen | so I'm not unfamiliar with concurrency |
| 20:49:32 | brixen | he explains differences between parallel and concurrent programming |
| 20:49:44 | brixen | the book is about multi-thread concurrent programming though |
| 20:49:44 | evan | gotcha |
| 20:49:49 | evan | i downloaded the sample |
| 20:51:25 | brixen | so, apparently google has patented a bunch of shit for book scanning |
| 20:51:47 | brixen | like projecting an infrared grid on the page and taking high res pics from multiple angles |
| 20:51:58 | brixen | then transforming the image flat and doing ocr |
| 20:52:04 | evan | google's new motto needs to be "Building Brian's ire daily." |
| 20:52:09 | brixen | heh |
| 20:52:13 | brixen | nah, this is just tech |
| 20:52:22 | brixen | I'm not opposed to some patents |
| 20:52:28 | brixen | just not software ones |
| 20:52:38 | brixen | but the NN thing really upsets me |
| 20:52:54 | brixen | google maps will be the hardest to replace |
| 20:53:03 | brixen | everything else is pretty easy |
| 20:54:17 | evan | bing maps? |
| 20:54:18 | evan | O_o |
| 20:54:19 | evan | :) |
| 20:54:27 | brixen | heh |
| 20:54:30 | brixen | duck duck map |
| 20:56:59 | evan | so, terms out that fastthread introduced the behavior that when a thread exits |
| 20:57:05 | evan | all it's locked mutexes are unlocked |
| 20:57:11 | evan | s/terms/turns/ |
| 20:57:37 | evan | given that MentalGuy wrote that logic, I understand why. |
| 20:58:21 | evan | we never actually supported that. |
| 20:59:41 | evan | man, I forgot how cool the weather is here |
| 20:59:56 | evan | afternoon rainshower for 15 minutes, then the sun is back out |
| 21:00:49 | brixen | hmm, morning rain shower for 15 and still no sun to speak of :) |
| 21:01:10 | evan | thats the great part about the mountains |
| 21:01:11 | evan | so much sun. |
| 21:01:21 | evan | the clouds move so fast |
| 21:01:50 | brixen | sounds nice |
| 21:02:01 | brixen | supposedly mid 90's here later this week |
| 21:02:40 | evan | i can just hear the pesimism in your voice |
| 21:03:22 | brixen | heh, mid 90's is pretty warm |
| 21:03:32 | brixen | if i were near a lake... |
| 21:05:24 | jakedouglas | most dreary nw summer i've ever seen |
| 21:06:15 | BrianRice-work | yeah, this is not the mood-enhancer we usually get |
| 21:10:43 | jakedouglas | yea. i dont actually mind that much, i am generally pretty tired of it being hot by the time it cools down in the fall |
| 21:11:17 | jakedouglas | however, i am afraid of committing suicide during the winter holidays if i dont experience a proper summer |
| 21:13:24 | evan | you guys should head up into the mountains for a week |
| 21:13:38 | evan | summer in the mountains is idealic. |
| 21:17:14 | sbryant | Any particular mountain? |
| 21:17:19 | sbryant | Just a mountain? |
| 21:17:29 | evan | anything about 5k feet. |
| 21:17:37 | evan | that excludes most of the east cosat |
| 21:17:38 | evan | coast. |
| 21:17:46 | evan | above. |
| 21:20:00 | sbryant | well, damn. |
| 21:20:21 | boyscout | Add more object lock operations, fix thin locks on GC. - 63e2855 - Evan Phoenix (hydra) |
| 21:20:21 | boyscout | Fix spec title - 922ffad - Evan Phoenix (hydra) |
| 21:20:21 | boyscout | Reimplement Mutex using object locks - c0dbd36 - Evan Phoenix (hydra) |
| 21:21:18 | evan | for those curious |
| 21:21:25 | evan | you can check out lib/thread.rb in hydra |
| 21:21:32 | evan | for me using the new object locking operations |
| 21:21:50 | evan | Mutex is now just a API wrapper around it |
| 21:25:26 | jakedouglas | i have been in the mountains. indeed its nice |
| 21:27:37 | evan | if anyone in here would like a challenge, i have one for them. |
| 21:27:44 | evan | could be quite fun |
| 21:27:52 | jakedouglas | sounds hard |
| 21:28:10 | evan | it might be, but it will be fun. :) |
| 21:28:33 | evan | i'd love to see someone getting our pathname.rb faster than 1.9's pathname.c |
| 21:28:51 | evan | performance(rbx+pathname.rb) > performance(1.9+pathname.c) |
| 21:28:53 | evan | in other words. |
| 21:29:25 | sbryant | is our pathname slow? |
| 21:29:43 | evan | not necessarily |
| 21:29:48 | evan | it's the same one as 1.8 though |
| 21:30:04 | evan | and they're rewriting pathname into C in 1.9 because i'm assuming they feel like pathname.rb is slow and unfixable. |
| 21:30:12 | evan | i'd love to prove them wrong on rbx |
| 21:33:04 | brixen | 1.9 has a sad and unfortunate predilection for rewriting in C :( |
| 21:36:57 | sbryant | ^ |
| 21:40:17 | brixen | however, we have options in rbx |
| 21:40:34 | brixen | but we are in need of folks learning how to do this |
| 21:41:03 | brixen | by this, I mean solid perf testing and identifying bottlenecks with GC or code |
| 23:11:34 | boyscout | Cleanup moving an object - 1ec1fce - Evan Phoenix (hydra) |
| 23:46:16 | kronos_vano | Hi guys! Is there still a plan for improving "String#%" via ragel? |
| 23:55:49 | brixen | kronos_vano: not sure how that'd work |
| 23:55:55 | brixen | do you have a PoC? |
| 23:56:03 | kronos_vano | PoC? |
| 23:56:24 | brixen | proof of concept |
| 23:58:41 | kronos_vano | hm... I haven't. |
| 23:59:59 | brixen | I suppose it's conceivable |