Index

Show enters and exits. Hide enters and exits.

15:30:29rojaHi guys
15:31:37rojaI'm currently on annual leave from my phd and was looking arround for a project to commit to
15:32:38rojawondering if there is anything i could aid rubinus with, afterall if it reaches it's potential it may well make for a significantly better ruby world :)
15:34:35rueAll kinds of stuff to do, depending on where your interest lies
15:35:18rojawell
15:35:36rojai thought i would get my feet wet with something ruby-ish
15:35:50rueCan try running some libraries and fixing whatever bugs they expose, or look at failing specs and fix there
15:35:59rojai am a capable c++ coder but woulden't be happy jumping in there really
15:36:50ruePlus kernel/ is all Ruby, so just examining the code there can be enlightening as well as expose potential areas of improvement
15:36:58rojafair enough
15:37:03roja:)
15:37:51rojais there a document anywhere outlining prefered coding style?
15:38:05ruekernel/ ;)
15:38:30rueActually I think there is something in doc/
15:38:46rueDunno how complete it is. Pretty basic insofar as the Ruby is concerned
15:38:51rojagood good i will have a read :)
16:08:11rojabin/mspec :library segfaults :S
16:49:00rueThat would be a good bug to try find ;)
17:15:35evanmorning.
17:19:13brixenmorning
17:21:01brixenadobe ads are laughable.. free shipping? well for spending $1000s, that's the least you could do
17:21:28brixenthey should deliver in satin boxes with a chocolate on top
17:23:36evanhehe
17:23:37evanso true.
17:23:53evanesp. since it seems like people rebuy that $1000 thing every couple years too
17:24:06brixenyeah
17:24:24brixencreative suite is a few thousand
17:43:54BrianRice-workhey guys. so I wrote a little version of rbc for slate ("slc", of course), but I had to go about it in a different manner, as a serializer of tree-like data structures, with specialization for common collections, literals, and syntax tree nodes. I'm still debugging a few things but it seems sound
17:44:47DefilerWhat's slate?
17:44:57evanBrianRice-work: what does the Slate VM execute?
17:44:59evanbytecode?
17:45:06BrianRice-workSSA bytecode
17:45:13evanso why not put that in the slc?
17:45:17BrianRice-workDefiler: just some smalltalk dialect
17:45:23brixenDefiler: http://slatelanguage.org/
17:45:25BrianRice-workevan: that'll be round two of this effort
17:45:44BrianRice-workand it's a little trickier because of some other design decisions
17:45:57Defilercool
17:46:16BrianRice-workmainly that we don't define file source as a single compilation unit yet (that is, we parse and compile/run each top-level statement in turn)
17:47:25Defilerwhat advantages does that offer?
17:47:33BrianRice-work"that"?
17:47:35Defilerfiles seem like a natural unit of compilation
17:47:47BrianRice-worknone. that's just how we wrote it a long time ago.
17:48:00BrianRice-workalthough I can think of one potential
17:48:01evangotcha.
17:48:23BrianRice-workwhich is that it's easier to say that the methods in a file don't need the file's "top-level method" to close over, if it just isn't there.
17:50:15BrianRice-workall methods and blocks in slate are closures, although the compiler can do some basic analysis to determine that that's not necessary sometimes.
17:50:58evanah
17:51:10brixenmethods being closures is interesting
17:51:17evanyou don't want every method to be closing over the toplevel
17:51:38brixenI'd think not
17:51:40BrianRice-workright. for us, the top-level is a namespace scope which makes it easier
17:52:03BrianRice-workI'll probably figure out a way to do this, but first I want the speed gain.
17:52:26BrianRice-workand serialization schema
18:32:32BrianRice-workactually, what I'll probably do (first) is to describe a file as a series of methods compiled into the namespace scope idea we have now.
18:33:00BrianRice-work</rant> anyway, just wanted to relate the outcome of the previous discussion
19:07:02brixencomplexity complexifies everything it touches
19:07:46brixenyou can't wall off complexity
19:07:57brixenit's like that radioactive green goo that eats through walls
19:11:23Defilerit makes the walls complex and now the next thing over is touching something complex
19:12:14brixenexactly
19:13:37evanspeaking of which
19:13:46evani'm trying to iron out our broken metaclasses
19:13:49evancomplicated.
19:14:05brixenhmm
19:14:30brixenwhere are we broken now?
19:15:29brixenis it related to #37?
19:21:12dwaitewait, what do you mean metaclasses are complex?
19:21:16evanthe metaclass one?
19:21:37evanyeah, it is #37.
19:21:44evani might have to remove the MetaClass class entirely.
19:21:48evanto make this work the way it's supposed to.
19:21:56evanbecause the class of a metaclass is not MetaClass
19:22:06brixenhmm
19:22:13evanthe class of a metaclass is the metaclass of the metaclass's superclass
19:22:16evanfollow that!
19:22:23brixenoh I have
19:22:24brixenheh
19:22:35evanwhich means there is no where for MetaClass to live
19:22:44dwaiteoh wait, now I see what you mean about metaclasses being complex
19:23:03dwaiteit burns
19:23:04brixenevan: I still have that phrase in my notebook from the last time you explained it
19:23:09brixendwaite: it does burn
19:23:37evanbrixen: and I'd forgotten myself.
19:23:41dwaiteperhaps you need a new type, to cut across the complexity?
19:23:44dwaitelike EmoClass
19:23:50brixenoh lord
19:23:51brixenhaha
19:24:02brixenevan: there's no escape!
19:24:33evanRUN
19:24:37brixenI blame Rock Band
19:24:45brixendamn video games
19:25:02evanGET OFF MY LAWN!
19:25:06brixenhehe
19:26:11evani think the coffee i bought was secretly decaf.
19:26:18evanit doesn't say, but i swear it is.
19:28:32dwaitejust make two pots, drink them both, and see if you start getting jitters
20:00:36evanGAH
20:00:47evanwe put attach_method on Metaclass
20:01:00evanbut i have to change the class of a metaclass so that MetaClass isn't in there anymore
20:01:04evanle sigh.
20:01:58brixen:(
20:04:17rueIf there is an advantage to having a MetaClass class, then you can proxy it like IncludedModule
20:04:29rueBut I am not sure it is
20:05:22evanwell, i think i've got a handle on it
20:05:25evanbut i need a haircut.
20:28:23rueAt least a wash to get rid of the handle
22:16:10rueMm. Glög with some quality white rum
22:16:19evanhaircut.
22:16:22evanachieved.
22:17:37rueNo more handle?
22:18:02evanhandle bar? no, still have a beard.
22:18:26rueHandlebar hair would be sweet
22:21:31slavahi evan
22:21:44evanhello slava darling
22:22:30slavahow's rbx?
22:22:50evanoh good
22:22:56evanworking out some obscure bugs in our MOP
22:31:28brixenI'm working on some bugs in our BROOM
22:32:41evanfinally the KITCHEN will run!
22:32:41evan:D
22:32:44brixenalas, I cannot devise a good meaning for that acronym
22:32:48brixenheh
22:34:14evanhm
22:34:55slavagoogle chrome is pretty slick
22:35:12Defileryes, I need a vimperator plugin for it
22:35:13brixenI should try it
22:35:18Defilerchrome is pretty boss though
22:35:41slavaI like it more than safari
22:35:51slavasafari 3.x was good but 4.0 sucks
22:37:02evanis there vimperator for safari?
22:39:56rueChrome sucks and Google is evil
22:40:14evanbut chrome plated goggles rock
22:40:16evanhow ironic.
22:56:48dwaiteis google evil now?
22:57:24BrianRice-workno, only on the top half of the hour :P
22:57:33slavaheh, hi BrianRice-work
22:57:39BrianRice-workhey slava
22:57:40evanyep, they're good for another 3 minutes
22:57:52evanoh, maybe i've got it backwards.