Index

Show enters and exits. Hide enters and exits.

00:00:29KirinDave enters the room.
00:01:00Vagabonddoes rbx still need gcc 4?
00:01:20rueShould not, I think brixen built with 3 on Solaris or something
00:01:27Vagabondnice
00:01:28drbrainVagabond: no
00:01:31dbussinkVagabond: well, it builds on freebsd / openbsd that have older versions
00:01:43dbussinkVagabond: something like 3.3 is the minimum
00:01:47Vagabond3.3 is fine
00:02:05dbussinki've seen someone who tried it with 3.2 and if i recall correctly, that failed
00:02:43dbussinkVagabond: what are you testing with?
00:02:56rueUltraSPARC?
00:03:51dbussinki've been doing some tinkering on solaris, but was a pretty big pain
00:04:05VagabondI haven't done anything yet
00:04:08dbussinkespecially getting it to use the right gnu tools
00:04:13Vagabondjust asking questions
00:04:29Vagabondoh, I've set up a gnu toolchain on solaris before, using pkgsrc
00:04:50rubuildiusEvan Phoenix: c62daf7d6; 1573 files, 5478 examples, 18952 expectations, 0 failures, 0 errors; http://rafb.net/p/3bzaeU93.html
00:05:30dbussinkVagabond: ah well, i had no solaris experience when i tried it out
00:05:34evandbussink: BINGO.
00:05:43evangot the obsd SEGV in DEV mode
00:05:55twbray_ leaves the room.
00:05:59evanit's the VTALRM signal
00:06:02dbussinkevan: ah, portable ucontext perhaps?
00:06:05dbussinkor related to that?
00:06:07evani guess obsd is firing it really early
00:06:08evanno
00:06:10evannot related.
00:06:28Vagabondif it does work, I can try to compile on ultrasparc/solaris, ultrasparc/[net|open|free]BSD netbsd/alpha and mips/IRIX (not that anyone really cares about alpha and IRIX anymore)
00:06:41evani do really like that the obsd backtrace has debug symbols
00:06:52dbussinkVagabond: that would be really nice
00:06:53evanie, obsd left debug symbols in their libpthread and libc
00:06:59Vagabondbut hey, extra portability never hurts, eh?
00:07:13dbussinkVagabond: most should work if it uses the gnu tools like gcc and gmake
00:07:18Vagabondyeah, they do
00:07:38dbussinkVagabond: i got it to compile in the end on solaris
00:07:48dbussinkVagabond: did take some ugly shortcuts though
00:07:51Vagabonddbussink: nice
00:07:59Vagabondmaybe I can help make it better
00:08:12VagabondI've spent a lot of time porting stuff to weird platforms
00:08:27dbussinkVagabond: if you feel like it, please do :)
00:08:53Vagabondthe gcc4 thing going away should make things easier ;)
00:09:40dbussinkVagabond: a lot of funky optimizations options have been removed, so that's one thing that makes it a lot easier
00:10:05Vagabondnice, it'd be great if rbx was as portable as MRI
00:10:22boyscout2 commits by Dirkjan Bussink
00:10:24boyscout * Fixed #332 and cleaned up Time a bit. Thanks to gls; ba5a0d8
00:10:24boyscout * Replace ulong in PortableUContextPPC with unsigned long; ce5c4e0
00:10:34evanrubinius will be more portable than MRI in the end
00:10:35therealadam leaves the room.
00:10:52evanbecause we don't have any of the very platform specific stack walking code.
00:11:27dbussinkevan: that should get rid of the warnings on openbsd
00:11:33evandanke
00:11:37Vagabondevan: nice
00:11:42dbussinkevan: that's german :P
00:11:45evani know.
00:11:51evanthath was the closest I could get.
00:11:58dbussinkjust leave of the last e :)
00:12:06evanit was either that or stoopwaffle!
00:12:22dbussinkhehehe
00:12:39DefilerWe need to find some reason to work on Rubinius here: http://www.metalcamp.com/nav.php?lang=en
00:12:40dbussinki haven't forgotten that i promised to bring some to railsconf :P
00:12:52obiejuan_ enters the room.
00:13:07Defilerlooks gorgeous: http://www.metalcamp.com/nav.php?id=4&lang=en&subid=0
00:13:15evandbussink: maybe a hackfest, with axes?
00:13:26evandbussink: huzzah!
00:14:10rueDefiler: That is clearly a fake, "opeth" is not even a real ordinal number
00:14:29Defilerhaha
00:15:19kofno enters the room.
00:17:17cremeshow do i discover where "Socket::Foreign.getsockopt" is defined? i looked in lib/ext where the subtend parts are, but no luck
00:17:36evanin lib/socket.rb
00:18:10cremesevan: right, but i thought Socket::Foreign was a ruby wrapper around some ffi and C parts, right?
00:18:28ruecremes: FFI is all done in Ruby
00:18:45cremesok
00:18:47rueThe user side, that is. The backend is obviously in C land
00:18:56cremessure...
00:19:09evancremes: Foreign.getsockopt is bound directly to the libc getsockopt function
00:20:05cremesevan: thanks. i was curious because at least one of the failing specs on ppc is endian related; i thought i could solve it in C-land with a #ifdef __BIG_ENDIAN__ kind of wrapper
00:20:28cremeshow do you all recommend we do something like that in ruby?
00:20:34evanwhats the fix?
00:21:19evancall htonl?
00:21:20Defilerrue: How can I NOT go to a metal festival that looks like this? http://www.metalcamp.com/downloads/beach_02.jpg
00:21:38Defilermetal nerds in the sun ha ha
00:21:39cremesevan: in #getsockopt we have a line "return val.read_string(length.read_int)" which needs to flip the bytes on "length.read_int"
00:21:46dbussinkpirates ahoy!
00:21:55cremesevan: but only on big-endian boxes
00:22:05evanwhy?
00:22:10evanis that the correct fix?
00:22:58cremesdon't know for sure yet... either that function needs to do it or the comparison value in the spec needs to flip
00:23:09evanwhats the spec failure?
00:23:12cremesi don't know where the error is yet... spec or code
00:23:12evanso i can look
00:23:35rubuildius_ppcDirkjan Bussink: ba5a0d871; 1573 files, 5478 examples, 18931 expectations, 0 failures, 28 errors; http://pastie.caboo.se/155699
00:23:47cremesevan: here... http://pastie.caboo.se/155700
00:24:15drbrainevan: what's something I can run that uses the stables?
00:24:33evandrbrain: rake clean:rbc build
00:24:46rubuildiusDirkjan Bussink: ba5a0d871; 1573 files, 5478 examples, 18956 expectations, 0 failures, 0 errors; http://rafb.net/p/LUHo6a71.html
00:24:56drbrainaww, I broked it
00:25:44evancremes: does that spec fail under MRI?
00:27:05cremeslooking now... since the change to bin/mspec, how do i run the equivalent of bin/ci -t ruby ?
00:27:16evanbin/mspec ci -t ruby <file>
00:27:42juliamae enters the room.
00:27:59cremesit tells me "ruby is not a valid target for mspec ci"
00:28:16crossblaim enters the room.
00:28:20crossblaimhi
00:28:26rue'Lo
00:28:28Defilerevan: This is where we're at on activesupport, by the way: http://rafb.net/p/QMXIQf98.html
00:28:38hornbeck enters the room.
00:29:10drbraincrap how do I enable excessive tracing again?
00:29:18drbrainI'm writing it down this time in README-DEVELOPERS
00:29:45Defilerevan: haha hoooollyyyyy crapppppppp
00:29:58Defilerevan: activesupport redefines instance_exec
00:30:06cremeshmmm, i can't run bin/ci -t ruby at all now... it only runs rbx
00:30:23DefilerUse bin/mspec ci -t ruby
00:30:31Defiler(though the other should still work.. sounds buggy)
00:30:51cremesDefiler: it gives me "ruby is not a valid target for mspec ci"
00:30:59agardineri think brixen removed ruby as a target for ci... doesn't really make sense to run ci on MRI
00:31:17evanDefiler: there is no instance_exec in 1.8
00:31:20cremesagardiner: so how can i run a spec against mri? what's the syntax?
00:31:21evanDefiler: so it must defineit
00:31:25DefilerWhat? It makes utter and total sense to run CI on MRI
00:31:27rueDefiler: It was a "new" method in 1.8
00:31:44agardinercremes: just use bin/mspec <spec|dir>
00:31:44Defilerevan: Yeah, I see what it is doing now. The bug is: unless defined? instance_exec
00:31:52evandefined?
00:31:53evanwtf.
00:31:53DefilerReturns false on rubinius, when it should be true
00:31:55evanfired.
00:32:24Defilerwhy the fuck are they using defined? to check for responds_to?
00:32:26Defilerthat is madness
00:32:30Defilermaadddnnnesssss
00:32:52agardinerwelcome to rails... :-P
00:33:01cremesevan: getsockopt_spec passes on mri on osx ppc
00:33:03KirinDave leaves the room.
00:33:22drbraincrap how do I enable excessive tracing again?
00:33:28evancremes: could you check that [1].pack("i") returns the same value under rubinius as MRI for you?
00:33:30nicksieger leaves the room.
00:34:21cremeshow do i launch irb under shotgun?
00:34:39evan./shotgun/rubinius
00:34:42obiejuan_ leaves the room.
00:34:42evanit will launch automatically
00:35:09KirinDave enters the room.
00:35:18cremesevan: [1].pack "i" returns different values on my platform
00:35:21drbrainah, got it
00:35:28boyscout1 commit by Evan Phoenix
00:35:29boyscout * Protect the premept alarm when it runs very early; b6bd626
00:37:24crossblaimspec/core/kernel/load_spec.rb tries to load some files from a non-existent spec/fixtures/load directory.
00:37:24crossblaimShould I create the missing folder and files, or change load path? (there is a fixtures folder in spec/ruby/1.8)
00:37:51evancremes: so, on your machine, MRI and rubinius return different values for "[1].pack('i')"
00:37:54evanyes?
00:37:59evanif so, then it's Array#pack thats broken
00:38:00cremesevan: correct
00:38:03evannot getsockopt
00:38:09cremesi will look at it
00:42:05evanok, almost got openbsd running irb
00:42:17evanseems that openbsd doesn't have tgetent
00:42:34evanwhich strangely, /usr/lib/libreadline is looking for
00:43:01dbussinkevan: there is a man page
00:43:11wycatsArray#pack ftw
00:43:13wycatsdefiler: pm
00:43:34dbussinkevan: looks like it's in termcap / curses and not readline
00:44:03evanyeah
00:44:10evanit's that you have to link to libncurses too
00:44:40dbussinkwell, there are already exceptions for various platforms in the makefile
00:44:44dbussinkjust add another one :P
00:44:49evanB
00:44:49evanI
00:44:50evanN
00:44:51evanG
00:44:51evanO
00:44:52dbussinkbut i really need to get to bed
00:44:57evanopenbsd runs irb
00:45:02evani'll run the specs now.
00:45:06cremesi think the mspec guards may be wrong... look at mspec/runner/guards/endian.rb... both endians are defined as [1].pack('L') for unsigned long
00:45:35cremesi think little endian should be [1].pack('V') and big endian should be [1].pack('N') in those guards
00:45:47evanno
00:45:48evannot true
00:45:54cremesno?
00:45:55evanL is whatever the encoding of the system is
00:45:59cremesright
00:46:10evanso the guard checks how L is encoded
00:46:15cremesah, i see
00:46:34cremespattern[-1] == one or zero
00:46:51cremesi'll keep looking later... gotta run
00:47:08evank
00:47:54evanhrm
00:48:03evanmy openbsd parallels VM locked up
00:48:24dbussinkthat's nasty
00:48:39rubuildius_ppcEvan Phoenix: b6bd62605; 1573 files, 5478 examples, 18931 expectations, 0 failures, 28 errors; http://pastie.caboo.se/155705
00:49:10dbussinkevan: mine just got through with 47 errors
00:49:14evanok
00:49:19evanwell, then we're getting there.
00:49:46rubuildiusEvan Phoenix: b6bd62605; 1573 files, 5478 examples, 18956 expectations, 0 failures, 0 errors; http://rafb.net/p/l0XiH118.html
00:49:51dbussinkall errors are dir / file / socket / name anything platform specific related
00:50:06evanhehe
00:50:06wayneeseguin_ leaves the room.
00:50:28wayneeseguin enters the room.
00:51:25drbrainevan: please review my zip -> ar changes: http://rafb.net/p/x10tYv38.html
00:52:30evani'd prefer it follow the rest of the C code
00:52:34dbussinkbut i'm turning in
00:52:37evanie, remove rubinius_ from the front of everything
00:52:41evanand have it just be ar_
00:52:51KirinDav enters the room.
00:52:54drbrainwon't that colide?
00:52:57dbussinknite!
00:53:08evanwith what?
00:53:18drbrainsome other ar thing
00:53:23evannot that I know of
00:53:29drbrainok
00:53:33drbrainanything else?
00:53:42evanar_validate should be type int
00:53:46evanand return TRUE or FALSE
00:53:52drbrainok
00:54:28evanditto with the rest of them
00:54:41evanunless they actually return a real OBJECT
00:54:54drbrainok
00:55:29drbrainhere's the Rakefile changes:
00:55:35drbrainhttp://rafb.net/p/SPqj3V66.html
00:56:55evanis it working?
00:57:09drbrainyes
00:57:15evancool
00:57:21evanwe can deal with this later
00:57:27evanbut the AR#replace looks... odd
00:57:38drbrainI'm leaving in the libzip stuff
00:57:38evanit takes the ENTIRE contents of the AR as the last param?
00:57:42drbrainwhy?
00:57:55drbrainno, it takes the file data you're adding
00:58:05evanah ah
00:58:09evani read it wrong.
00:58:49drbrainI didn't write it to be efficient for random access, since we don't do that for our use case
00:58:54drbrainwe just add crap to the end
00:58:54evanyeah, thats fine.
00:59:02avi_ enters the room.
00:59:14evanavi_: welcome back
01:01:53drbrainyou want me to check this in, with the rake changes?
01:02:32evansure
01:02:44evanthursday is a good day to blow things up
01:03:09drbrainit shouldn't blow up too hard, as it still supports .zip rbas
01:03:16evanyep
01:04:17DefilerThis project gets more fun as time goes on
01:04:30evan:D
01:04:32DefilerLong enough to forget which parts you have written
01:04:45DefilerI was just looking at some code, thinking "damn, that is pretty sweet".. and then realized I wrote it ha ha
01:04:53evanhahah
01:04:55evanlove that
01:04:59evani've done that too
01:05:00hornbeck leaves the room.
01:05:17evani've also done the 'wtf is this?! this is the stupdiest thing ever... oh, i wrote it.'
01:05:23DefilerYeah that too
01:05:28d2dchat leaves the room.
01:05:41wmoxam leaves the room.
01:05:56evanack, i gotta get a hair cut tomorrow.
01:06:10agardineris that normally followed by the "damn, this is pretty sweet" moment? :-D
01:06:24evansometimes
01:06:29agardinerhehe
01:06:40evansometimes it is: "Man, i must have been high when I wrote this."
01:09:42Defilerevan: Hrm.. do we no longer normalize :vcall nodes down to calls?
01:09:49evanno
01:10:00evanthere is a VCall AST node now
01:10:00DefilerNo we no longer do that?
01:10:02DefilerOK
01:10:17DefilerSo that explains this defined? regression.. it gets fed a vcall
01:10:33evanah
01:10:48evanyeah, i needs to call respond_to? on self i guess
01:11:42DefilerIt already handles that, yeah
01:11:51Defiler..but because it was only expecting :call nodes in compiler1, etc, etc
01:12:04evanyep, yep, yep.
01:12:23sfaxon leaves the room.
01:13:28DefilerAah, actually... it does need special handling
01:13:37DefilerIs there a good way to get a receiver object for 'self'?
01:13:40Defilerinside bytecode.rb
01:13:57Arjenezmobius, congrats on finishing the book! :)
01:14:04evanDefiler: how do ya mean
01:14:11evani don't follow
01:14:16evang.self
01:14:20evanpush's the current self on the stack
01:14:27evaner
01:14:29evang.push :self
01:15:03Defilerevan: http://rafb.net/p/C8SYLF85.html
01:15:05Defileraha
01:15:12DefilerThanks. That's what I needed
01:15:27DefilerI was thinking I wanted/needed one of those 'self's like on line 6 of that paste
01:15:43evanno
01:15:45evanyou don't.
01:15:56evandrbrain: going to commit the ar stuff?
01:16:11drbrainevan: yeah, making sure it still works
01:16:16evangood plan.
01:16:47AndrewO enters the room.
01:19:25twbray__ leaves the room.
01:21:53boyscout2 commits by Wilson Bilkovich
01:21:54boyscout * Handle vcall and fcall arguments to 'defined?'; f415cec
01:21:55boyscout * Some compiler specs for 'defined?' handling; e50ec64
01:22:34drbraingah, everything but compiler.rba works
01:23:31drbrainI'm probably missing a file or something
01:24:32ezmobius leaves the room.
01:24:55drbrainhaha, somebody put .swp files in the stables
01:24:59drbrain(compiler stable)
01:27:38drbrainwhat's a .rbo file?
01:27:49drbrainI have lib/compiler/garnet/test.rbo
01:27:49DefilerAnybody already up to date on the 'rake install' process?
01:28:03Defilerrequire 'tempfile' fails when I do it via the rbx console, but works when I do it via shotgun/rubinius
01:28:04drbrainDefiler: in what sense?
01:28:34drbrainI think tempfile is still in stdlib/
01:28:45Defileraha, so rake install skips all that?
01:28:57drbrainI believe so
01:29:07DefilerWhat is the policy for moving things to lib?
01:29:21drbraindo it when it works
01:29:48drbrainI used tempfile a bunch in the RubyGems tests, I'm pretty sure it works
01:30:06DefilerYeah.. and it passes the (ha ha) built-in test
01:30:23ezmobius enters the room.
01:31:28Defilerhaha I hereby consecrate my church
01:31:29KirinDav leaves the room.
01:31:38DefilerThe creed involves hating activesupport as much as possible
01:31:39rubymaverick_ leaves the room.
01:31:55Defilerhttp://rafb.net/p/912gj497.html
01:32:16DefilerLet those who flaunt the earth-king with a fresher death be kissed
01:33:08rubuildius_ppcWilson Bilkovich: f415cecac; 1574 files, 5480 examples, 18933 expectations, 0 failures, 28 errors; http://pastie.caboo.se/155719
01:34:46rubuildiusWilson Bilkovich: f415cecac; 1574 files, 5480 examples, 18958 expectations, 0 failures, 0 errors; http://rafb.net/p/RcJiLE60.html
01:37:08wayneeseguin leaves the room.
01:43:03Defilerevan: oohhh kay..
01:43:13Defilerevan: So, we define this Class#subclasses method
01:43:30evandrbrain: test.rbo is old
01:43:31Defilerevan: ..turns out activesupport does too.. and so it goes into a loop in ObjectSpace.
01:43:35evanit's a test
01:43:37ezmobiusArjen_: thx
01:43:42evanDefiler: fun.
01:43:49DefilerSo, I guess we need a new name for ours
01:45:06agile enters the room.
01:45:12Defiler__subclasses__ ? or are we trying to avoid such hinkery?
01:45:22evanyeah
01:45:25evanthat sounds fine.
01:45:39agardinereww... not to me it doesnt
01:46:10agardinerit seems fair that a Ruby impl might add a subclasses method to Class
01:46:16agardinermaybe AS should be patched?
01:47:13ezmobiushah good luck with that
01:48:02ezmobiusAS steps all over the namespace without any care for mortals
01:48:22drbrainah, here we go, I need to fix up .rba loading from kernel/core/compile.rb
01:48:24boyscout3 commits by Wilson Bilkovich
01:48:25boyscout * Rename Class#subclasses to __subclasses__ to avoid a conflict with ActiveSupport; 5311938
01:48:26boyscout * Move the ghastly creation that is tmpdir.rb from stdlib to lib; 0d50795
01:48:27boyscout * Move tempfile.rb to lib, since it seems to work nicely; ee03d8c
01:49:08KirinDave leaves the room.
01:52:20crossblaim leaves the room.
01:53:55Defileroooooh this one is fun
01:55:00drbrainok, I will push my ar(5) change after I get home
01:55:03Defiler aliased_target, punctuation = target.to_s.sub(/([?!=])$/, ''), $1
01:55:13DefilerWe seem to not update $1 in time for that to get the right value
01:55:19DefilerWe go right to left, right?
01:55:27evanoh gah
01:55:33drbrainyup
01:55:37evanthats insane.
01:55:38DefilerSeriously, I hate activesupport
01:56:32agardineri was wondering when we'd hit some real code that did this...
01:56:33drbrainevan: I thought for sure order-of-evaluation would take at least a month to hit code that needed it to match MRI
01:56:43drbrainis out
01:56:47evanlaters
01:56:48Defilerzero day evaluation order exploitz
01:56:57evanwell
01:57:05Defilerevan: what did matz say about this again?
01:57:12evanwe can fix this one without fixing call ordering
01:57:16evanbecause this is just masgn ordering
01:57:21agardineryeah, this is masgn
01:57:26evanmatz said "I expected it to be left to right."
01:58:14rubuildius_ppcWilson Bilkovich: 531193842; 1574 files, 5480 examples, 18933 expectations, 0 failures, 28 errors; http://pastie.caboo.se/155723
01:58:39evani've been thinking about argument evaluation
01:58:45evani'll come up with a nice solution once
01:58:58Defiler./shotgun/rubinius describe the_worst_thing_ever.rb
01:59:58rubuildiusWilson Bilkovich: 531193842; 1574 files, 5480 examples, 18958 expectations, 0 failures, 0 errors; http://rafb.net/p/s8n35u43.html
02:00:44Defilerhttp://rafb.net/p/oxQv5j13.html
02:00:48Defilerjust in case anyone wants to play
02:01:34agardinerwhen i considered this before for masgn, i thought a reverse opcode that could reverse n stack operands would make it a failry simple change...
02:06:34DefilerHere's a better one-liner whee a, b = ($a = 1), $a
02:07:39agardinerhuh? is that real?
02:08:12agardineror a test for the problem?
02:08:40DefilerJust a simplified test
02:08:52Defilerthough using @a produces a smaller sexp, so I'll go with that
02:08:53agardineri was gonna say.. wtf!
02:09:09agardiner:-)
02:11:45Defilerhttp://rafb.net/p/KsOdmr48.html
02:12:00Defilerwhat am I missing there? That kinda looks like it should work already, to me
02:13:04agardinernah, push_ivar, :@a puts the value of @a on the stack
02:13:22agardinerbut @a is set in the next two ops
02:13:33agardinerso the first op put nil on the stack
02:14:05agardineri.e. the push_ivar :@a needs to happen after it has been set, not before
02:14:12kofno leaves the room.
02:15:18macournoyer enters the room.
02:15:40KirinDav enters the room.
02:17:00agardineri.e. line 4 needs to move to between 8 and 9
02:17:11boyscout9 commits by Eric Hodel
02:17:12boyscout * New ar(5) stables.; 303eae2
02:17:13boyscout * Build ar(5) .rba files for everything but compiler.; 4e6fced
02:17:14boyscout * Style cleanups.; 997537a
02:17:15boyscout * Don't fail ar(5) reading at EOF; 7a7333a
02:17:16boyscout * Allow Ar to create archives; f29ff3b
02:17:17boyscout ...
02:18:17Defileragardiner: aha, right. Time for some food I think.. brain not worky
02:18:39agardinerhehe... me too (time to eat, i mean)
02:18:52Defilerholy crap look at the time
02:19:00DefilerNo food in 8 hours. No wonder
02:28:23rubuildius_ppcEric Hodel: 303eae25f; 1574 files, 5480 examples, 18933 expectations, 0 failures, 28 errors; http://pastie.caboo.se/155741
02:29:51rubuildiusEric Hodel: 303eae25f; 1574 files, 5480 examples, 18958 expectations, 0 failures, 0 errors; http://rafb.net/p/VRvUYj13.html
02:30:16antares leaves the room.
02:38:15kofno enters the room.
02:40:36mernen enters the room.
02:40:46jbarnette leaves the room.
02:46:47VVSiz_ enters the room.
02:49:35lstoll_ enters the room.
02:50:27_mutle enters the room.
02:51:31jtoy enters the room.
02:53:54KirinDav leaves the room.
02:55:20seydar enters the room.
02:55:35bitbckt enters the room.
02:56:11seydarso how exactly should I write a patch for two files?
02:57:16rueNot by hand
02:57:41seydari figured, since diff looks ugly. so what should I do? how do I use git-format-patch
02:59:56seydarrue: what should I do?
02:59:59rueAh, I think I wrote this somewhere too.. if not, I need to
03:00:53seydargit log
03:00:58seydarwhoops. not my terminal
03:01:01ruehttp://rubinius.lighthouseapp.com/projects/5089/using-git
03:01:01lstoll leaves the room.
03:01:04rueAt the bottom there
03:01:11seydari'm there, but it doesn't make sense
03:01:23seydarhow do I write the file though?
03:01:27rueSorry, just dashing in and out quick
03:01:54ruegit format-patch <first_commit_I_want_to_include>..<last_commit_I_want_to_include>
03:02:09seydarhow do I write the commits?!?!?!
03:04:21rueIf you want to just make a single patch and you only have changes, no new/deleted files, you can use `git commit -a`
03:04:51rueIf you want several, then `git add` the files for the first commit and then `git commit`, then repeat for the second
03:04:57VVSiz leaves the room.
03:05:25rueOnce you have all commits in, then `git format-patch ...`
03:05:47seydargit commit -a will walk me through writing the patch?
03:06:15seydarbtw, how long should `bin/mspec ci` take?
03:06:28rueYou just need to give a commit message, usually. The patch is built for you
03:07:08mutle leaves the room.
03:07:39enebo leaves the room.
03:08:35drbrainseydar: it took me 60s last time I ran it
03:09:16seydardrbrain: the same command i posted? because it's banking on 5-10 min now
03:10:22drbrainseydar: 22s, but everything was still hot
03:10:29drbrainseydar: I have a 2.6GHz MBP
03:10:34seydarah
03:10:48seydari have 512mb RAM and 1.25 GHz
03:11:02drbrainthe first time may take longer because it compiles a lot of stuff
03:11:08seydaroooooh!
03:11:13seydarwell then I'll let it sit
03:11:47seydarso how do I do a commit message? i want to replace 3 lines of code in shotgun
03:12:09drbrain`git commit` will bring up an editor
03:12:19drbrainor, you can provide a message with the -m flag
03:13:12d2dchat enters the room.
03:13:25drbrainI recommend the former
03:14:11seydarand in the editor, what should I type
03:14:55drbrainyou should have at least one line basically describing the changes
03:15:11drbrainand if you need more room to fully describe, hit return and type as much as needed
03:15:50seydarok
03:15:55seydarbut what about the code entering?
03:16:38defunkt enters the room.
03:16:49drbrainI don't understand
03:17:20seydarwhen do I enter the code for it to patch?
03:17:30Vagabondseydar: the patch is generated from the changes you've made to the tree
03:17:37seydarooooh!
03:17:38drbrainbefore you run `get commit` and test
03:17:38seydargenius!
03:17:47seydargit*?
03:17:54drbrainah, I see
03:18:43Vagabondman, git looks pretty nifty, I've never had a reason to look into it before
03:19:12drbrainI'm not sure which command generates the mail-formatted patch
03:19:56Vagabondgit format-patch; git send-email ?
03:22:44seydarso i ran git commit, it did NOT open up an editor, but displayed some commented stuff
03:22:55seydari should run `git commit -a` now
03:24:57drbrainyes
03:25:27nicksieger leaves the room.
03:25:44ezmobiusseydar: git gui is an easy interface for making commits and patches
03:25:54seydarok i did that. now, to send it off, git format-patch ?
03:26:54drbrainseydar: I think so
03:27:13seydarok. bottoms up
03:28:38seydari did it. do i need to do `git send-email` now?
03:29:11Vagabondgive it a try
03:29:43KirinDav enters the room.
03:31:27headius enters the room.
03:32:07seydarany other commands I should try out?
03:32:22seydarok i think mspec ci is stalling on PPC
03:32:31Vagabondhttp://git.or.cz/course/svn.html
03:32:33seydarwhoops
03:32:35Vagabonddid you look at this?
03:32:46seydarbecause i deleted a file it was using
03:34:44Vagabondare all the ci tests supposed to pass?
03:35:42seydar leaves the room.
03:39:21seydar enters the room.
03:39:49hornbeck enters the room.
03:39:50seydarwhat does an E mean in the 'bin/mspec ci' run?
03:40:05Vagabonderror?
03:40:42seydark. at the end, will it tell me which ones there were errors on?
03:41:09rubyconsumer enters the room.
03:41:13seydaruhoh. i think i did something wrong in my patch. nowhere did I give it my name
03:42:35seydaralthough git is smart. maybe it read my mind
03:43:02Vagabondworst that happens is that evan gets a confusing email
03:43:59evanyou didnt' do the first step in our using-git page
03:44:03evanie, setup a name and email
03:45:02seydari think i did. i probably should've done it again
03:48:45KirinDav leaves the room.
03:48:50seydarok everyone i'm going to try fixing a spec
03:49:07Vagabondevan: are all the CI specs expected to pass?
03:51:11djwhittI'm not evan, but yeah, they should
03:51:14seydarim on tiger PPC, remember
03:51:44seydarso how should I fix a spec that's not in spec/ ? I'm trying my hand at IPAddr
03:51:48VagabondI'm getting failures in some of the socket/IPADDR stuffon freevsd
03:51:57seydarsame
03:52:04djwhitthowever, I think the only platforms everything is currently passing on are intel 32bit and perhaps OS X on intel 64 bit
03:52:25seydarlame. Vagabond, how do I run a spec for something in stdlib?
03:52:48Vagabonddjwhitt: I've got i386
03:53:10djwhittVagabond: yeah, but there are issues on freebsd right now I think
03:53:23djwhittI should have said intel 32bit linux
03:53:40djwhittat least that's the only thing I can run it cleanly on right now
03:53:57djwhittthat's also what rubildius is
03:54:05juliamae leaves the room.
03:54:17djwhitterr... rubuildius
03:54:40Vagabondah
03:54:59VagabondI suspect that's why it's failing for seydar too
03:55:10VagabondosX being derived from fbsd and all
03:55:23djwhittwell, I think it runs cleanly on latest OS X
03:55:29apples enters the room.
03:55:33djwhittat least I imagine so since that's what evan is using I think
03:55:39djwhittlatest OS X on intel I mean
03:55:59djwhittseydar is on PPC + an older version of OS X
03:56:34Vagabondyeah
03:57:54macournoyer leaves the room.
04:01:55seydars/older/better
04:02:26seydarwhat's rubuildius?
04:03:08seydarwhere are the specs for stdlib?
04:04:14seydarfound it
04:05:38rueBleh, finally done with UNIX Network Programming Vol. 1, 3rd Edition. I only have three more books to read.
04:08:05ezmobius;)
04:08:24seydargradz
04:08:34seydar*rocky theme music as rue levels up*
04:09:47_ADS enters the room.
04:10:04VagabondSocket.const_get "AF_INET6" => 28
04:10:13josb leaves the room.
04:10:25Vagabondthat seems to be why IPSocket isn't getting valid_v4? and friends defined
04:10:35rueezmobius: I have read, not kidding, around 8400 pages this last two weeks so yours has to wait a little while--congrats though :)
04:10:40lstoll enters the room.
04:10:47Vagabondseydar: what does that report on your rbx install
04:10:56ezmobiuswow thats some serious researching
04:12:02seydarVagabond: install was fine
04:12:02bitbckt leaves the room.
04:12:37Vagabondseydar: ...?
04:12:38evanVagabond: yes ci should pass
04:12:39seydarhow'd you find out the AF_INET6 thing?
04:12:47evanthere appears to be ci failures on freebsd that need to be fixed
04:13:01seydarVagabond: i am trying to fix IPAddr now - same errors as you
04:13:05Vagabondevan: indeed, 12 of them
04:13:17apples leaves the room.
04:13:32Vagabondlet me see if this fixes them
04:13:57Vagabondseydar: Socket.const_get "AF_INET6" <- what does that evaluate to for you?
04:14:29seydarMRI => 30
04:14:58Vagabondseydar: in rbx
04:15:04seydarchecking
04:15:06seydartakes a bit to load
04:15:29seydarrbx => 30
04:15:59Vagabondit returns 28 for me on mri and rbx, but that prevents some methods being defined on IPSocket
04:16:21Vagabondsee line 15 of stdlib/ipaddr.rb
04:17:46Vagabondif i comment out that line, I'm down to one failure
04:17:50rueWow, that is some dumb code
04:18:02rueOr possibly some very clever but extremely poorly documented code
04:18:04Vagabondi have no idea what that line is checking for
04:18:13Vagabondother than ipv6 support?
04:19:46seydaris it the unless Socket.const_defined? line?
04:20:20seydarwhy did you want to comment it out
04:20:20Vagabondyes
04:20:41Vagabondbecause that conditional returns false on your and my machines
04:20:41seydar(this is learning xp for me)
04:20:56seydarwhat? it returns true
04:21:00seydarit's asking if it's defined
04:21:04defunkt leaves the room.
04:21:05Vagabondand therefore valid_v4? and friends don't get defined
04:21:08Vagabondso those specs fail
04:21:13Vagabondseydar: 'unless'
04:21:23seydaryea, if its.....
04:21:28Vagabondit negates the expression, therefore the condition is false
04:21:31Vagabondno?
04:21:38seydari follow
04:21:51lstoll_ leaves the room.
04:21:53seydarbut how did you know valid*s weren't getting defined?
04:22:25VagabondI looked at the output of mspec ci?
04:22:35seydari am too, at the error messages
04:22:41seydarno where does it say "undefined method"
04:23:11Vagabondright, you had to look at the file:linenumber
04:23:15Vagabondand see how it reached that raise
04:23:18Arjen_ leaves the room.
04:23:20seydarwhat exactly are you running
04:23:34seydari'm running them on operator_spec.rb
04:23:47VagabondI ran bin/mspec ci
04:24:26Vagabondthe backtrace references ipaddr.rb:422
04:24:29seydaruhuh
04:24:31seydarbingo same here
04:24:46Vagabondand that raise is right after a call to IPSocket.getaddress
04:24:51seydarso i went to look at why getaddress was raising hell
04:25:10Vagabondwhich, as you'll note, is alised in that block that's not being executed on our machines
04:25:10seydarand i tested valid? s and it returned true
04:25:18seydarfuck you
04:25:22twbray enters the room.
04:25:29Vagabond?
04:25:29seydar>.<
04:25:34seydari can't believe i missed that
04:25:54seydaryou just beat my ass down in general logic
04:26:05seydarglad you're here though ;-)
04:26:44Vagabondfunny way of showing it :P
04:26:53seydarhaha
04:26:56seydarnice! your trick worked! it cut my errors down to 3
04:27:03Vagabondthe real question is, why is that line even there
04:27:17seydarnoooo clue. don't want to commit it till we know, though
04:27:25seydarVagabond: what timezone are you?
04:27:38Vagabondanyone with rbx on linux want to see what Socket.const_get "AF_INET6" returns?
04:27:46Vagabondseydar: EST
04:28:16seydarsweet. me too. you want to do this spec-session again sometime?
04:28:34Vagabondmy schedule is pretty random
04:28:42seydardamn.
04:28:46seydarwell, I'm not leaving yet!
04:28:54Vagabondbut ping me and maybe I'll be around
04:29:03seydarback to work. are you getting an error on address inversion?
04:29:31Vagabondno
04:29:37VagabondI only have a single CI error now
04:29:49Vagabondit's on Module
04:30:11seydardamn
04:30:19seydari had 40 errors
04:30:36Vagabondpastebin em?
04:33:24seydardoesn't even fit in my terminal. like even with scrolling
04:33:28seydarbut i'll run em again
04:33:58seydarhow long does it typically take you to run them all?
04:34:02manveruis anyone here using the bin/autotestng.rb ?
04:34:53seydarwhooooooa Vagabond: whats your module error coming from IPAddr. check the bottom of spec/ruby/1.8/library/ipaddr/operator_spec.rb
04:35:07seydari think rubinius is getting confused (you'll know when you see)
04:35:33manveruyou guys work on IPAddr?
04:35:47Vagabondseydar: why?
04:35:58seydarmanveru: yups. freebsd and tiger
04:36:13seydarVagabond: do you see it? it's using include, and that might be what's throwing your module panic
04:36:25manveruhm... would be lovely to get the specs pass for linux too :)
04:36:33seydarmanveru: i think they already pass
04:36:45seydarthats why we're here and everyone else is sleeping
04:36:47VagabondSocket#getaddrinfo gets the address information ERROR
04:36:47VagabondMissing or uninitialized constant: IPPROTO_UDP:
04:37:04seydarlemme do a check on my end
04:37:32manveruwow, indeed
04:37:39manverulast week they were still b0rken
04:37:57manverunow i can resume trying to run ramaze :D
04:38:03seydarhaha
04:38:10seydarmanveru: you are truly a genius.
04:38:14VagabondI think that's just a header issue
04:38:26seydardo you all think rubinius will become the new main ruby platform?
04:38:49manveruseydar: i'm not sure about that, but i know it will become my favorite :)
04:39:15seydarVagabond: it's defined in mine
04:39:33_ADS leaves the room.
04:39:40headiusI think rubinius will become A main ruby platform eventually
04:39:50headiusthere's never going to be just one
04:39:51seydarVagabond: Socket.const_defined? "IPPROTO_UDP"
04:39:59seydarheadius: good enough for me
04:40:05manveruaye
04:40:17manverusay, does rubinius work with rubygems?
04:40:43ezmobiussort of
04:40:44djwhittnot sure what the current status of that is, I know drbrain was getting pretty close
04:41:07ezmobiusmanveru: if you want to get ramaze running your best off unpacking all the needed gems and unshifting them to the $:
04:41:11seydari totally love working on rubinius
04:41:14ezmobiusthats how i got merb running
04:41:20manveruezmobius: aye
04:41:21ezmobiusmanveru: rack and erubis work fine ;)
04:41:31manverui know
04:41:33seydarVagabond: you try the socket stuff?
04:41:39manverui tried rack and bacon before
04:42:12Vagabondseydar: it's not defined here, investigating
04:42:29seydaryea. i'll pop open socket.rb and take a peep myself
04:43:29Arjen_ enters the room.
04:44:18seydarVagabond: fork - socket is defined in C
04:45:52ezmobius leaves the room.
04:46:00seydarVagabond: mine gets defined line 4331 - 4335 in stdlib/ext/socket/socket.c
04:46:00manveruoh sweet, i think i got a failing spec for ipaddr :)
04:46:12seydarg2g
04:46:17seydarwrite good code everyone!
04:46:27seydar leaves the room.
04:47:06crafterm leaves the room.
04:48:18VagabondI've got a stack of undefined IPROTO constants on Socket
04:48:57manverugotcha
04:49:06manveru./shotgun/rubinius -ripaddr -e 'p IPAddr.new("192.168.0.0/16")'
04:50:47manveruthat for some reason raises: invalid address (ArgumentError)
04:51:42kofno leaves the room.
04:52:39bitbckt enters the room.
04:52:56bitbckt leaves the room.
04:54:11Vagabondmanveru: join the club
04:54:47manveruha
04:54:58manveru./shotgun/rubinius -rsocket -e 'p IPSocket.getaddress("192.168.0.0")'
04:55:31manveruVagabond: as usual :)
04:55:41manverui really hope our socket stuff is in ruby already...
04:57:29manveruwell, at least part of it is
04:58:32Vagabondif I run the preprocessor over the file, I get sock_define_const("IPPROTO_UDP", 17);
04:58:38Vagabondso I don't understand why it's not defined
04:58:48manveruseems like some problem with ffi_decode_sockaddr :P
04:59:12Vagabondoh dear
04:59:55Vagabondmanveru: what does Socket.const_get "AF_INET6" evaluate for you (and what OS/arch are you using?)
05:00:17agardiner leaves the room.
05:00:30manveru./shotgun/rubinius -rsocket -e 'p Socket::AF_INET6'
05:00:32manveru10
05:00:44manveruarchlinux/amd64
05:01:08manveruand yeah, it's the same with MRI
05:01:39manveruor did you specifically want me to use const_get?
05:02:07Vagabondlook at line 15 in stdlib/ipaddr.rb
05:02:22Vagabondseydar and i were here already ;)
05:02:56manverui'm fighting ipaddr since months ^^;
05:04:11manverubut i got no idea what AF_INET6 is anyway
05:04:48Vagabondipv6 support
05:05:08Vagabondtry commenting out line 15, and the corresponding end, and see if more specs pass
05:05:13Vagabondit worked for me
05:06:16manveruall specs pass for me
05:06:38manveruand my problem is with an IPv4 anyway :P
05:07:11Vagabondoh
05:07:14manverubut hey
05:07:21manveruit indeed works
05:07:29twbray leaves the room.
05:07:37Vagabondbin/mspec ci wasn't failing at all?
05:07:46manveruno
05:08:29manverubut IPAddr.new('192.168.0.0') fails
05:09:15Vagabondindeed
05:09:52Vagabondwhy don't the specs test that?
05:10:05manverubecause i haven't added it yet
05:10:33manverui did the translation of the test-unit stuff to mspec for ipaddr btw :)
05:10:39headius leaves the room.
05:11:43manveruanw, let's add that spec
05:13:39Vagabondah
05:13:41rubyconsumer leaves the room.
05:14:13VagabondI can't wait until rbx is a valid MRI replacement (with the added embeddable goodness)
05:15:12manverulikewise ^^
05:16:53manveruough
05:17:01VagabondI think platform.conf isn't being generated right on freebsd
05:17:02manveruzsh: illegal hardware instruction ./bin/mspec ci -t rbx
05:20:11manverutries to find the culprit
05:21:56twbray enters the room.
05:22:44jtoy leaves the room.
05:23:42twbray_ enters the room.
05:27:56ezmobius enters the room.
05:28:11_ADS enters the room.
05:35:46KirinDav enters the room.
05:39:43bitbckt enters the room.
05:42:11twbray leaves the room.
05:45:20twbray_ leaves the room.
06:02:29pergesu enters the room.
06:05:17enebo enters the room.
06:12:59nicksieger enters the room.
06:16:27GMFlash leaves the room.
06:16:36GMFlash enters the room.
06:16:58AndrewO leaves the room.
06:23:25d2dchat leaves the room.
06:31:13Tyler enters the room.
06:31:19headius enters the room.
06:31:25tongueroo leaves the room.
06:44:13enebo leaves the room.
06:44:51enebo enters the room.
06:46:03evanit's a quiet evening.
06:46:39headiushiya
06:46:57evanhey there
06:47:05evanhows brussels going?
06:47:24headiuswell, I've been asleep since we spoke last, so I presume it's going fine :)
06:47:34evangood, good.
06:47:35evan:D
06:47:45headiusmonkeying with perf stuff this morning
06:47:52evanbeen doing some reading on how CLR handles transitioning from managed to unmanaged code
06:47:56evanand visa versa
06:47:57headiusoh?
06:48:16headiusit's more fluid than JVM, but much less safe/secure
06:48:25headiusI don't know most of the internal details though
06:48:27evansubtend is quite similar
06:48:30evanarchitecturally
06:48:35manveruevan: would you mind trying Socket.getaddress('192.168.0.0')
06:48:39benburkert leaves the room.
06:48:39evannot nearly as complicated.
06:49:06TheVoice leaves the room.
06:49:12evanmanveru: no such method
06:49:37evanheadius: it's pretty similar to how I think JNI works
06:50:01manveruoh, sorry, that was IPSocket
06:50:16evan"192.168.0.0"
06:50:19evanis the output
06:50:26manveruon rubinius?
06:50:29evanyep
06:50:35evan10.5.2 / intel
06:50:44manveruhuh
06:50:59pietia leaves the room.
06:51:14evanheadius: i'm mulling over some of the internal architecture of rubinius
06:51:19evancoding up an experiment currently
06:52:02headiusoh? what sort of experiment
06:52:44evanusing the C stack to call and return from methods
06:52:53RyanTM leaves the room.
06:52:56evannot doing everything stackless
06:53:21headiushaving some problem with everything being stackless?
06:53:25evanpretty much every VM begins to use the C stack at some point
06:53:43manveruso that's a 64bit problem...
06:54:01evani'm pretty sure that the current stackless arch can't be optimized anymore
06:54:31evanplus, you can have a hybrid approach
06:54:35manveru192.168.0.0 fails on linux/amd64 only, 192.168.0.1 works everywhere...
06:54:36evanwhich is what VisualWorks 5 does
06:54:54cremeswatch out!
06:54:57headiussounds like a pretty heavy change
06:55:13evanContexts start their life on the C stack, and promote themselves to the heap if needed
06:55:16headiushave you identified things about stackless that you can't optimize anymore?
06:55:17evanheadius: it's not really
06:55:22evani've been sliming the VM more and more
06:55:23jtoy enters the room.
06:55:33evanbut it's an experiment
06:55:36evanso I shall see
06:55:53cremes leaves the room.
06:56:27evanit might be more work than I want to do
06:56:31manverumaybe some issue with pack...
06:56:35evanbut i wont know the work until i poke around
06:57:45evanheadius: if you're interested in the CLR managed code stuff, check out http://www.mono-project.com/Interop_with_Native_Libraries
06:58:10headiusahhh, thanks
06:58:20evanthey explain it WAY better than microsoft
06:58:28evanfrom an API standpoint
06:58:53headiusI would expect making things "stackful" would increase some of your thread and continuation overhead
06:59:41enebo leaves the room.
06:59:49evantrue
06:59:53evani'm not writing any code for this yet
07:00:01evanjust kinda looking around, thinking about it.
07:00:41headiusmight make it easier to native thread though
07:00:53evanperhaps
07:01:07evani've been thinking it would be easier to do partial jit
07:01:10evanlike you were doing
07:01:33evanbecause I could use C semantics to call ruby methods more closely
07:04:12headiusyeah, it would definitely make that easier
07:04:34headiusthough I think a harder problem for you would be making a JIT work with green threading
07:04:50manverugotcha
07:04:51manverumanveru@sigma rubinius-git/src/rubinius % ./shotgun/rubinius -rsocket -e 'p Socket::Foreign::ffi_decode_sockaddr("\002\000\000\000\300\250\000\000\000\000\000\000\000\000\ 000\000", 16, 1)'
07:04:53manveru"Temporary failure in name resolution"
07:05:19evanheadius: thats true
07:05:27manverumanveru@pi rubinius-git/src/rubinius % ./shotgun/rubinius -rsocket -e 'p Socket::Foreign::ffi_decode_sockaddr("\002\000\000\000\300\250\000\000\000\000\000\000\000\000\ 000\000", 16, 1)'
07:05:29manveru#<Tuple: "192.168.0.0", "192.168.0.0", 0>
07:05:48evanwhats the difference between the 2?
07:06:00manveruone is amd64, the other is intel32
07:06:05headiusI don't know of any jitted systems that are green threaded
07:07:46manveru attach_function "ffi_decode_sockaddr", :ffi_decode_sockaddr, [:state, :string, :int, :int], :object
07:07:54manveruthat's as far as i can go...
07:08:09evannot true
07:08:15evanyou can go to shotgun/lib/ffi_util.c
07:08:20evanand look at ffi_decode_sockaddr
07:08:29manverusure, but that's C
07:08:44evanare you alergic?
07:09:03headiushey evan, I have to rib you a little
07:09:12manveruno, i just don't know it
07:09:19evangets a noogy ready for headius
07:09:22headiusthere's more lines of C code in shotgun/lib than there are lines of Ruby code in kernel/**
07:09:35evanif you do wc -L
07:09:37headiusby a wide margin...29k to 21k or something
07:09:38evanwc -l thats true
07:09:47evanbecause grammar.c is 10k lines alone.
07:09:52evanand it's autogenerated.
07:10:24evanso do
07:10:33evan29994 - 10941
07:10:40evanthats a much more accurate number
07:10:48evanfrom the standpoint of C code we wrote
07:10:49headiusyeah
07:11:08headiusC code is gaining on Ruby code though
07:11:24evani don't think so
07:11:30manveruwell, i just can't debug this C stuff without help
07:11:33evani was going to graph that change actually
07:13:00cavalle enters the room.
07:13:25evanbut none the less
07:13:31evani'll consider myself ribbed
07:13:37evanhows your java versus ruby totals going?
07:13:41evanstill 99% java?
07:13:45evanribs back.
07:13:56headiuswriting JRuby in Ruby has never been a goal
07:14:06headiusso it's not really a fair comparison
07:14:08evandoesn't mean I can't rib.
07:14:12evansure it is
07:14:30headiusif the comparison is how much is written in Java, you're looking pretty bad
07:14:53ezmobiusoooh implementors fight! :P
07:14:55headiusdepends on your perspective
07:15:06evancourse it does.
07:15:20manveru error = getnameinfo(addr, len, hbuf, sizeof(hbuf), pbuf, sizeof(pbuf), NI_NUMERICHOST | NI_NUMERICSERV);
07:15:21headiusfor us it's a far better thing that it's mostly Java and no C
07:15:29manverui _guess_ that's where the problem occurs
07:15:30headiuswe have 0% C code :)
07:15:53ezmobiusisn't the jvm written in C?
07:16:05evanwow
07:16:12evanrubinius is 2x faster than yarv at method dispatch
07:16:21headiusyeah, those are good numbers
07:16:38evani'm going to make these benchmark numbers into a flag
07:16:39headiusyou have a much lighter context
07:16:42manveruso, anybody wanna instruct me on how to debug C?
07:16:43evanand fly it from my porch
07:16:46evanif i had a porch
07:16:51evan... a porch would be nice...
07:16:51ezmobiusheh
07:16:54geekounet leaves the room.
07:17:08headiusas long as everyone writes methods that only return self, rubinius is golden
07:17:12headius:)
07:17:18evan:D
07:17:26evanare any literal
07:17:28headiusyour numbers are faster than ours too when we frame
07:17:39evans/are/or/
07:18:08rudebwoy leaves the room.
07:18:09manverugives up and goes back to more interesting things
07:18:20evanlooks like 10s to 6s rubinius to yarv when a having to allocate a context
07:18:21headiusconstructing a frame is literally about 80% of the cost in that method benchmark for us
07:18:37evanbrb
07:18:37headiusso I was going to ask about that
07:18:50headiusyou have some optimizations to avoid allocating a context?
07:22:19ruemanveru: I am getting "ai_family not supported"
07:23:27_ADS_ enters the room.
07:23:28tongueroo enters the room.
07:23:38ruemanveru: And/or "servname not supported for ai_socktype" depending on exactly where
07:26:14rueHm, wait.. is that even a correct method?
07:28:04lstoll leaves the room.
07:29:30lstoll enters the room.
07:31:03lstoll_ enters the room.
07:31:03lstoll leaves the room.
07:36:38evanheadius: so
07:36:42evanto answer your question
07:37:00evanthe optimizations I have are the form detection and use a primitive
07:37:12evanwhat case have you found where you don't need to allocate a context?
07:37:16rueWtf, why is getaddress using getNAMEinfo?
07:38:51defunkt enters the room.
07:39:01rueYou are going to make me look at the source, aren't you
07:40:20evanyep
07:42:11_ADS leaves the room.
07:44:08ezmobius leaves the room.
07:46:01brixenevening folks
07:46:11evan_ enters the room.
07:46:14brixenreturns from a long day with shimane oss
07:46:32evanbrixen: how was it?
07:46:34evanstupid dircproxy
07:46:41brixenvery interesting
07:46:52brixenthere's some huge japanese companies using rails now
07:47:13evan leaves the room.
07:47:33evanoh?
07:47:37evanwhat did matz have to say?
07:47:57brixenmatz spoke a bit about ruby association
07:47:57KirinDav leaves the room.
07:48:16brixenit's an llc he's started to help bridge developers and business
07:48:35brixenanother guy gave a talk about ruby certification
07:48:55brixenI'm still trying to sort out my business cards and remember who said what ;)
07:49:20evanruby certification?
07:49:20evan!
07:49:27evangoody.
07:49:34brixenhehe
07:49:46brixenyeah, ctc is promoting/backing it
07:49:55brixenwww.ctc-g.co.jp
07:50:22lstoll_ leaves the room.
07:50:47brixenevan: very interesting though, I met another psu prof: bart massey
07:50:51evanwhats ctc?
07:51:11brixenhe talked to me about some of ian's work, self, and a system called eureka?
07:51:13ruePhew, looks like manveru got lost somewhere.. it does use getaddrinfo
07:51:41evanbrixen: eureka eh? never heard of it.
07:51:54rueTop secret
07:52:06brixenevan: and he knows this retired guy who worked for intel and amd for quite some time. he's invited me to lunch with him and talk about performance issues on modern cpu architectures
07:52:10evanit gets an F- in google-ability
07:52:20brixenevan: I'm trying to find something on eureka now
07:52:34brixenbart said a bunch of the eureka ideas went into self
07:52:37evanbrixen: oh fun
07:52:42evanah
07:53:26brixenI'll see if he can refer me to some papers or something
07:53:53evanyeah
07:53:54brixenapparently eureka (I have no idea if that's spelled right) was a highly dynamic system
07:54:00ruehttp://sardes.inrialpes.fr/collaborations/collaborations/s4all.html is the only thing I can find
07:55:46brixenevan: so, just catching up on channel chatter, this going less stackless idea, any papers related to that?
07:56:09brixencurious because stackless python was really big for a moment, then totally died
07:56:22nicksiegerbrixen: isn't the japanese business card dance fun? we did the same here on tuesday
07:56:32brixenbut I thought that was more related to guido's dislike for it than any technical issues
07:56:41brixennicksieger: heh, yeah fun :)
07:56:43