Index

Show enters and exits. Hide enters and exits.

00:00:00crafterm enters the room.
00:00:26nexcastellanHA!
00:00:41nexcastellanThat's what I say. HA!
00:00:56seydarhm.. odd.
00:01:09seydari just pulled a fresh install from github
00:01:25seydarand i'm going to commit the changes in autoload.rb that i helped on
00:01:26rubuildius_amd64Evan Phoenix: 6f4472691; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:01:49seydarand i see that two config files in onig have been modified
00:01:59nexcastellanHow would the following work: message = buffer.read_string if you don't tell it the number of bytes to read? If buffer is a MemoryPointer?
00:01:59NoKarma leaves the room.
00:02:24drbrainit looks for NUL
00:02:28drbrain"\000"
00:02:35nexcastellanAh ha.
00:02:47nexcastellanI think that's a bad assumption in this part of socket.rb. In fact, I know it is.
00:02:52nexcastellanThanks, drbrain.
00:03:26evanyes
00:03:27evanit is
00:03:35massI'm still trying to figure out what to do with my new @rubini.us alias
00:03:50evanplease don't use it as a spam trap.
00:03:59massperhaps sending out nigerian scam mails?
00:04:06drbrainmass: score with fly ladies?
00:04:10masswould they still be nigerian scam mails if I'm not nigerian?
00:04:46boyscout1 commit by Ryan Davis
00:04:47boyscout * Read err and raise the output if non-empty; ddb5eb8
00:04:52massdrbrain: if you know fly ladies who are turned on by vanity email addresses I'm open to introductions
00:05:04seydarmass: the @rubini.us is a great hit with the ladies
00:05:26massjust finished installing the final iphone sdk
00:06:14massI'm planning to start working on an app or two under the sim so I'm ready to test and sell them when I get mine :)
00:06:23dfg59 enters the room.
00:06:39evanmass: what ya going to write?
00:06:51nexcastellanIs Mutex implemented in Ruby or in C?
00:07:02evanRuby
00:07:06evanusing Channels
00:07:11evanwhich use some C parts
00:07:21nexcastellanOh noes!
00:07:25massmy mom has played this variation of russian solitaire called railroad solitaire on her palm forever
00:07:46massshe's totally addicted to it, to the point that she still uses some palm os emu to play it under wince
00:07:51evannexcastellan: why?
00:08:13nexcastellan"NoMethodError: No method 'sleep' on an instance of Mutex."
00:08:22evanjust needs to be implemented
00:08:24massso I figure that would be a good start, since it'd be her #1 feature for a new phone. While I'm at it, I'll add support for a few of my favs too
00:08:24evanprobably
00:08:29massI'm a big fan of chessboard
00:08:33evani didn't even know there was a Mutex#sleep
00:09:01nexcastellanYeap, I'm not _convinced_ there is meant to be one. But I'll take a look tomorrow morning. udpsockets now pass all specs but I want to get resolv.rb working properly before I push everything out.
00:09:06nexcastellanAnd my bus arrives in five minutes. :)
00:09:33evanok, see ya later.
00:09:39nexcastellanLater all.
00:09:43seydaradiaux
00:09:59rubuildius_ppcRyan Davis: ddb5eb849; 2539 files, 8461 examples, 28479 expectations, 0 failures, 0 errors
00:10:43drbrainseydar: isn't that french?
00:10:53seydar...
00:11:03seydarfrench is au revoir
00:11:06seydarthat was esperanto
00:11:14seydarand you call yourself a geek!
00:11:36drbrainok, because if it was french, I'd have to report you to INS as an illegal immigrant
00:11:42drbrainsneaking across the border from Canada
00:11:58seydardrbrain: on a slightly unrelated note, i found out this guy and his wife at dartmouth speaks Elvish. fluently
00:13:20rubuildius_ey64Ryan Davis: ddb5eb849; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:15:43imperator leaves the room.
00:16:26rubuildius_amd64Ryan Davis: ddb5eb849; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:16:28boyscout1 commit by Ryan Davis
00:16:29boyscout * I hate popen3, apache, net/http, and children; e2f07cd
00:16:56vintrepid enters the room.
00:18:59wmoxam enters the room.
00:19:05seydarzenspider: how much did GoRuCo pay its speakers?
00:19:25rueseydar: AdiEux is French
00:19:25zenspiderseydar: I don't remember
00:19:49jbarnetteseydar: they pay in froot roll-ups and beef jerky
00:20:07rueAnd beer
00:20:42seydarrue: oh, à dieu is french
00:20:48seydaradiaux is esperanto
00:20:51zenspidermmmmm rollups
00:20:56zenspiderwait no
00:21:00zenspidermmmm beef
00:21:12seydarwould pancakes and maple syrup cut the mustard?
00:21:12crafterm leaves the room.
00:21:21antares enters the room.
00:21:55seydardrbrain: yea, i was being dumb and overconfident with my recent defeat of autoload. even though i didnt even do that one alone
00:22:04seydardrbrain: you're thinking of "à dieu"
00:22:11rubuildius_ppcRyan Davis: e2f07cd59; 2539 files, 8461 examples, 28479 expectations, 0 failures, 0 errors
00:22:26drbrainno, we were trying to see if you were an illegal canadian immigrant
00:22:37drbrainsince you know so much about the canadian border patrol
00:23:45seydardude, I-91 has so much cocaine and weed from canada
00:24:14boyscout1 commit by Ari Brown
00:24:15boyscout * staking my claim with autoload.rb. Das Dragon hast been killed!; cc67051
00:24:26seydarboyscout: action pounds it
00:24:26boyscoutpounds it
00:24:39seydarboyscout: help
00:24:39boyscoutCommands I know: action, help, save!, say, update_git
00:24:54seydarhow can i teach boyscout a new trick?
00:24:56drbrainhey, keep boyscout out of your canadian weed and cocaine
00:25:15seydardrbrain: i fully expect you to come to AwesomeConf in april
00:25:32drbraindon't conflict with SXSW
00:25:36drbrainor MountainWest
00:25:47seydarSXSW?
00:25:58drbrainSouth by SouthWest
00:26:27rubuildius_amd64Ryan Davis: e2f07cd59; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:27:37seydardrbrain: wont conflict with either
00:28:30boyscout1 commit by Ryan Davis
00:28:30boyscout * Fixed url for rubyspecs; 7ae426c
00:31:40seydardrbrain: which... means you're coming
00:32:08drbrainheh
00:32:53Defilerwhere we goin'
00:33:39roo leaves the room.
00:34:13seydaritd be *extra* nice if rubinius would make a presentation at a potential conference in NH
00:34:13rubuildius_ppcRyan Davis: 7ae426cef; 2539 files, 8461 examples, 28479 expectations, 0 failures, 0 errors
00:34:14rubuildius_ppcAri Brown: cc6705156; 2539 files, 8461 examples, 28479 expectations, 0 failures, 0 errors
00:34:16roo enters the room.
00:34:24seydarrubuildius_amd64: action pounds it with seydar
00:35:36drbrainthis is why corundum's say is restricted to me
00:35:45seydarhehe
00:35:57seydargive them the ability to pound it!
00:36:08drbrainno
00:36:18seydardont you want your bots to be cool?
00:38:46drbraincorundum: are you cool?
00:38:47corundumno idea
00:39:18seydarcorundum: you are cool
00:39:19corundumbut you are <reply> I am here for everyone's benefit or an ri bot, because ri is everybody's friend
00:40:04seydari give up!
00:40:35drbraincorundum: you are also cool
00:40:36corundumdone
00:41:27seydarcorundum: are you cool?
00:41:27corundumdunno
00:41:54drbraincorundum: you?
00:41:55corundumI am here for everyone's benefit or an ri bot, because ri is everybody's friend or cool
00:42:38rubuildius_amd64Ryan Davis: 7ae426cef; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:42:39rubuildius_amd64Ari Brown: cc6705156; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:42:40rubuildius_amd64pounds it with seydar
00:43:06seydarwhoever did that, thank you :-)
00:43:08rubuildius_ey64Ryan Davis: 7ae426cef; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:43:09rubuildius_ey64Ari Brown: cc6705156; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:43:10rubuildius_ey64Ryan Davis: e2f07cd59; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
00:43:42drbrainI think it got stuck in the output queue
00:44:02seydaroh...
00:45:52roo leaves the room.
00:46:34rue leaves the room.
00:47:22trythil enters the room.
00:51:47roo enters the room.
00:51:51lopex leaves the room.
00:55:31vintrepid leaves the room.
00:55:36heycarsten enters the room.
00:56:02seydarevan: hows LLVM going with the cpp branch?
00:57:31evangoing good.
00:57:52seydarwhat do you have going atm?
00:58:19Fullmoon enters the room.
00:59:07evanwell
00:59:18evani've got it going 2x as fast as the old code
00:59:23evanand thats when compiled in debug mode
00:59:32seydarwow
00:59:48seydarlike, way wow
00:59:53boyscout1 commit by Ryan Davis
00:59:54boyscout * use rake instead; 6677721
01:00:28drfreeze leaves the room.
01:00:38seydarevan: i'd really like to help out with the C++ branch, but alas, C++ is not my forte. is there anything else I can do?
01:00:52evankeep fixin' those bugs in ruby!
01:01:07evanwe're going to be using all that code in the C++ branch
01:01:29drfreeze enters the room.
01:01:40seydarok
01:02:40wmoxam leaves the room.
01:02:50imperator enters the room.
01:04:13rubuildius_ppcRyan Davis: 667772136; 2539 files, 8461 examples, 28479 expectations, 0 failures, 0 errors
01:07:19zenspiderevan: why is LLVM an external dependency?
01:07:34evancause it hasn't been made an internal one
01:07:42zenspiderk
01:08:00rubuildius_ey64Ryan Davis: 667772136; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
01:11:17heycarsten leaves the room.
01:11:24rubuildius_amd64Ryan Davis: 667772136; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
01:20:29trythil leaves the room.
01:25:46brapse enters the room.
01:28:04yugui enters the room.
01:28:51jbarnette leaves the room.
01:33:44qrush enters the room.
01:35:45binary42 enters the room.
01:35:53hemulen leaves the room.
01:39:55benburkert enters the room.
01:40:08drfreeze leaves the room.
01:40:33atduskgreg enters the room.
01:40:48mutle_ enters the room.
01:41:47drfreeze enters the room.
01:46:46binary42 leaves the room.
01:46:50jtoy enters the room.
01:46:51binary42 enters the room.
01:49:00mutle leaves the room.
01:49:50dfg59 leaves the room.
01:49:59cored enters the room.
01:56:30Ingmar_ enters the room.
02:06:56AndrewO enters the room.
02:07:30Ingmar leaves the room.
02:09:35rphillips leaves the room.
02:10:00robin_dewd leaves the room.
02:19:03c0sin leaves the room.
02:20:02seydarzenspider: for missing file methods, you know i knocked off 3 from your list?
02:20:30seydarzenspider: gonna try to get three more tonight
02:23:12seydarare those methods on the File class or on File instances?
02:23:26seydarfile class methods. got it
02:23:43antares leaves the room.
02:24:21VVSiz_ enters the room.
02:26:36ryanlowe leaves the room.
02:28:33seydarshould we even implement lchown and lchmod? they're not available on most systems
02:32:58_eric enters the room.
02:39:14seydar leaves the room.
02:39:20neelance leaves the room.
02:42:03VVSiz leaves the room.
02:45:30roo leaves the room.
02:51:20roo enters the room.
02:51:39binary42 leaves the room.
02:51:45benny enters the room.
03:00:49Fullmoon leaves the room.
03:06:07lchin enters the room.
03:09:32obvio leaves the room.
03:19:19fbuilesv enters the room.
03:24:06ezmobius leaves the room.
03:26:44stepheneb enters the room.
03:29:50seydar enters the room.
03:30:43boyscout1 commit by Ari Brown
03:30:44boyscout * added a few missing File class methods; 3126aa4
03:30:51seydarman
03:30:55seydarthat _never_ gets old
03:30:58seydar leaves the room.
03:36:34rubuildius_ppcAri Brown: 3126aa45d; 2539 files, 8461 examples, 28479 expectations, 0 failures, 0 errors
03:37:46fbuilesv leaves the room.
03:39:50binary42 enters the room.
03:40:09fbuilesv enters the room.
03:41:26rubuildius_amd64Ari Brown: 3126aa45d; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
03:42:47rubuildius_ey64Ari Brown: 3126aa45d; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
03:44:57cored leaves the room.
03:47:45brapse leaves the room.
04:03:07dysinger leaves the room.
04:05:40benburkert_ enters the room.
04:15:59benburkert leaves the room.
04:25:42brapse enters the room.
04:37:58obvio171 enters the room.
04:38:31dysinger enters the room.
04:39:24stepheneb leaves the room.
04:39:34benburkert leaves the room.
04:42:36trythil enters the room.
04:44:56roo leaves the room.
04:48:16benburkert enters the room.
04:49:36seydar enters the room.
04:50:02rphillips enters the room.
04:50:51roo enters the room.
04:52:03atmos leaves the room.
04:53:30seydar leaves the room.
04:54:44atduskgreg leaves the room.
04:56:42edwardam_ enters the room.
04:57:34edwardam leaves the room.
05:03:11nicksieger leaves the room.
05:03:48nicksieger enters the room.
05:17:00AndrewO leaves the room.
05:20:21atduskgreg enters the room.
05:21:06fbuilesv leaves the room.
05:22:10fbuilesv enters the room.
05:33:36atmos enters the room.
05:37:40fbuilesv enters the room.
05:54:08dary enters the room.
05:54:17atduskgreg leaves the room.
05:55:10blakewatters leaves the room.
06:00:24blakewatters enters the room.
06:02:14blakewatters_ enters the room.
06:03:45blakewatters leaves the room.
06:13:15brapse leaves the room.
06:20:23benburkert leaves the room.
06:23:53atmos leaves the room.
06:28:00jackdempsey leaves the room.
06:28:22nicksieger leaves the room.
06:33:42thehcdreamer enters the room.
06:34:14dfg59 enters the room.
06:37:00gnufied enters the room.
06:40:14tarcieri*boggle* @ ML
06:40:30tarcieri"I'd like to learn more about compilers and virtual machines [...] Can anyone recommend any books or online resources that will get me up to speed?"
06:40:41tarcieri"There are quite a few good resources on line as well. For openers, there's "Structure and Interpetation of Computer Programs". That's more oriented towards Scheme [than your question, but EVERYTHING'S REALLY JUST LISP, MAN]"
06:40:59tarcieriSICP is great and all...
06:46:18w1rele55 enters the room.
07:01:00thehcdreamer leaves the room.
07:06:39wyhaines leaves the room.
07:10:29gnufied leaves the room.
07:12:46massall modern programming languages are just attempts to reimplement lisp with fewer parens
07:12:49mass;-)
07:13:40tarcieri<3 grammars more complex than Lisp
07:13:49evanthats all of them.
07:13:55tarcieriheh
07:14:05evanbinary operators are more complex than lisp grammar.
07:15:33tarcieriperhaps I should say <3 big ugly grammars that functional people hate because they're so far from Lisp
07:15:52tarcieriand therfore hard to munge with something macro-like
07:16:30evanI should make a shirt that on the back has a lambda in a circle with a line through it
07:16:37evanand on the front "I <3 state"
07:16:42tarcierihaha
07:17:15tarcieriI'm still yet to figure out why Erlang people hate multiple assignment so much
07:17:18evanor, more nerdy, on the front "state based human"
07:18:33tarcierii'm in ur objects mutatin' ur state
07:19:01evanI'm in ur neurons, settin' ur state
07:19:44brixenI can understand why folks like pure functions
07:19:52brixenit's just not much fun to write programs with them
07:20:00tarcieriit's annoying and constrictive
07:20:03evancause their control freaks?
07:20:07evans/their/they're/
07:20:08brixenheh
07:21:21tarcieriyou can have methods that "modify" a receiver by reassigning it implicitly
07:21:36tarcierieven in a language with immutable state
07:21:38tarcieribut OMG SIDE EFFECTS
07:21:43evanRUN
07:21:46evanSIDE EFFECTS!
07:23:15tarcieriI have a branch of Reia where multiple assignment is almost working by compiling to SSA form
07:23:57tarcieriI tell the people on #erlang about it and they're like "wow I just completely lost interest in what you're doing"
07:24:13tarcieriapparently multiple assignment is AIDS
07:24:16evanhah
07:24:19evanlet them leave.
07:24:41trythil leaves the room.
07:57:27jackdempsey enters the room.
08:11:02jackdempsey leaves the room.
08:11:45dary leaves the room.
08:15:21thehcdreamer enters the room.
08:16:19dfg59 leaves the room.
08:29:41blakewatters_ leaves the room.
08:30:11Arjen_ enters the room.
08:36:34rue enters the room.
08:37:40neelance enters the room.
08:44:02dary enters the room.
08:44:10dary leaves the room.
08:44:29roo leaves the room.
08:45:22roo enters the room.
08:58:34atduskgreg enters the room.
09:02:13rueHuh
09:03:35wvdschel enters the room.
09:06:20obvio171 leaves the room.
09:06:37obvio171 enters the room.
09:11:01rue_XIV enters the room.
09:19:41atduskgr_ enters the room.
09:22:14roo leaves the room.
09:24:37NoKarma enters the room.
09:26:52neelance leaves the room.
09:29:24octopod enters the room.
09:32:46pauldix enters the room.
09:36:06atduskgreg leaves the room.
09:48:47enebo leaves the room.
09:50:03edwardam_ leaves the room.
09:51:41krsh enters the room.
09:51:42Arjen_ leaves the room.
10:07:26Yurik leaves the room.
10:10:22atduskgr_ leaves the room.
10:12:21pauldix leaves the room.
10:18:19octopod leaves the room.
10:18:20octopod_ enters the room.
10:26:07gnufied enters the room.
10:35:18antares enters the room.
10:48:21yasuhito enters the room.
11:12:55jtoy leaves the room.
11:13:37Maledictus enters the room.
11:22:51Fullmoon enters the room.
11:23:34Fullmoon leaves the room.
11:37:28hemulen enters the room.
11:40:37joachimm enters the room.
11:41:34hemulen leaves the room.
11:48:41imajes enters the room.
11:48:54krsh leaves the room.
11:52:25imajes_office leaves the room.
12:00:36yasuhito leaves the room.
12:10:45webmat enters the room.
12:32:26BlackEdder enters the room.
12:35:10chris2 enters the room.
13:03:37atduskgreg enters the room.
13:04:37joachimm leaves the room.
13:05:52ljulliar enters the room.
13:21:11cremes leaves the room.
13:21:33rubuildius_ppc leaves the room.
13:27:02lchin leaves the room.
13:27:27lchin enters the room.
13:30:26benny leaves the room.
13:33:55obvio171 leaves the room.
13:35:16benny enters the room.
13:35:24lchin leaves the room.
13:41:52atduskgreg leaves the room.
13:56:20joachimm enters the room.
13:58:48jtoy enters the room.
14:08:55krsh enters the room.
14:10:59heycarsten enters the room.
14:11:40binary42 leaves the room.
14:12:31michalw enters the room.
14:13:40benburkert enters the room.
14:17:05trythil enters the room.
14:17:43jtoy leaves the room.
14:19:29hemulen enters the room.
14:20:51trythil leaves the room.
14:23:10hemulen enters the room.
14:36:26BlackEdder enters the room.
14:36:30moofbong enters the room.
14:37:54pauldix enters the room.
14:39:29pauldix leaves the room.
14:39:56pauldix enters the room.
14:40:32robin_dewd enters the room.
14:42:09imajes leaves the room.
14:45:33pauldix leaves the room.
14:46:04pauldix enters the room.
14:48:02pauldix leaves the room.
14:48:14imajes enters the room.
14:48:29pauldix enters the room.
14:49:06pauldix leaves the room.
14:50:08pauldix enters the room.
15:00:53wyhaines enters the room.
15:00:56stepheneb enters the room.
15:06:18stepheneb_ enters the room.
15:08:12stepheneb_ leaves the room.
15:08:27stepheneb leaves the room.
15:08:45stepheneb enters the room.
15:15:57cremes enters the room.
15:17:49wmoxam enters the room.
15:23:05fbuilesv leaves the room.
15:25:37loincloth enters the room.
15:32:31jackdempsey enters the room.
15:33:02pauldix leaves the room.
15:35:09gnufied leaves the room.
15:35:16cremes leaves the room.
15:35:29cremes enters the room.
15:36:00benburkert leaves the room.
15:37:07pauldix enters the room.
15:41:14Yurik enters the room.
15:41:35yugui leaves the room.
15:44:47benny leaves the room.
15:53:05joachimm leaves the room.
15:53:05loincloth leaves the room.
15:54:43krsh leaves the room.
15:54:59loincloth enters the room.
15:57:54jackdempsey leaves the room.
16:02:37brapse enters the room.
16:04:02michalw leaves the room.
16:04:07dysinger enters the room.
16:09:58benburkert enters the room.
16:14:44yasuhito enters the room.
16:17:23blakewatters enters the room.
16:24:55anonuser leaves the room.
16:30:14anonuser enters the room.
16:36:18stepheneb_ enters the room.
16:41:27dfg59 enters the room.
16:47:16benny enters the room.
16:48:04lopex enters the room.
16:52:28stepheneb leaves the room.
16:53:06headius enters the room.
16:56:27ijcd enters the room.
16:58:33nicksieger enters the room.
17:03:13drfreeze leaves the room.
17:05:07wvdschel leaves the room.
17:10:45atmos enters the room.
17:10:46neelance enters the room.
17:12:46BlackEdder enters the room.
17:13:04atduskgreg enters the room.
17:14:34seydar enters the room.
17:18:48chris2 leaves the room.
17:19:53w1rele55 leaves the room.
17:20:07seydarhazzah, yard runs on rubinius
17:23:11hemulen leaves the room.
17:25:25brixenseydar: sweet
17:28:26ijcd leaves the room.
17:28:53antaresbrixen: what's the state of cpp branch? is it soon-to-be-merged into master?
17:32:08brixenantares: precise ETA I don't know, but yes, it will be merged RSN
17:32:31seydarwhen installing gems, do i need to run `rake install` first?
17:32:33brixenantares: we should have better instructions in the README for trying it out
17:33:22chadseydar: you can do rbx gem install, regardless of where rbx is in your path...
17:33:30chadseydar: so, you shouldn't have to do rake install first
17:33:46seydarchad: but i dont have an 'rbx' command. i've been using shotgun/rubinius
17:34:00chadbin/rbx?
17:34:20seydarahah! should i have been using that?
17:34:45chadi think they're the same thing
17:34:51headiusbrixen: is cpp branch functional right now?
17:35:07chadyea they are
17:35:10chadthey're symlnked :)
17:35:40seydarchad: what did you do to make it so you only had to type 'rbx', and could do it from anywhere? alias it?
17:35:48chadyea
17:35:48chadalias
17:36:01thehcdreamer leaves the room.
17:36:36brixenheadius: you can run the test, it runs some code afaik
17:36:48headiuscool, performance looking better?
17:37:03brixenaccording to evan, 2x compiled in dev mode
17:37:05headiusI started trying to build it but there were a lot of knobs to twist
17:37:06brixenso, a bit
17:37:12evanmorning.
17:37:16brixenyeah, we'll smooth those out this week
17:37:20brixenmorning evan
17:37:32chadheya evan
17:38:08chadyea, the cpp branch barfed on me last week when I tried to compile it, but I didn't have any tolerance for error-hunting at that time, so I forgot about it :)
17:38:45evanthere are some build bugs with it, yeah.
17:38:45seydar enters the room.
17:39:09brixenchad: I want to chat with you about Hash at some point, but you're not here that much. best way to do that?
17:39:26chadi just forgot to log in this weekend.
17:39:30chadotherwise i'll be here quite a bit :)
17:39:35hemulen enters the room.
17:39:37chadalso i'll send you my AIM info
17:39:46brixensweet, thanks
17:40:36chadyou wanted to chat with me about Hash eh?
17:42:33brixenyeah, organization-wise
17:42:43brixenpure ruby version, since we've replaced our C parts
17:42:44yasuhito leaves the room.
17:43:25brixenchad: gotta run to class now though. I'll ping ya later
17:43:34chadok cool
17:43:53evanchad: hows the RCL going?
17:44:19chadi haven't done anything since Array. back to it this evening. got distracted by the Job :\
17:44:37evanreleases the hounds on rich
17:44:42evanis Array done?
17:44:43chadmaybe i'll take a coffee break today and work on it a bit :)
17:44:58chadi haven't moved stuff into bootstrap on Array
17:45:06chadbut I've moved stuff into common
17:45:14evancool
17:45:16evanso getting there.
17:45:23jbarnette enters the room.
17:45:24chadstill could move more, but I modified some of the things to move them over.
17:45:34evanthats fine.
17:45:37Arjen_ enters the room.
17:45:53chadi'll hit avi up today for some help setting up maglev to use it
17:46:00chadthat will be more motivating
17:46:14chadsince the end result of rearranging in rubinius is the same code continues to work :)
17:46:48evanyep!
17:46:51evanheh
17:46:54evanwell, yeah
17:47:05evanyou're reward for it working is more work :D
17:48:30seydarthat sounds like a excellent deal
17:49:07evanand it can be yours for the low, low price of $0!
17:49:37ljulliar leaves the room.
17:49:45seydarevan: how are you all doc'ing the VM?
17:50:14ljulliar enters the room.
17:50:30evanwell, i've got doxygen setup
17:50:34evanthis morning
17:50:40evani'm getting the tests running 100% again
17:51:03evanthen i'll spend a little while adding some docs
17:52:03seydaris the C branch all doc'd?
17:52:10evani wish
17:52:11evanbut no.
17:53:22seydarhm. sounds like you need DocerMan
17:53:35evanwe do.
17:53:47seydaroh damn
17:54:11seydari was about to offer to be docerman, because i have rediscovered how much fun doc'ing is, but i realized that i have work to do
17:55:18seydarbut i'll go doc up two core files today, how bout that?
17:55:46evanwonderful
17:55:53evanit's not a full time job
17:55:59evanjust someone that has the eye for it
17:56:10evancan do it when they have the time.
17:56:15evanideally, we'd all be doing it.
17:56:56headiuspure-ruby hash eh?
17:57:05seydar*coughcough*yard*coughcough*
17:57:32evanseydar: we're not going to use yard now
17:57:46evanheadius: eyah, our hash is already pure ruby
17:57:50seydarmeanie.
17:58:14headiuswhat are the dependencies?
17:58:22evanTuple
17:58:28evanpretty sure thats it.
17:58:45evanbut we should actually refactor that out
17:58:52evanand have a Hash::Bucket class instead
17:58:54headiusI need to just slap together a tuple in jruby so I can try it
17:59:29evanit should be trivially easy
17:59:34evanthats the idea of the Tuple
17:59:41headiusyeah
18:01:33nicksieger leaves the room.
18:02:00nicksieger enters the room.
18:07:22chadwhat is this yard thing you keep mentioning seydar
18:07:38evanPortuguese sounds so... funny.
18:07:51evanchad: it's a rdoc replacement
18:08:03chadahh
18:08:07chadcompatible with rdoc i hope?
18:08:07seydarchad: its a sweet (at least i think) documentation tool. like rdoc, but more extensible. PLUS (hopefully) it will have support for doc'ing C
18:08:14seydaroh, totally compatible
18:08:51seydarif it can get C/C++ parsing, then i would *really* push for rubinius to use it, because the entire project would be doc'd under one system
18:09:51evanchad: rdoc can doc C
18:10:03evanthats how the core of 1.8 is doc'd
18:10:05chadevan: i don't think you mean that message for me.
18:10:09seydarwell then, rdoc has yard beat atm
18:10:10evanprobably not.
18:10:19chadevan: I have Doc'd C with RDoc :)
18:10:26evan:D
18:10:27evanme too!
18:10:37seydarin which case i should *probably* eat my hat and start doc'ing the VM
18:10:38evanit doesn't really parse C
18:10:42evanit just looks for C comments
18:10:54evanand uses explicit context
18:11:24edwardam enters the room.
18:11:28seydarthen why aren't we doc'ing the VM with rdoc?
18:12:26evanwell
18:12:37tarcieridoes RDoc have a mode that isn't intrinsically tied to Ruby C extensions?
18:12:39evanbecause it assumes what you're doc'ing is C code thats hooked up to ruby
18:12:44evanand thats not the case for the VM
18:12:52evantarcieri: no
18:12:53evanit doesn't.
18:13:05seydarwhat does it do that assumes its hooked up to ruby?
18:13:42evancause thats what it was coded to do
18:13:48evanyard will probably have the same assumption.
18:14:30seydarbut *what* does it assume?
18:14:31tarcieriseydar: I believe it looks at function names and uses those to figure out what comments map to what
18:14:50evanseydar: if you have a C function, say, blah, and you doc it
18:15:00evanit tries to figure out how blah is callable from ruby
18:15:20evanie, you use rb_define_method(a_class, "blah", blah, 0);
18:15:22evanat the bottom
18:15:31evanit will doc 'blah' as 'MyClass#blah'
18:15:45seydargotcha
18:16:05seydarwell then i'll have to make sure that the C parser doesnt get tied to ruby
18:16:29evancool
18:17:28drbrainI just wanted you all to know
18:17:34c0sin enters the room.
18:17:45drbrainI was watching pictures on my Mac via UPnP on the PS3 last night
18:17:59evani saw!
18:18:02evanvery cool.
18:18:15evanhows the upnp thing coming?
18:18:29evanironicly, i wrote a very simple upnp listener many years ago
18:18:55evan2003, I believe
18:19:05evanit was one of my first little ruby scripts
18:19:10octopod leaves the room.
18:19:36drbraingreat
18:19:48seydarwhats cuby_primitives.rb doing in shotgun/lib?
18:19:48drbrainI spent two hours on a stupid bug
18:19:58evanseydar: clutter up the place.
18:20:01drbrainprobably bitrotting
18:20:09seydarpermission to delete?
18:20:24evangranted.
18:20:54seydarDeletion in progress.
18:21:14evanok, the tests are running again in the cpp branch
18:21:26evannot fully clean, but they compile and run now
18:21:31evan99% clean
18:21:45evanFailed 4 of 450 tests
18:21:45evanSuccess rate: 99%
18:22:49drfreeze enters the room.
18:24:14evandrfreeze: see pm
18:24:57boyscout1 commit by Ari Brown
18:24:58boyscout * another day, another commit. trashed some bitrot; 856e0ef
18:25:43neelance_ enters the room.
18:26:03seydarboyscout: action pounds it with seydar
18:26:04boyscoutpounds it with seydar
18:26:20boyscoutCommands I know: action, help, save!, say, update_git
18:27:51neelance leaves the room.
18:33:12rubuildius_ey64Ari Brown: 856e0ef22; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
18:34:53stepheneb_ leaves the room.
18:35:25stepheneb enters the room.
18:36:26rubuildius_amd64Ari Brown: 856e0ef22; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
18:38:39moofbong leaves the room.
18:42:34dgtizedevan: I get a cpp test failure that kills the runner.cpp
18:42:57evanum.
18:43:01evancould ya pastie the output?
18:43:12ryanlowe enters the room.
18:43:48dgtizedevan: http://pastie.org/233986
18:44:12evanthats... odd.
18:44:19evancould you do a 'rake clean' and try again?
18:44:29drbrainEPNS
18:44:33drbraine-penis?
18:44:59evanthat would be C++'s awesome name mangling at work.
18:45:12dary enters the room.
18:45:15Defilerevan: What triggers make to know about the 'GEN' concept? What executable is running when 'GEN' shows in the make output?
18:45:26evanit's in the Rakefile
18:45:30Defileraha
18:46:08dgtizedevan: rake clean, rake build, rake test -- same thing
18:46:13evanhrm.
18:46:26evanlinux, right?
18:46:36dgtizedyea, ubuntu 8.04
18:46:40dgtizedi386
18:46:45evank, i'll try it on a linux machine
18:46:50seydarin the Rakefile which generates some configure stuff, does it have access to all things normal ruby does?
18:47:02Defilerhttp://pastie.org/233990.txt
18:47:08Defilerthat's what I get on HEAD right now. just pulled
18:47:40dgtizedDefiler: I just pulled 5 minutes ago
18:47:57Defiler(on my macbook pro)
18:47:59seydarconfigure.rake, specifically
18:48:23pauldix leaves the room.
18:48:53evanDefiler: yep, thats what i'm getting.
18:50:25Defilerwild shit happens when I just run 'rake' out of the root instead of in '/vm'
18:50:56drbrainseydar: I think the answer you're looking for is 'yes'
18:51:05evanDefiler: yep.
18:51:08evanDefiler: it's busted.
18:51:10evanfrom there
18:51:10seydardrbrain: merci
18:51:13evancurrently
18:51:15seydardrbrain: err, i meant thanks
18:51:48drbrainseydar: ha! I'm going to report you to the NH border patrol now
19:00:42evanhrm. socket.rb is letting -1 returns from Foreign.socket slip by
19:01:18Defilerwe should split that file up
19:01:19evanoh.
19:01:23evanthis code is just wrong.
19:01:24Defilerand have lib/socket/unix_socket.rb etc
19:01:30evansomeone refactored incorrectly
19:01:30nexcastellanWhich part of socket.rb?
19:02:05evantcp_setup
19:02:07nexcastellanI am tracking down a race condition in resolv.rb and hope to push out some changes to socket.rb later today. My changes to socket.rb are primarily wrt UDPSocket, though.
19:02:29evanyeah, this is crazy town.
19:03:07nexcastellanActually, I'm thinking of ripping out the threading code in resolv.rb altogether, I'm not sure the race conditions are solvable in rubinius.
19:03:37DefilerIt is crazy hard to use threads inside a library implementation
19:03:56nexcastellanThreads are hard at the best of times, and it's making me rip my hair out in resolv.rb.
19:04:13evannexcastellan: they have to be solvable.
19:04:25evanrewriting resolv.rb is not a solution.
19:04:38evanbecause wild code will use the same thing
19:04:45evanor use a bundled version of resolv.rb
19:04:51nexcastellanOkay, let me explain what I think is happening in resolv.rb.
19:06:01nexcastellanDepending on the thread ordering, we either execute the UDP socket send OR the UDP socket recv first. What's meant to happen is that the recv will go to sleep if it doesn't have any data. But (more)
19:06:18nexcastellanwhen it goes to sleep, everything goes to sleep. (more)
19:06:42nexcastellanSo if you do the send first, then the recv, life is good. If you do it the other way around, you are never going to wake up.
19:07:08evanthen we have to fix our Socket
19:07:09Defilerif something needs a particular ordering it needs a lock
19:07:11nexcastellanI'm not 100% sure this is what is happening, but certainly my calls to Resolv.getaddress work SOMETIMES and not other times, depending on the ordering.
19:07:18Defileror it needs to not use threads
19:07:24evanno
19:07:26evanthats not a solution.
19:07:31drbrainDefiler: resolv.rb uses threads
19:07:36drbrainand that's how it's supposed to work
19:07:36evanwe have to make resolv.rb work untouched
19:08:00drbrainrecvfrom must only block the thread it was called in
19:08:00Defilerwhat's how it is supposed to work?
19:08:03Defileraah
19:08:17evanthe weirdness of resolv.rb needs to be refactored into specs
19:08:18evanon Socket and Thread, probably
19:08:21nexcastellanHeh.
19:08:41evanthats someone using blocking foreign calls when they shouldn't
19:08:46drbrainyeah, we only use C blocking calls in thread
19:08:51evanno
19:08:54drbrainbecause it's easy :)
19:08:55evanwe NEVER use blocking C calls.
19:08:58evanif we are
19:09:00evanthats broken.
19:09:09drbrainerr, C blocking calls in socket!
19:09:12drbrainyup
19:09:18evanwe shouldn't be using them in socket
19:09:20seydarwhat identifies a blocking C call?
19:09:25evanseydar: the man page.
19:09:27nexcastellanrecv(2) is blocking, unless you set NONBLOCK. And resolv.rb calls Socket::recv.
19:09:33nexcastellan#recv.
19:09:37evannexcastellan: then Socket#recv is wrong
19:09:39evanvery wrong.
19:09:44drbrainwe never uses NONBLOCK
19:09:49DefilerAren't there parts of the socket API that are meant to block?
19:09:52Defilerin MRI?
19:09:54evanfull stop.
19:09:59drbrainno
19:10:06drbrain... Defiler: no
19:10:09nexcastellan(Always take what I say with a grain of salt, mind you...)
19:10:17evanruby code may NEVER call a blocking C function without knowing it wont block
19:10:20smparkes leaves the room.
19:10:24evanand the way you know is by using the Scheduler
19:10:27drbraininternally MRI does nonblocking operations and thread-switches
19:10:37evandrbrain: no
19:10:40evanit doesn't use nonblocking ops
19:10:54evanit uses select() to know that when it calls something, it wont block.
19:11:05DefilerDoesn't select block?
19:11:23ezmobius enters the room.
19:11:40drbrainevan: ruby_connect()
19:11:46nexcastellanHow do you set NONBLOCK in Windows, by the way?
19:11:54drbrainfcntl(fd, F_SETFL, mode|NONBLOCKING);
19:12:08nexcastellanI think that doesn't work in Windows, though I could be thinking O_NONBLOCK.
19:12:18drbrainwindows is all busted with respect to IO
19:12:35DefilerYeah, we are going to have a bunch of these functions overridden in the win32 platform files
19:12:35smparkes enters the room.
19:12:38eventualbuddha enters the room.
19:12:40DefilerWhen we get to that, I suspect
19:12:47evandrbrain: check out io.c
19:12:53evanand when it does a read() or fread()
19:13:00evanit doesn't put the fd in NONBLOCK mode
19:13:00drbrainyeah
19:13:18evanit uses rb_io_check_readable to know that the function wont block
19:13:24evanthats what I mean
19:13:37smparkes leaves the room.
19:13:56drbrainevan: I'm assigning you a task
19:14:01evank
19:14:05evanthat is?
19:14:15drbraindocument Scheduler so that people can figure out how to use it
19:14:24drbrainbecause I have absolutely no clue how to use the thing
19:14:25evani thought it was documented some...
19:14:29evanthats bad.
19:14:29drbrainor channels
19:14:31evanok
19:14:34evanthats a big fail
19:14:35DefilerYeah I have no idea how those work
19:14:42evanbecause you can't writing socket.rb without knowing how to use them.
19:15:00evanall attempts will result in this problem we have with resolv.rb
19:15:02DefilerMy cargo cult in socket.rb has a whole priesthood hierarchy
19:15:12evani'll write it right now.
19:15:17drbrain$ grep -c \# kernel/bootstrap/scheduler.rb
19:15:18evanit's fairly short.
19:15:20drbrain0
19:15:24Defilerhaha
19:15:33drbrainexamples too, please
19:15:45evank.
19:15:48evanwriting now.
19:17:25drbrain#642 is now yours
19:17:52nexcastellanHow was rb_io_check_readable ensure that a recv won't block? It seems to just check if the descriptor is open for reading, not whether there's anything to read.
19:19:19evanno
19:19:22evanit checks it's readable too.
19:19:26evanusing rb_schedule()
19:19:31drbrainrb_io_wait_readable()
19:19:42evanoh, yes thats what I mean.
19:20:02drbrainand rb_thread_wait_fd()
19:20:15drbrainrb_thread_schedule() is the magic
19:20:42eventualbuddha leaves the room.
19:21:25Defilerrb_sword_turn(EVERY_WAY);
19:23:20ezmobius leaves the room.
19:24:00dysinger leaves the room.
19:24:37ljulliar leaves the room.
19:25:07smparkes enters the room.
19:25:34eventualbuddha enters the room.
19:25:38ijcd enters the room.
19:26:20dysinger enters the room.
19:32:53Defilerevan: Didn't that "on_stack?" for variables go away?
19:33:37evanyeah
19:33:43evanthe compiler still has some code for them though
19:33:45evanbut it's never used
19:33:52dary leaves the room.
19:33:57evanno variables are allocated on the stack
19:34:35DefilerOK, so if I am fixing some code in bytecode.rb, and I see a check for 'on_stack?', I can refactor the code as if it would always be false?
19:35:22evanyep
19:35:40stepheneb_ enters the room.
19:37:47enebo enters the room.
19:42:18seydaris MethodDescription in bytecode.rb still needed? its commented as a precursor to CompiledMethod
19:42:40seydari lie. loooks like its still needed
19:42:48ezmobius enters the room.
19:43:28seydarbut why is MethodDesc still there if its been "replaced" by CompiledMethod?
19:44:35drbrainmaybe they documentation lies
19:45:10seydarmaybe
19:45:21seydarwe seek evan for this issue
19:48:21evanit lies
19:48:25evanit's not replaced.
19:48:29evanthey're different classes.
19:48:41evana precursor doesn't mean their the same
19:48:58evanit means that the contents of a MethodDescription are used to construct a CompiledMethod object
19:49:52binary42 enters the room.
19:50:29Defilerooh, this is a fun compiler bug
19:51:50binary42_ enters the room.
19:51:53binary42 leaves the room.
19:52:08moofbong enters the room.
19:52:17stepheneb leaves the room.
19:52:22michalw enters the room.
19:54:23Defilerevan: got a second to look at lib/compiler/nodes.rb with me for a sec?
19:54:35Defilerline 1235 in master
19:56:05evanI will shortly.
19:56:14Defilerk
19:57:10boyscout8 commits by Christopher Thompson
19:57:12boyscout * Return full message (bytes_read) on socket.; 44665db
19:57:13boyscout * There isn't a Mutex#sleep, use Kernel#sleep.; bc23bf6
19:57:14boyscout * Add recvfrom_nonblock.; a1ce03f
19:57:15boyscout * Add IPSocket#recvfrom(); 137c169
19:57:16boyscout * Ooops, remove call to debugger.; e5e2568
19:57:17boyscout ...
19:59:06seydardrbrain: can you help me get some doc for Kernel#select and IO#select?
19:59:19drbrainseydar: man select
19:59:34seydarlame
19:59:49seydarhow long should i make the description?
20:00:25drbrainI believe select can be described in 2 paragraphs reasonably well
20:03:26michaellatta enters the room.
20:04:28seydari should make this two commits
20:05:26boyscout2 commits by Evan Phoenix
20:05:27boyscout * Channel documentation; be813e6
20:05:28boyscout * Documentation for Scheduler; 172952d
20:05:30evandrbrain: take a gander at that.
20:06:23rubuildius_amd64Christopher Thompson: 44665db23; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
20:11:01seydardrbrain: http://pastie.org/234083
20:15:26Defilerevan: away from the keyboard for a second, but this is the scenario.. http://pastie.org/234082
20:15:53Defilerevan: no hurry, but when you are free, maybe you could explain the difference between '@defaults' and '@optional' in the compiler. It seems redundant
20:16:05evanone sec
20:16:07evani'm looking
20:16:11rubuildius_ey64Evan Phoenix: be813e67f; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
20:16:12rubuildius_ey64Christopher Thompson: 44665db23; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
20:17:59michaellatta leaves the room.
20:18:26rubuildius_amd64Evan Phoenix: be813e67f; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
20:19:06seydar leaves the room.
20:19:12evanDefiler: why is b showing up in the args at all?
20:19:15evanshould it?
20:19:18evani read
20:19:22evandef foo(a = b = nil)
20:19:37evanto be that you're creating a local called b, but that it's not an arg
20:21:32Defilera has a default value of 'create a local called b'
20:21:35DefilerI believe is how it reads
20:21:46Defiler(got this from ticket 634)
20:21:59evanok
20:22:07evanso why is B showing up in the Arguments node then?
20:22:10evanit shouldn't
20:22:14evanif it's just a local
20:22:19Defilerdescribe "a method definition that sets more than one default parameter all to the same value" do
20:22:21evanthats a parser bug
20:22:24Defileris the description of the spec
20:22:42Defilerso I guess we are reading it wrong.. it's really multiple defaults?
20:22:44Defilerwacky
20:23:09Defiler I wonder if that is a trustworthy understanding of the MRI intent
20:25:50evanwell
20:25:59evanPT shows b as an argument too
20:26:27evanyep
20:26:30Defilernote this code I pointed us at though
20:26:33evanPT has it same as our sexp
20:26:35Defilermost of it is about some parsetree bug
20:26:42Defilerso that makes me trust it less
20:27:22evantrue
20:27:31DefilerThat and that ryan character was involved
20:27:52evanesp. since http://pastie.org/234107
20:28:00evansee how, if you pass in an arg
20:28:03evana is set, but not b.
20:28:32Defileroh, yeah
20:28:41evanso a is the arg
20:28:43evannot b.
20:28:45Defilerthat makes it pretty clear. that spec is named improperly
20:28:46evanso PT and rbx are wrong.
20:28:52smparkes leaves the room.
20:28:57evanheadius: *poke*
20:29:02evanlets see what jruby says...
20:29:10smparkes enters the room.
20:29:56smparkes leaves the room.
20:30:01smparkes enters the room.
20:30:58smparkes1 enters the room.
20:31:07smparkes1 leaves the room.
20:31:53evansmparkes: please stop it
20:31:58octopod enters the room.
20:33:21heycarsten leaves the room.
20:33:51heycarsten enters the room.
20:34:54headiuswazzat
20:35:16headiusoh, yes, funky local stuff
20:35:18headiuswhat about it
20:35:36evandef foo(a = b = 1)
20:35:40headiusyep
20:35:40evana is the argument, right? not b.
20:35:47headiusa is the argument, yes
20:35:50evanb is a local thats created when the default expression is run.
20:35:51evanok.
20:35:54evanso PT is wrong.
20:36:17headiusI dunno how your parser works, also, but for us b gets the second local slote
20:36:19Defilerbut b should be initialized to nil even if a value is supplied for a?
20:36:19headiusconfounding
20:36:20DefilerBecause I notice we don't get a nameerror there
20:36:32headiusDefiler: b is still a local var, it's just an unassigned ar
20:36:38headiusso defaults to nil
20:36:55evanyeah
20:36:56Defileryeah
20:37:01evanit should just be nil if you call foo(1)
20:37:09headiusit's odd behavior, but ola pointed out one use for it
20:37:12DefilerSo our sexp input is wrong here
20:37:17evanyep
20:37:25headiusdef foo(a = (used_default = true; 1))
20:37:25Defilerugh
20:37:31headiusto know if you ended up with a default value
20:37:37headiusobscure, naturally
20:37:44Defilerclever
20:38:16evannice.
20:38:37evanPT gets that one wrong too
20:38:46Fullmoon enters the room.
20:38:58evanit must be searching and using the last one one seen
20:39:26Defilerwe're expecting an array of lvars here and only getting one, for that matter
20:40:10boyscout1 commit by Ari Brown
20:40:11boyscout * Doc'd core/io.rb and core/symbol.rb; dbe4f9b
20:40:27evanDefiler: where do you think we're expecting an array of lvars?
20:40:30evanin the sexp?
20:40:59evanthe only thing thats wrong in the sexp is that it's got [:args, :b, ...] instead of [:args, :a, .... ]
20:41:02Defilerlib/compiler/bytecode.rb line around 2143 (I have added some comments locally)
20:41:17Defilerbut there is @optional.each
20:41:32Defilerwhich is our opportunity to init the lvar correctly, it seems to me
20:41:34Defilermaybe I am wrong
20:41:35evanoh, thats not that big of a deal
20:41:40evanyou're wrong
20:41:43evanbecause the simple case of
20:41:47evandef foo(a = 1)
20:41:52evandoesn't generate an array
20:41:54evanand it works fine.
20:42:04Defilerit does I believe
20:42:06evanrather, the sexp doesn't have an array
20:42:10DefilerI always get an array object for @optional
20:42:11evanbut the compiler figures it out
20:42:14Defileroh, yes
20:42:18Defileragreed
20:42:22DefilerI meant after we get our hands on it
20:42:27Defilercoming out of Argument#consume
20:42:34raganwald enters the room.
20:42:38headiuswhat does pt output for things like def foo(a = (def foo; false; end; true))
20:44:52evanone sec
20:45:13rubuildius_ey64Ari Brown: dbe4f9bb1; build failed! nopaste error: something bad happened, stack trace follows
20:45:25evan[[:class, :Blah, [:const, :Object], [:defn, :foo, [:scope, [:block, [:args, :a, [:block, [:lasgn, :a, [:block, [:defn, :foo, [:scope, [:block, [:args], [:false]]]], [:true]]]]], [:lvar, :a]]]]]]
20:45:31evanack. bigger than I thought
20:46:25Defilerthat looks pretty sane to me, right?
20:46:30evanyeah
20:46:32evanthats fine.
20:46:45evani think the only bug is PT is reporting the wrong argument name
20:47:04evanDefiler: you know
20:47:11evanyou can use the Compiler API directly
20:47:14evanand feed it any sexp you want
20:47:17evanto test stuff out.
20:47:21DefilerOh, yeah. I should do that
20:50:03rubuildius_ey64 leaves the room.
20:50:16raganwald leaves the room.
20:51:25rubuildius_amd64Ari Brown: dbe4f9bb1; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
20:51:38dary enters the room.
20:52:06bitsweat enters the room.
21:01:35rubuildius_ey64 enters the room.
21:01:55jbarnette leaves the room.
21:12:50rubuildius_ey64Ari Brown: dbe4f9bb1; 2539 files, 8459 examples, 28445 expectations, 0 failures, 0 errors
21:13:46dary leaves the room.
21:20:54brapse leaves the room.
21:25:07jbarnette enters the room.
21:28:12benburkert leaves the room.
21:32:12benburkert enters the room.
21:32:36octopod leaves the room.
21:34:11imajes enters the room.
21:34:39jbarnette leaves the room.
21:36:12dgtizedwho is chris thompson?
21:37:49DefilerIs that nexcastellan's real name?
21:37:58Defileryeah
21:37:58dgtizedjust swapping thread.rb from @mutex.sleep to sleep doesn't fix thread
21:38:00nexcastellanYeap.
21:38:02dgtizedit's still broken
21:38:18nexcastellanIt was working for my specs, now committed to rubyspecs.
21:38:26nexcastellanI freely admit that it may not be the right solution, though.
21:38:39dgtizedhttp://pastie.org/234197
21:38:52dgtizedit's an instant deadlock
21:39:22nexcastellanOkay, thanks, I'll take a look at that this afternoon. I'm working on something else right at the moment.
21:39:52nexcastellanI wonder why resolv.rb worked. Perhaps it just never hit that bit.
21:39:56imajes leaves the room.
21:40:10dgtizedk, I put in a fix that passed that test but that somehow broke webrick
21:40:46nexcastellanNote that @mutex.sleep would always have failed before, as that method didn't exist. Not having seen your fix, I'm not sure how you managed to break Webrick.