Index

Show enters and exits. Hide enters and exits.

00:05:48yasuhito enters the room.
00:06:14antares leaves the room.
00:12:28yasuhito leaves the room.
00:25:03rue leaves the room.
00:26:06nari leaves the room.
00:30:17jackdempsey enters the room.
00:32:27benburkert_ leaves the room.
00:37:26evanstupid question, are the C++ test runs clean now?
00:37:36evanor still a few failures?
00:41:21brixen2 failures
00:41:29brixenin task
00:42:06brixenevan: so what do you think of me making a Sampler cpp class and have it output the stats to shm on the ticks?
00:42:23brixenso you can start it as you would the sampler or from RBX env var
00:42:38evansure, thats fine.
00:42:41brixenk
00:43:37lopex leaves the room.
00:44:12brixenhaha http://xkcd.com/263/
00:44:30brixengreek symbols ftw
00:45:52GemBobevan: I finally got a linux build done (thanks to explody) - what linux distros are you building on?
00:46:23dysinger enters the room.
00:46:25brixengentoo, for various values of gentoo
00:46:27dysinger leaves the room.
00:46:40brixenubuntu 8.x
00:46:57dysinger enters the room.
00:47:30brixenI've got a freebsd 7.0 image, but haven't built in a while on it
00:48:12GemBobbrixen: thanks, fwiw suse 10's glibc is too old. Build was successful on ubuntu.
00:48:18GemBobhardy heron
00:48:23brixencool
00:48:35brixenI started to work on opensuse, but never finished it
00:48:42explodylibev seems to need glibc 2.5+
00:48:48Yurik leaves the room.
00:48:49explodySLES uses 2.4
00:49:29brixenI guess like a plant, we tend to grow up and then out :)
00:49:43GemBob:)
00:50:02evanthat can be disabled inside libev
00:50:05evanor should be able to be
00:50:11evanso it just uses select
00:50:48explodyI figured it was something minor, it was just easier to move to ubuntu than it was to mess with the C
00:50:57evanoh man
00:51:09evan'git update' is SO much nicer than rebasing directly
00:51:11evani love it.
00:51:39nari enters the room.
00:52:05GemBobbrixen: where would I look for a list of rubyspecs that you've tagged to skip?
00:52:49brixenGemBob: spec/tags
00:52:53trythil enters the room.
00:53:00GemBobCool.
00:53:15brixenGemBob: or you could run them with bin/mspec -g fails -g unstable -fs --dry-run spec
00:53:54GemBobbrixen: Ah! that looks like the way to go.
00:54:47GemBobbrixen: have you thought anymore about eliminating optparse?
00:54:57evanGemBob: he has
00:55:02evanbut optparse is only used in the frontend
00:55:05evanthat runs in MRI
00:55:23GemBobevan: indeed, that's true.
00:55:38brixenGemBob: yes, it will be eliminated
00:55:42evanunless you're trying to run some other way
00:55:52brixenjust haven't decided whether to use getoptlong or rue's custom option parser
00:56:42masswhat is 'OH:' on twitter?
00:57:01massoverheard?
00:57:11GemBobI'm wanting to run it via the mri frontend, but we don't have optparse loading yet.
00:57:17evanmass: yeah
00:57:28evanGemBob: you don't need to run optparse
00:57:34evanthe frontend does that
00:57:36brixenGemBob: you can comment out the option parsing in mspec-run and just hard-code what you want
00:58:07GemBobevan: yes, we've already got the essential bits running (thanks to avibryant)
00:58:12brixenGemBob: the most common option is just the files to run
00:58:16evanGemBob: ok, good.
01:04:27brixenGemBob: can you load getoptlong?
01:05:10GemBobbrixen: haven't tried.
01:05:14nicksieger enters the room.
01:05:29evannicksieger: wassup nick!
01:06:29GemBobbrixen: I'll try it and will let you know
01:06:31nicksiegerevan :)
01:06:33nicksiegersaw your update. been having a nice summer?
01:06:38edwardam enters the room.
01:06:47evanyeah!
01:06:57evansummer is always a funny time for programmers
01:06:58evani think.
01:07:14headius enters the room.
01:07:16evansince the idea of working in the park is tempting, but it never works out in practice.
01:07:30nicksiegerhehe. nice weather screws with our "burrow in a dark cave" nature
01:07:34massevan: non-glossy screen
01:07:37evannicksieger: exactly
01:07:40evanmass: even that.
01:07:46evandoesn't work as well.
01:07:46massyou're doing it wrong
01:07:49evanhah
01:07:49mass:)
01:07:49brixenGemBob: yes, please do
01:07:55brixenpastie: for GemBob
01:07:58nicksiegernot that the weather in LA ever varies much
01:08:06evanthough, at comic-con, I did some answering emails and such on my iphone in the direct sunlight
01:08:10evanthat worked out.
01:08:20evannicksieger: true enough :)
01:08:20massI think I'm getting an iphone next week
01:08:22pastieGemBob: http://pastie.org/242854 by brixen.
01:08:26nicksiegeryeah, i find iphone screen to be readable in sunlight
01:08:29massit better change my life, thats all I'll say
01:08:44nicksiegeralthough the polarization filter in my sunglasses makes landscape mode difficult :)
01:08:52evannicksieger: yeah, I think they've put something behind/into the screen so it's not completely washed out
01:09:10evanha! there's a good product idea
01:09:18evanspecial sunglasses and filter for an iphone
01:09:26brixenGemBob: if you could, also try loading the ruby in that pastie and let me know. thanks :)
01:09:30evanto polarize it
01:09:30massrotating lenses?
01:09:48massevan, I think it already is polarized, wouldn't that be the problem? :)
01:09:55nicksiegerwhile you're at it, a special website with sekrit codez that can only be read w/ the glasses
01:10:11evanmass: only if you polarize it at 90 degrees from the current polarization
01:10:22evansince then, nothing gets through (oh photons, you crazy things)
01:10:27GemBobbrixen: will do, but probably won't get to it until tomorrow.
01:10:39brixenGemBob: k, no problem
01:10:40massreal-d and imax 3d are both based on two projectors emitting polarized light at 90 degree angles, onto a special screen
01:10:55massat least, AFAIK
01:11:00evannice
01:11:28massphotons are just punks
01:12:16evanpartical or wave
01:12:21evanMAKE UP YOUR MIND
01:12:33shayarnett enters the room.
01:13:07GemBobthanks for the tips today guys, gotta hit the road.
01:13:22evanlater
01:13:40massmy bamboo plant is turning yellow :(
01:13:48brixenevan: they have the luxury of being both, tyrant :P
01:13:49massafter a year and a half, I think it got a bacterial infection
01:14:00benburkert enters the room.
01:14:02nicksiegergem bob been hanging out much? haven't heard a thing about maglev since railsconf
01:14:04mass:'(
01:14:33evanbrixen: i don't have a problem with the concept after reading and finally absorbing enough quantum stuff
01:14:44brixennicksieger: you wouldn't expect to hear much right, electromagnetic fiels are mostly silent :)
01:14:56nicksiegerhaha
01:14:58evanafter all, there aren't really curves either.
01:15:11evanthey're just jagged on a level you can't see.
01:15:13headius leaves the room.
01:15:22massI prefer to take the sciences on faith
01:15:32massit seems to be the sort of thing that would piss off everyone
01:15:43evando you say a few words about science before dinner each night?
01:15:57massthank you newton for inventing gravity
01:16:56massyou know what I always say, "Quantum mechanics work in mysterious ways"
01:17:04massooh, another good business card job title
01:17:08massQuantum Mechanic
01:17:14brixendirac, please send antimatter to my enemies and annihilate them
01:17:56nicksiegermass: i like it.
01:17:56massA guy I used to know who worked at apple at the beginning said they got to choose their business card titles, he was "Question Authority"
01:18:17massI keep telling the company I work for that they should make me a Director
01:18:20mass"Director of Traffic"
01:18:57massapparently the Finder team also had a poster that read "Quality is Job 1.1"
01:20:15nari leaves the room.
01:20:28nari enters the room.
01:26:10twbray leaves the room.
01:29:15brapse leaves the room.
01:30:01shayarnett leaves the room.
01:38:15twbray enters the room.
01:39:11twbray leaves the room.
01:41:56ezmobius leaves the room.
01:49:32brapse enters the room.
01:52:29binary42 enters the room.
01:52:57twbray enters the room.
01:53:03brapse leaves the room.
01:53:41enebo enters the room.
01:54:52twbray leaves the room.
01:54:53enebo leaves the room.
01:56:24enebo enters the room.
01:57:18trythil leaves the room.
02:01:02antares_ leaves the room.
02:02:16jicksta enters the room.
02:04:37dfg59 leaves the room.
02:07:39blakewatters enters the room.
02:10:07brapse enters the room.
02:13:31benny enters the room.
02:15:17evanDefiler: ok, new instructions setup is in.
02:16:05gramos enters the room.
02:16:11jbarnette leaves the room.
02:16:36mernen enters the room.
02:22:48moofbong enters the room.
02:24:09moofbong leaves the room.
02:25:09VVSiz_ enters the room.
02:26:49jazen leaves the room.
02:27:18jazen enters the room.
02:33:03ijcd leaves the room.
02:33:44c0sin leaves the room.
02:42:30VVSiz leaves the room.
02:44:37blakewatters leaves the room.
02:46:42nicksieger leaves the room.
02:49:01shayarnett enters the room.
02:53:32lchin enters the room.
03:03:47gramos leaves the room.
03:08:36brixeninteresting stuff http://kurtstephens.com/node/60
03:09:52fbuilesv enters the room.
03:10:44evanbrixen: reading now.
03:10:59brixenalso see the link at the end to node/52
03:11:59enebo leaves the room.
03:12:44evank
03:12:56evanhm, they suggest that making nil == 0x0 is a good thing
03:12:58evaninteresting.
03:15:53brixendidn't know you could (dis|en)able tagged pointers in pypy with a cmd line switch
03:16:37josb leaves the room.
03:19:58brixenevan: what happened to printing a ruby bt when shotgun dies from a segfault?
03:20:10brixenor in this case, illegal instruction
03:20:13evanhad to take it out.
03:20:27evanbecause it can cause cascading segfaults
03:20:31brixenah
03:20:41evanso i figured it was better to require the person to drop in with gdb to get it
03:20:42brixena veritable waterfall of segfaults
03:20:49brixenk
03:21:11brixencgi specs cause illegal instruction faults
03:21:16brixenstabs cgi
03:24:56josb enters the room.
03:27:17imajes leaves the room.
03:33:22edwardam leaves the room.
03:33:39edwardam enters the room.
03:34:34brixenevan: suggestions for tracking something like this down? http://pastie.org/242921
03:36:15brapse leaves the room.
03:36:54brapse enters the room.
03:37:47shayarnett leaves the room.
03:41:35shayarnett enters the room.
03:47:19aotearoa enters the room.
03:50:35twbray_ enters the room.
03:51:55twbray_ leaves the room.
03:54:28ryanlowe leaves the room.
03:58:21djwhitt leaves the room.
03:59:39brapse leaves the room.
04:00:40wmoxam enters the room.
04:01:02mernen leaves the room.
04:03:09sunblush leaves the room.
04:04:28sunblush enters the room.
04:05:31jackdempsey leaves the room.
04:07:37boyscout5 commits by Brian Ford
04:07:38boyscout * Re-enable spec/library for full CI runs.; 5df391f
04:07:39boyscout * Fix up Rubinius specific library specs.; d83d1c1
04:07:40boyscout * Tag unstable CGI specs.; 140b64f
04:07:41boyscout * Temp fix to use --gdb with mspec.; 0411620
04:07:42boyscout * Removed inadvertently added files from mspec.; 2af0a49
04:09:32rubuildius_amd64Brian Ford: 5df391f6d; build failed! http://rafb.net/p/GCwJvH34.html
04:10:07brixenhmm
04:11:03brixenthat bot's missing a dir to clone from
04:13:39jackdempsey enters the room.
04:14:14djwhitt enters the room.
04:18:04rubuildius_amd64 leaves the room.
04:18:20rubuildius_amd64 enters the room.
04:18:25rubuildius_amd64 leaves the room.
04:18:37rubuildius_amd64 enters the room.
04:18:47rubuildius_ey64Brian Ford: 5df391f6d; 2629 files, 8609 examples, 28695 expectations, 0 failures, 0 errors
04:20:08srbaker enters the room.
04:28:21rubuildius_amd64Brian Ford: 5df391f6d; 2629 files, 8609 examples, 28695 expectations, 0 failures, 0 errors
04:36:51qrush_ enters the room.
04:36:52qrush leaves the room.
04:38:52twbray enters the room.
04:45:35rodimius leaves the room.
04:45:36shayarnett leaves the room.
04:51:20jbarnette enters the room.
04:51:30jackdempsey leaves the room.
04:57:35benburkert leaves the room.
05:06:14benburkert enters the room.
05:19:00twbray leaves the room.
05:20:42binary42 leaves the room.
05:21:15jackdempsey enters the room.
05:27:07rodimius enters the room.
05:30:31shame leaves the room.
05:30:58jackdempsey leaves the room.
05:33:52shame enters the room.
05:36:40srbaker leaves the room.
05:43:21qrush_ leaves the room.
05:50:45nicksieger enters the room.
05:52:46MyIRCBot enters the room.
05:53:21MyIRCBot leaves the room.
05:57:02MyIRCBot enters the room.
05:57:05evan!git
05:57:09evanblah.
05:57:19evan!about
05:57:20MyIRCBotInsulter version 1.0 (7-4-08) by Tim Morgan: An Autumn Leaf. Insults copyright (c)1996 Main Strike Telecommunications, Inc.
05:57:23evanha.
05:57:35MyIRCBot leaves the room.
06:01:39aotearoa leaves the room.
06:05:09binary42 enters the room.
06:21:39enebo enters the room.
06:24:26enebo_ enters the room.
06:26:51enebo_ leaves the room.
06:26:58enebo_ enters the room.
06:29:03enebo_ leaves the room.
06:29:46enebo_ enters the room.
06:32:07enebo_ leaves the room.
06:32:34enebo_ enters the room.
06:33:56enebo_ leaves the room.
06:35:21enebo_ enters the room.
06:37:35enebo_ leaves the room.
06:37:52enebo_ enters the room.
06:39:40wyhaines leaves the room.
06:40:16enebo leaves the room.
06:50:37headius enters the room.
06:52:23srbaker enters the room.
06:54:08aotearoa enters the room.
07:03:05benburkert leaves the room.
07:03:08benburkert enters the room.
07:04:30boyscout leaves the room.
07:04:45boyscout enters the room.
07:04:57boyscout leaves the room.
07:05:27boyscout enters the room.
07:05:39boyscout leaves the room.
07:06:18boyscout enters the room.
07:06:31boyscout leaves the room.
07:07:06brixenboyscout getting a tune-up?
07:07:06boyscout enters the room.
07:07:10evanyep
07:07:21boyscout4 commits
07:07:21brixennice
07:07:22boyscout * Re-enable spec/library for full CI runs.; 5df391f
07:07:23boyscout * Fix up Rubinius specific library specs.; d83d1c1
07:07:24boyscout * Remove debugging code; ff648ca
07:07:25boyscout * Adjust Rakefile deps and flags; 27dd827
07:07:31evanthere we go.
07:07:40evanreports master and cpp now
07:07:45brixenahh, yep
07:07:55brixendropped the author?
07:08:00evanyeah
07:08:05evanit makes the code more confusing.
07:08:13evani could try and add it back in
07:08:22brixenmaybe just append after the hash?
07:08:46brixenRe-enable spec/library for full CI runs.; 5df391f - Brian Ford
07:08:50brixenor something
07:09:15evansure.
07:09:17evanone sec.
07:12:44bitsweat enters the room.
07:16:27rsk23 enters the room.
07:26:40evancheck.
07:26:56boyscout2 commits in head
07:26:57boyscout* Re-enable spec/library for full CI runs.; 5df39 - Brian Ford
07:26:58boyscout* Fix up Rubinius specific library specs.; d83d1 - Brian Ford
07:26:59boyscout2 commits in C++
07:27:00boyscout* Remove debugging code; ff648 - Brian Ford
07:27:01boyscout* Adjust Rakefile deps and flags; 27dd8 - Brian Ford
07:27:06evanhows thaht?
07:29:56rue enters the room.
07:32:38jgre enters the room.
07:35:08srbaker leaves the room.
07:36:28brixenhmm, author is off
07:36:36brixenbut format looks good :)
07:40:37evanoh hm.
07:40:38evanthats odd.
07:42:36evanboyscout: check
07:42:58boyscout2 commits in head
07:42:59boyscout* Re-enable spec/library for full CI runs.; 5df39 - Brian Ford
07:43:00boyscout* Fix up Rubinius specific library specs.; d83d1 - Brian Ford
07:43:01boyscout2 commits in C++
07:43:02boyscout* Remove debugging code; ff648 - Evan Phoenix
07:43:03boyscout* Adjust Rakefile deps and flags; 27dd8 - Evan Phoenix
07:43:08brixenwoot
07:43:10evanthere we go.
07:51:47benburkert leaves the room.
07:51:48aotearoa leaves the room.
07:55:51aotearoa enters the room.
08:09:09inspired enters the room.
08:26:11headius leaves the room.
08:34:46enebo_ leaves the room.
08:49:39aotearoa leaves the room.
09:02:43aotearoa enters the room.
09:32:01lstoll enters the room.
09:34:22thehcdreamer enters the room.
09:35:17thehcdreamer leaves the room.
09:46:57headius enters the room.
09:54:44lstoll enters the room.
09:57:59Maledictus enters the room.
10:07:35octopod enters the room.
10:09:57nari leaves the room.
10:16:17rue leaves the room.
10:16:36Fullmoon enters the room.
10:22:01headius_ enters the room.
10:22:01headius leaves the room.
10:22:59headius_ leaves the room.
10:25:20dysinger leaves the room.
10:28:27Fullmoon leaves the room.
10:28:32chris2 enters the room.
10:32:40Fullmoon enters the room.
10:40:26pauldix enters the room.
10:41:51nari enters the room.
10:46:48benny leaves the room.
11:02:31michalw enters the room.
11:04:02BlackEdder enters the room.
11:06:24pauldix leaves the room.
11:12:29blacktower enters the room.
11:17:26robin_dewd leaves the room.
11:30:10Fullmoon leaves the room.
11:31:39botanicus enters the room.
11:33:56Fullmoon enters the room.
11:35:12Fullmoon leaves the room.
11:47:25thehcdreamer enters the room.
11:48:48thehcdreamer leaves the room.
12:05:45pauldix enters the room.
12:08:50rue enters the room.
12:23:16pauldix leaves the room.
12:23:38pauldix enters the room.
12:26:05Fullmoon enters the room.
12:47:09lstoll leaves the room.
12:52:19NoKarma enters the room.
12:56:20hemulen leaves the room.
12:58:46lchin_ enters the room.
12:59:34lchin leaves the room.
13:02:47sunblush enters the room.
13:07:29pth leaves the room.
13:10:28Defilerevan: Got any objection to me moving the generator code out into instruction_generator.rb so that instructions.rb can be all test and impl?
13:10:59antares_ enters the room.
13:14:06hemulen enters the room.
13:16:52aotearoa leaves the room.
13:17:02hemulen leaves the room.
13:18:56hemulen enters the room.
13:18:59dbussinkevan: i've found the problem with vlad
13:19:07dbussinkDefiler: i mean you of course :P
13:19:11DefilerCool
13:19:34dbussinkthe problem is that datamapper and vlad both use repository through the same kind of set construct
13:19:44dbussinkto set a variable for a task
13:21:33DefilerRight
13:21:54DefilerVlad has a 'global' (class variable) hash of options set via 'set'
13:22:05lchin_ leaves the room.
13:23:09dbussinkyeah, and apparently that overrides something deep in datamapper
13:23:27dbussinkwhich seems weird, because the code just calls a method in the same class
13:26:04rueDid you ever resolve the mysterious code path with DM?
13:31:36Defilerdbussink: so, the problem is that with datamapper loaded, vlad doesn't work? or vice versa, etc
13:32:57dbussinkwith vlad loaded dm rake tasks don't work anymore
13:32:57dbussinknormal code seems to work fine
13:32:57dbussinkas do the specs for my project
13:32:57dbussinkrue: well, i've been able to spec it in a relatively simple case
13:32:57dbussinkrue: still marked as a dm bug though :P
13:34:04DefilerCan you paste me some --trace output from a task failing?
13:35:14Fullmoon leaves the room.
13:39:00robin_dewd enters the room.
13:43:04dbussinkDefiler: http://pastie.org/243160
13:46:06benburkert enters the room.
13:50:36Fullmoon enters the room.
13:50:55DefilerHrm.. maybe DM is doing a Kernel method call somewhere
13:51:05Defilerwhere they think they are doing a namespaced one
13:51:55Defilerbecause 'set' shouldn't interfere with more-specific defs that happen to have the same name
13:58:51benny enters the room.
14:00:43dbussinkDefiler: yeah, but the repository call at that line doesn't seem weird
14:00:53dbussinkbecause there is actually a repository method a few lines down
14:02:46wmoxam leaves the room.
14:02:49Fullmoon leaves the room.
14:03:35yasuhito enters the room.
14:05:56AndrewO enters the room.
14:16:37binary42 leaves the room.
14:22:09yasuhito leaves the room.
14:29:46Defilerdbussink: I wonder if 'default' is the method causing the fun
14:29:51DefilerI guess I need to read the DM code to see
14:37:56blacktower leaves the room.
14:42:29blakewatters enters the room.
14:49:01nicksieger leaves the room.
14:51:31binary42 enters the room.
15:04:50mutle enters the room.
15:08:59yasuhito enters the room.
15:15:39wmoxam enters the room.
15:36:34fbuilesv leaves the room.
15:39:24obvio171 enters the room.
15:39:25foysavas leaves the room.
15:39:36foysavas enters the room.
15:41:54sunblush leaves the room.
15:42:39botanicus leaves the room.
15:43:05botanicus enters the room.
15:45:16botanicus leaves the room.
15:45:32botanicus enters the room.
15:49:08wyhaines enters the room.
15:52:20lopex enters the room.
15:58:02twbray enters the room.
15:58:24benburkert leaves the room.
15:59:34edwardam leaves the room.
16:09:46chris2 leaves the room.
16:17:21twbray leaves the room.
16:25:30sunblush enters the room.
16:31:00inspired leaves the room.
16:36:02yasuhito leaves the room.
16:39:09GemBob enters the room.
16:43:06benburkert_ enters the room.
16:46:00wvdschel enters the room.
16:50:02hemulen_ enters the room.
16:53:54hemulen leaves the room.
16:54:46hemulen enters the room.
16:55:39moofbong enters the room.
16:56:00imajes_ enters the room.
16:56:30jbarnette leaves the room.
17:01:20dysinger enters the room.
17:01:43blacktower enters the room.
17:03:43imajes leaves the room.
17:06:43jgre leaves the room.
17:08:02evanDefiler: thats fine
17:08:54hemulen_ leaves the room.
17:21:33jbarnette enters the room.
17:24:49brixenevan: did you see the fonc reply about tagging?
17:24:51brixenevan: http://sbcl-internals.cliki.net/tag%20bit
17:30:35evaninteresting.
17:30:49evani guess they align objects on 8bit boundaries
17:31:47brixenhmm, list reply says 8byte
17:32:00evaner
17:32:01evanyeah
17:32:06brixenah ok
17:32:06evanso that the bottom 3 bits aren't used.
17:32:09brixenyeah
17:32:45evanha, funny
17:33:01evansays that originally, the did this because they could use special SPARC instructions
17:33:04evanthat performed tagging
17:33:09brixenheh yeah
17:33:25brixenso, can we use the base+offset memory mode like they talk about?
17:33:34brixenmemory address mode
17:35:22evanwell
17:35:29evanhopefully we never have to operate at that level.
17:40:53twbray enters the room.
17:42:02evantwbray: nice job in the sumo suit
17:42:04dbussinkhmm wouldn't the addition of fixnums be useful though to do without taking tags into consideration?
17:42:49twbraysucker weighed like 75 pounds
17:42:54evanhehe
17:42:55evani'll bet
17:44:25edwardam enters the room.
17:46:00hemulen leaves the room.
17:50:30josb leaves the room.
17:57:41headius enters the room.
18:03:00DefilerWhat's the deal with the different tags for odd and even fixnums?
18:03:12Yurik enters the room.
18:05:56masswaves
18:06:00massDefiler: ?
18:09:34Yurik leaves the room.
18:10:10Defilermass: Yo. I was referring to this sbcl link from a little earlier
18:10:26josb enters the room.
18:11:29jgre enters the room.
18:11:31dbussinkDefiler: just because they allocated three bytes
18:11:40dbussinkbut actually use 2 for the fixnum tag
18:11:51dbussinkso they labelled them "odd fixnums" and "even fixnums" :P
18:13:59nicksieger enters the room.
18:14:07boyscout1 commit in C++
18:14:08boyscout* Move 'missing_primitives' task to the vm directory and correct output; f7ba3 - Wilson Bilkovich
18:14:20Defilerdbussink: oh haha funny
18:14:31evanzing! new boyscout!
18:14:40Defilerwikked
18:15:38dbussinkevan: what do you think of being able to do fixnum adding / subtraction without having to tag?
18:16:37dbussinkor isn't it worth the trouble?
18:17:55evanwell, there is always a tag
18:18:05evando ya just mean a shift, no tag?
18:18:25dbussinkwell, the shifting is not necessary if the tag bytes are all zeroes
18:18:49octopod leaves the room.
18:19:02NoKarma leaves the room.
18:19:23bricolage enters the room.
18:24:13twbray leaves the room.
18:24:18boyscout1 commit in C++
18:24:19boyscout* Reorganize instructions.rb, add docs; bb67d - Evan Phoenix
18:24:31evanDefiler: there ya go.
18:28:24DefilerCool
18:28:52heycarsten enters the room.
18:28:55dbussinkhmm, how should we handle primitive renames? because when i wrote some of the math stuff i made it more consistent
18:29:04DefilerAre we still going to have 'direct threaded' and non-dt versions?
18:29:13dbussinkso some of the primitive names are there, but the rake tasks are still missing
18:29:26dbussinki mean the rake task says they're missing
18:29:28DefilerYeah
18:29:33antares_ leaves the room.
18:29:38DefilerYou can just go edit shotgun_instructions.txt for now if you want
18:29:58DefilerWe'll need a ticket to remind us to edit the kernel code though
18:30:27c0sin enters the room.
18:30:33DefilerWe should think about what we will do when the time comes to update the copy of the kernel that the cpp branch has
18:31:35dbussinki can put a comment in that file perhaps
18:31:35dbussinkto have it somewhere
18:32:06hemulen enters the room.
18:35:30ijcd enters the room.
18:38:00imajes enters the room.
18:39:09dgtizedI'm getting undefined references to strlcpy and strlcat
18:39:20dgtizedwhere are those from -- man pages don't believe they exist
18:41:11dgtizedah found them in our source -- but they don't seem to be compiled in time for ffi.h to find them
18:42:51michalw leaves the room.
18:43:13michalw enters the room.
18:48:46rueIt should be using the system ones anyway
18:49:14imajes leaves the room.
18:52:29Defilerdbussink: If you put a comment there, you will need to adjust the rakefile to ignore commented lines
18:54:10dbussinkrue: those are not default c functions
18:57:06dgtizedyea man -k strlcpy returns nothing
18:57:42evanit's an openbsd funciton
18:57:45evanit's not in linux.
18:57:49evanwe have a private copy though
18:57:50evanin vm/
18:57:53drbrainhttp://www.freebsd.org/cgi/man.cgi?query=strlcpy
18:57:58drbrainBSDism
18:58:05dgtizedyes, but it's getting undefined reference errors during compiling
18:58:54evandgtized: please pastie the compilation
18:59:29dgtizedhttp://gist.github.com/3134
19:00:33evanperhaps zenspider messed it up
19:00:34evanone sec.
19:01:43evanhm.
19:03:17dgtizedI mean it's including strlcpy.o in the list of objects
19:03:29evanhrm.
19:03:30dgtizedand there is a strlcpy.o that is in the directory
19:03:30evanyeah.
19:04:04dgtizedsize_t is an unsigned int right?
19:04:28evani think so.
19:04:30evanhm
19:04:39evanmaybe linux's ld requires the .o's to be in the right order.
19:04:45dgtized?
19:04:59dgtizedoh dependency wise?
19:05:06evanffi.o is before strlcpy.o
19:05:09evanon the cmdline
19:05:10evanyeah
19:05:35dgtizedugh
19:06:13evanoh wait.
19:09:30evandgtized: could ya do a 'rake clean && rake'
19:09:32evanjust to be sure
19:11:15dbussinkhmm, anyone who can explain why shotgun has float_eql and float_equal ? they are not exactly the same, but is there a rationale behind the fact that they both exist?
19:11:35dgtizedevan: I've done several rake distcleans
19:11:45evanok
19:11:58dgtizedevan: I'll do it again, but I haven't been able to compile cpp branch in 3 weeks I think
19:13:22dgtizedyup tried it again, same error
19:13:56imajes enters the room.
19:15:50headius leaves the room.
19:15:54headius enters the room.
19:17:11headius leaves the room.
19:17:22headius enters the room.
19:17:45dfg59 enters the room.
19:28:29dbussinkevan: any idea on that question about the float_eql / float_equal primitives?
19:28:43evanhm, nope.
19:28:48evanneed to ask brixen
19:33:20bricolage leaves the room.
19:33:26dbussinkbrixen: pokey poke :P
19:40:04imajes leaves the room.
19:42:59headius_ enters the room.
19:42:59headius leaves the room.
19:43:29headius_ leaves the room.
19:43:57headius enters the room.
19:44:07headius leaves the room.
19:44:34evanEARTHQUAKE!
19:48:04wmoxamhttp://survey.hamptoncatlin.com/ <--- Survey!
19:49:11pauldix leaves the room.
20:10:32rubuildius_amd64 leaves the room.
20:11:21ezmobius enters the room.
20:11:34rubuildius_amd64 enters the room.
20:13:11rubuildius_ey64 leaves the room.
20:13:47rubuildius_ey64 enters the room.
20:15:42rubuildius_ey64 leaves the room.
20:16:14rubuildius_ey64 enters the room.
20:17:41rubuildius_amd64 leaves the room.
20:18:43rubuildius_amd64 enters the room.
20:19:33nicksieger leaves the room.
20:20:42rubuildius_ey64 leaves the room.
20:21:14rubuildius_ey64 enters the room.
20:21:53nicksieger enters the room.
20:22:41rubuildius_amd64 leaves the room.
20:23:43rubuildius_amd64 enters the room.
20:24:34GemBobbrixen: Good news, I've loaded the options.rb file you sent yesterday and also optparselong.rb :)
20:25:42rubuildius_ey64 leaves the room.
20:26:03boyscout leaves the room.
20:26:15rubuildius_ey64 enters the room.
20:26:38evan leaves the room.
20:27:30GemBobUSGS estimates the quake at 5.8 - hope all is well down there!
20:27:51rubuildius_amd64 leaves the room.
20:28:37shevy enters the room.
20:28:53rubuildius_amd64 enters the room.
20:30:41rubuildius_ey64 leaves the room.
20:30:43drbrainLA eats 5.8s for breakfast
20:30:54imajes enters the room.
20:30:59pauldix enters the room.
20:31:14rubuildius_ey64 enters the room.
20:32:08imajes leaves the room.
20:32:25GemBobdrbrain: just another day in the life, eh?
20:32:51rubuildius_amd64 leaves the room.
20:33:53rubuildius_amd64 enters the room.
20:35:41rubuildius_ey64 leaves the room.
20:36:13rubuildius_ey64 enters the room.
20:37:51rubuildius_amd64 leaves the room.
20:38:53rubuildius_amd64 enters the room.
20:40:41rubuildius_ey64 leaves the room.
20:41:13rubuildius_ey64 enters the room.
20:42:16headius enters the room.
20:42:18headiushey
20:42:22masshi headius
20:42:34headiusbringing it up again because we're probably going to fix it today...need a way to specify calling convention in FFI
20:42:50headiusI can twiddle jruby-ffi to have something in probably just a few minutes
20:42:51rubuildius_amd64 leaves the room.
20:43:15headiusbut trying to figure best way to wire it in
20:43:35headiusset_ffi_call_convention :stdcall?
20:43:49headiusa parameter to attach_function seems excessive
20:43:53rubuildius_amd64 enters the room.
20:44:23massheadius: calling convention for C functions can be specified per-function for most compilers
20:44:57headiusyes, I suppose that's true
20:44:58headiusso perhaps it does need to be an optional param to attach_*
20:45:41rubuildius_ey64 leaves the room.
20:46:04rueheadius: Look at #attach_foreign
20:46:07massheadius: for visual C++, http://msdn.microsoft.com/en-us/library/984x0h58.aspx
20:46:13rubuildius_ey64 enters the room.
20:46:47mass(they moved __pascal, __fortran and __syscall to the graveyard a while back)
20:46:50rueheadius: If you like it, maybe we can overcome the irrational aversion to the style
20:47:00ruemass: How are things?
20:47:08massrue: always busy :)
20:47:36rueheadius: So attach_foreign ..., :call_convention =>
20:47:38massgetting an iphone soon, and starting some iphone app dev.
20:47:51rubuildius_amd64 leaves the room.
20:48:07ruemass: Ah, cool! Have you looked at the devkit? How is it?
20:48:07headiusrue: is the primary difference here the options hash then?
20:48:40massright now, I'm actually figuring out safari and firefox behavior on www-authenticate: negotiate,ntlm,basic
20:48:53rubuildius_amd64 enters the room.
20:48:53rueheadius: Yeah. Plus the layout is [ret] [name] [args, ..]
20:48:57masssince they seem to work sanely, its time to see if IE also does
20:49:02massunfortunately that is more doubtful :)
20:50:41rubuildius_ey64 leaves the room.
20:51:12rueheadius: I wrote _foreign initially to support specifying the library to load from
20:51:13rubuildius_ey64 enters the room.
20:51:32headiusI have no particular style concerns
20:51:46headiusbut attach_foreign does open up the possibility of a :cc => :stdcall option
20:52:06headiusI've just had three people come into JRuby today asking how to call win32 API
20:52:24rueheadius: I think the hash args style is better than have eight different set_ffi_* methods
20:52:46headiuswell the concern I have is when binding, say, system32.dll
20:52:51rubuildius_amd64 leaves the room.
20:52:58headiusnobody will want to have to specify cc for every single function
20:53:10rueNaturally, by last count, I think I was in the minority
20:53:11headiusideally there should be a way to set a default for a whole module
20:53:53rubuildius_amd64 enters the room.
20:53:58rueYeah. I think this would have best been resolved through the platform abstraction but I lost that argument too
20:54:36rueheadius: If using the include style, it would be a bit more natural: include FFI::Win32 or something
20:54:48headiusthat's not bad
20:55:04headiusexcept we're talking a module body
20:55:20headiusinclude would have to be extend or something, and that starts to seem a little odd
20:55:38headiusactually the "set" should go away anyway
20:55:41Norgg /q aanand
20:55:41rubuildius_ey64 leaves the room.
20:55:43headiusffi_lib 'c'
20:55:44NorggErk.
20:55:52headiusffi_call_convention :stdcall
20:56:03headiusset is redundant
20:56:08rueHow about going the Integer route?
20:56:14rubuildius_ey64 enters the room.
20:56:39rueclass Foo; FFI :C, 'libc'; end
20:57:04rueI just like the capital method name to indicate the special status
20:57:13headiusmaybe so
20:57:51rubuildius_amd64 leaves the room.
20:58:53rubuildius_amd64 enters the room.
20:58:54headiushow about just "ffi_stdcall"
20:59:01headiuslike public/private toggles
20:59:17headiusffi_stdcall ; attach_function ...
20:59:50rueIt should be a block, I think.. otherwise the scope looks ambiguous. Is it local, global?
21:00:06headiusambiguous like public/private? )
21:00:07headius:)
21:00:22headiusnot that I'm particularly a fan of magic thread-unsafe toggles
21:00:41rubuildius_ey64 leaves the room.
21:00:44rueYep
21:01:08headiusstdcall { ... }
21:01:13rubuildius_ey64 enters the room.
21:02:50rubuildius_amd64 leaves the room.
21:03:53rubuildius_amd64 enters the room.
21:05:41rubuildius_ey64 leaves the room.
21:06:14rubuildius_ey64 enters the room.
21:06:36ruePerhaps overthinking it, but is there then a risk of "losing" the FFI stuff in a jumble of letters? There would be visual benefit from separating the foreign functions into a class; class A; class Functions < FFI; library 'libc'; ...
21:07:05headiusactually I strongly agree that FFI bits shouldn't be mixed with regular bits
21:07:26headiuslike there should be a ZlibFFI module that Zlib can mix in perhaps
21:07:51rubuildius_amd64 leaves the room.
21:07:59headiusit also increases the amount of code ends up in the generated output
21:08:15headiusmost of the zlib.rb code is identical from platform to platform
21:08:31rueYeah
21:08:41headiusin JRuby we have it split a bit differently
21:08:53rubuildius_amd64 enters the room.
21:08:59headiusall the FFI stuff is in site_ruby/1.8/ffi/platform/[PLATFORM]
21:09:11headiusand zlib.rb, syslog.rb, etc require in the correct one
21:09:31rueApparently we will cross that bridge when we come to it and not plan it ahead :)
21:09:51headiusthe agile manifesto: let shit blindside you every day
21:10:41rubuildius_ey64 leaves the room.
21:10:44VVSizhey, guys, just a heads-up. syslog is not really working at the moment. all those #log, #info, #warning methods raise an error
21:11:13rubuildius_ey64 enters the room.
21:11:26rueMaybe that is on purpose?
21:12:01headiusa const missing error :)
21:12:20headiusit would be an unusual purpose
21:12:38VVSizhmm, I can't seem to pull the latest rubinius code...
21:12:46VVSizssh: git.rubini.us: Name or service not known
21:12:51rubuildius_amd64 leaves the room.
21:13:10jgre leaves the room.
21:13:26rueTaking really long here
21:13:54rubuildius_amd64 enters the room.
21:13:57rueHoshi might be offline, evan is
21:15:33rueVVSiz: There is always the Github mirror
21:15:41rubuildius_ey64 leaves the room.
21:15:46rueWhich we really should be using as the main repository..
21:15:53evan enters the room.
21:15:54headiusyeah, why haven't you guys moved anyway
21:16:03evanarg.
21:16:12evanmy servers are not doing very well these days.
21:16:14rubuildius_ey64 enters the room.
21:16:16rueHa, my magical PSI worked
21:16:23VVSiz:)
21:17:46rubuildius_amd64 leaves the room.
21:17:51rueevan: Was there anything in particular holding back from using Github?
21:18:13evanwell, we were going to do some organizational things
21:18:17headiusok looks like most of our FFI is implemented in Ruby also
21:18:19evanrelated to EY
21:18:27evani was going to do them at the same time
21:18:33evanbut I'm thinking we should just move now.
21:18:43evani'm going to work on it a bit today.
21:18:46headiuslooks like our attach_fuction calls attach_foreign anyway, btw
21:18:48rubuildius_amd64 enters the room.
21:19:17evanheadius: we never used attach_foreign
21:19:24evanrue wrote it, but it was never used.
21:20:41rubuildius_ey64 leaves the room.
21:21:02rueTechnically it is mostly a matter of switching the remote URL and adding collaborators, no?
21:21:13rubuildius_ey64 enters the room.
21:21:30evanrue: it's pretty easy, eyah.
21:22:48headiusevan: I'm adding a basic way to specify call convention to our FFI
21:22:51rubuildius_amd64 leaves the room.
21:23:02headiusat the moment just through attach_foreign with :convention => :stdcall
21:23:35headiushad a few people in #jruby today asking if they could call win32 from jruby
21:23:53rubuildius_amd64 enters the room.
21:25:41rubuildius_ey64 leaves the room.
21:26:13rubuildius_ey64 enters the room.
21:27:28imajes enters the room.
21:27:47rubuildius_amd64 leaves the room.
21:27:58evanheadius: thats funny
21:28:08evansince I was planning to delete attach_foreign
21:28:49rubuildius_amd64 enters the room.
21:29:43headiuswell I'm open to suggestions on where to specify call convention
21:29:59headiuswe tossed around a few ideas
21:30:00evanyou shouldn't have to
21:30:08evanit should be infered automatically, right?
21:30:09headiushow do you figure
21:30:20evanie, if you're on win32 platform, you use win32 call convention
21:30:22evanautomatically.
21:30:41rubuildius_ey64 leaves the room.
21:30:42headiusyou can mix stdcall and normal calling in the same process
21:30:50rueIt is possible to have libraries with different conventions
21:30:55evanheadius: sure, but who does?
21:30:58headiuseven in the same library
21:31:13evansounds like a terrible way to develop a C library
21:31:14rubuildius_ey64 enters the room.
21:31:15evanpersonally.
21:31:15headiusevan: anyone linking dlls built with different compilers
21:31:42evani guess win32 people actually change the call convention then?
21:31:48headiuseven windows libraries use __cdecl some places
21:32:00evanand i've been living in a blissful world of unix call conventions?
21:32:08VVSizjust in case: http://rubyspec.org/issues/show/47
21:32:45headiusI've monkeyed with enough win32 stuff to know that we absolutely need a way to specify call convention
21:32:51rubuildius_amd64 leaves the room.
21:33:26evanthat sucks.
21:33:34evanand it has to be PER symbol?
21:33:53rubuildius_amd64 enters the room.
21:34:18headiusno
21:34:23rueIt could be, though I imagine that would be rare
21:34:30headiusI think it should be possible to specify per symbol, but probably have a way to set a default
21:34:52evanheadius: if you add support for that
21:34:54evanwe need to as well.
21:34:58rueI am leaning on using an explicit subclass
21:34:59headiusit's not uncommon to have two libs with different conventions, but functions within the same lib having different is pretty rare
21:35:03evanI, again, hesitate to use attach_foreign
21:35:06evansince it's never been used
21:35:15evannothing written against FFI uses attach_foreign
21:35:30headiuswell perhaps we should settle that then
21:35:41rubuildius_ey64 leaves the room.
21:36:15rubuildius_ey64 enters the room.
21:36:27headiusrue seemed to hope people would migrate toward _foreign
21:36:52evani find it unnecessary
21:36:59headiusI don't have a particular style preference, but it is more typing
21:37:03rueI think it is a better option than _function and what seem haphazard set_ functions
21:37:23evanit's SO un-dry though.
21:37:30headiusthat's another point I wanted to bring up...set_ffi_lib seems like it could just be ffi_lib
21:37:36headiusand any other sets as well
21:37:41evanhaving to pass the library in on every call to it
21:37:45headiusffi_convention :stdcall
21:37:45evanall the keys
21:37:51rubuildius_amd64 leaves the room.
21:37:54rueffi_lib :libc do ... end maybe
21:38:02evanwhy a block?
21:38:06evanthat seems unnecessary.
21:38:31rueBut I would favour class A; class Foreign < FFI; library :libc; ... over the rest
21:38:45rueevan: Because without the block it is not obvious what the scope of the method is
21:38:53rubuildius_amd64 enters the room.
21:38:55evanit's the module
21:39:00evani think it's obvious and simple.
21:39:20evani'd prefer to NOT invent a brand new API
21:39:20rueYou know it, I know it, but it is not an innately obvious name
21:39:38evanwe can certainly do that later, but taht doesn't in any way make it "common"
21:39:43evanif we rewrite the API.
21:39:50rueThen we end up with attach_function and eighteen different ffi_ methods
21:39:58evanwe have one ffi_ method.
21:40:06rueTwo
21:40:11evanwhat is the other?
21:40:23rueCalling convention. Next week it might be 3
21:40:38evanwait
21:40:41rubuildius_ey64 leaves the room.
21:40:53evanso you're saying taht having to put them on the end of every call to attach_foreign is better than typing them once at the top?
21:41:11evani'd don't personally care how many ffi_ methods there are.
21:41:14rubuildius_ey64 enters the room.
21:41:25evanwe'd talked about making FFI a mixin
21:41:30evanrather than always having the methods on Module
21:41:39evanthen who cares how many there are
21:41:46headiusthat does blunt some of the concern about lots of ffi_ methods
21:42:23drbrainnobody does private do ... end, but every body understands how it works
21:42:29drbrainI am not a fan of extra blocks
21:42:35rueI am not sure why I am rehashing this argument
21:42:38rueYou all figure it out
21:42:51rubuildius_amd64 leaves the room.
21:43:04headiusthere's also an argument for saying you can't mix calling conventions in a given ffi module
21:43:15headiusit's not a hard leap to make
21:43:43headiusso it's normal by default and you can specify stdcall if you want to use stdcall for everything
21:43:53rubuildius_amd64 enters the room.
21:43:56evanheadius: sure.
21:45:42rubuildius_ey64 leaves the room.
21:45:59benny enters the room.
21:46:13rubuildius_ey64 enters the room.
21:46:49headiustwould also be nice if we could decide before Jruby 1.1.4 if _foreign is in or out
21:46:58headiusonce it's out there it's a pain to remove it
21:47:21evanwell, we've got it in there, but have never used it.
21:47:37evani don't like that it reverses the order of things
21:47:39evanmyself
21:47:46evanand it's not used.
21:47:51rubuildius_amd64 leaves the room.
21:48:53rubuildius_amd64 enters the room.
21:49:14headiuscould we settle on ffi_lib and ffi_convention for now then?
21:49:51evansure
21:49:52evanwell
21:50:03evanthey should be set_ too
21:50:08headiusthe set_ seems unnecessary to me
21:50:15evanotherwise we have to go back and change everything that uses set_ffi_lib
21:50:22headiuswhat's wrong with tht
21:50:23evanof which there are things
21:50:33headiusgotta be maybe one line per file
21:50:35evani'm lazy.
21:50:41rubuildius_ey64 leaves the room.
21:51:14rubuildius_ey64 enters the room.
21:52:22headiuswell, I like ffi_lib better...set_ is such a non-rubyism
21:52:47rubuildius_amd64 leaves the room.
21:52:52headiusand conventions for in-class modifiers is to just have them act like simple toggles
21:53:14evanwell
21:53:19evanare you going to make it a mixin too?
21:53:34headiuswell I think we should
21:53:39headiuswe're not making any changes unilaterally though
21:53:49rubuildius_amd64 enters the room.
21:53:54evanok
21:54:03evansince we're going to make both of those changes
21:54:09evanseems fine.
21:55:03headiusok
21:55:32evansince we'll no doubt make API changes in the future
21:55:41evanwe should stamp a version number on the current API
21:55:42rubuildius_ey64 leaves the room.
21:55:48headiusso ffi_lib, ffi_convention with say :default and :stdcall for now, and FFI as an extend'able mixin
21:56:07evanyeah.
21:56:10rubuildius_amd64 leaves the room.
21:56:13rubuildius_ey64 enters the room.
21:56:26headiussounds good
21:56:37evanlets go ahead and call this version 1
21:56:48imajes leaves the room.
21:56:52evanthe version with the changes
21:57:00headiusI could toss this on rbx mailing list if you like
21:57:05evanplease
21:57:07headiusI'm filing a jruby bug for wmeissner now
21:57:13rubuildius_amd64 enters the room.
21:57:26evanbrb.
21:57:27evan leaves the room.
21:57:30imajes enters the room.
21:58:03evan enters the room.
21:58:17drbraina cop just hit a parked car outside robot
21:58:50boyscout enters the room.
21:59:02evanhah
22:02:04headiusevan: any chance we could allow symbols for the function name for "version 1"?
22:02:18headiusI still feel like that's going to trip a lot of people up
22:02:34rueMaybe you can add #ffi_allow_symbol_names
22:02:50headiusit almost feels like attach_function is an analog to alias_method
22:03:07headiusbut you're giving a callable name to a C function
22:06:34evanheadius: oh sure
22:06:35evanwhy not
22:06:36evan:D
22:08:13headiushooray
22:08:46headiusok, I sent out my email...one last suggestion/open question I added was to swap <c func name> and <bound name> in the arg list
22:08:56headiusso that the specifiers for the C func are always next to each other
22:09:21headiusattach_function :getuid, [], :uint or attach_function :my_getuid, :getuid, [], :uint
22:09:52headiusthe latter being a bit more in line with alias_method :new_name, :old_name
22:10:37headiusobviously it's a larger change to twiddle existing ffi libs
22:10:59headiusbut this is one that's going to be pretty much set in stone once released...can't really change arg ordering later
22:11:31brixendbussink: you still around?
22:12:37brixenheadius: that seems reasonable to me
22:12:55blakewatters leaves the room.
22:13:11brixenit's not that big a deal to change those now
22:13:16brixenI'll volunteer :)
22:14:06brixendbussink: if you read the logs, ri Float#== and you'll see why there are two primitives
22:16:11evanheadius: i think the current order is the correct order.
22:16:20evanheadius: i went back and forth and settled on the current one
22:16:35evanbecause it binds the C name to the C argtypes
22:16:43evanin the order.
22:16:53headiusthat doesn't change
22:17:09headiusthe order of the C related stuff is the same
22:17:29headiusand better, it's guaranteed to be name, params, return regardless of whether you specify a different ruby name to bind it to
22:18:00headiusit's the stuffing of that optional ruby name in the middle of the c-related args that seems kinda jarring to me
22:18:21headiusbind getuid, with params...oh wait, bind to this name...with params X, return value Y
22:21:14evansorry
22:21:16evani don't follow.
22:21:32evanoh
22:21:36headiusthe ruby name should come first, if it's specified at all, rather than after the C name
22:21:39evanyou don't like that the optional is at the front?
22:21:48headiuswait, maybe I'm wrong
22:21:49evanwould you rather there be no optional?
22:21:55headiusI thought it was the second arg that was the optional ruby name
22:21:56evanthats just more typing
22:22:03evanit is
22:22:12headiusok, that's all I'm saying then...I think it shoudl be the first arg
22:22:28evani think it is.
22:22:31evandidn't we dump the first arg?
22:22:38headiusattach_function [optional ruby name], <c name>, <c args>, <c return>
22:22:54evanthats what it is.
22:24:51evanew.
22:25:05headiusI don't think so
22:25:07evani don't like that someone made Module#env in ffi.rb
22:25:11evanheadius: it is
22:25:14evani'm looking at the code now.
22:25:31headius➔ ../rubinius/bin/rbx -e "module Foo; attach_function 'getuid', :my_getuid, [], :uint; end; p Foo.my_getuid"
22:25:31headius501
22:25:43headiusit's the second arg there
22:25:48evanhuh?
22:25:59evanoh oh
22:26:01headius