Show enters and exits. Hide enters and exits.
| 00:00:00 | evan | no VM code. |
| 00:00:14 | agardiner | yeah, that's what i expected |
| 00:00:17 | atmos leaves the room. | |
| 00:00:21 | agardiner | don't see this needing VM code |
| 00:00:24 | atmos enters the room. | |
| 00:00:26 | evan | yeah, i guess thats ok. |
| 00:00:38 | evan | since that object has little to no overhead |
| 00:00:42 | agardiner | sounds like grudging acceptance! :-) |
| 00:00:47 | evan | since all it's subobjects are referenced elsewhere. |
| 00:00:54 | evan | it is! |
| 00:01:00 | agardiner | hehe! done! |
| 00:01:35 | agardiner | i'm on it... |
| 00:04:56 | imajes enters the room. | |
| 00:08:25 | obvio enters the room. | |
| 00:13:00 | mkescher enters the room. | |
| 00:16:00 | AndrewO enters the room. | |
| 00:16:09 | anteaya leaves the room. | |
| 00:16:13 | Defiler | agardiner: OK, so.. if you look at what I did with autoload inside require.. |
| 00:16:24 | Defiler | agardiner: We can unify that with what you propose, if we want.. |
| 00:17:03 | Defiler | Since I'm already keeping a hash of filenames -> autoload objects |
| 00:17:21 | Defiler | We could extend that to be filenames -> autoload or CM objects |
| 00:17:28 | Defiler | Just thinking out loud. Might be dumb |
| 00:17:50 | agardiner | ok... just looking at compile.rb at the moment |
| 00:18:16 | trythil enters the room. | |
| 00:20:25 | trythil_ enters the room. | |
| 00:20:25 | trythil leaves the room. | |
| 00:20:34 | dysinger | You guys see this http://rubyurl.com/Il8H http://rubyurl.com/Ueos I have been having fun on it this morning |
| 00:21:20 | Defiler | what the.. heh |
| 00:22:39 | lopex | lol |
| 00:24:16 | drbrain | NoMethodError: undefined method `critical=' for Thread:Class |
| 00:24:21 | drbrain | it is broken |
| 00:24:57 | lopex | hah |
| 00:25:41 | evan | interesting. |
| 00:25:44 | drbrain | NotImplementedError: Method Kernel#loop is not implemented yet. |
| 00:25:47 | drbrain | ??? |
| 00:25:48 | evan | it's pretty limited. |
| 00:25:52 | evan | ha! loop! |
| 00:26:18 | wycats__ enters the room. | |
| 00:27:59 | tarcieri | waaa loop |
| 00:28:34 | mkrauskopf leaves the room. | |
| 00:28:48 | evan | i tried ``, system, and popen |
| 00:28:48 | drbrain | nor callcc |
| 00:28:54 | lopex | nor class << 1;end |
| 00:28:54 | evan | callcc will never work |
| 00:28:57 | evan | Thread probably doesn.t |
| 00:29:54 | drbrain | NotImplementedError: Method Kernel#p is not implemented yet. |
| 00:30:20 | Defiler | Now now, we shouldn't be making fun of implementations that aren't finished yet. :) |
| 00:30:35 | evan | ^5s Defiler |
| 00:30:42 | evan | Defiler: you home? |
| 00:31:06 | Defiler | Charles will use his highly-tuned hypocrisy detector to find us |
| 00:31:18 | Defiler | evan: No. Flight to ATL was late, so I'm on a later flight =( |
| 00:31:22 | Defiler | They mostly come out at night, mostly. |
| 00:31:30 | evan | heh |
| 00:31:33 | wycats_ leaves the room. | |
| 00:33:20 | Defiler | I don't normally carry on my luggage, but I am going to keep doing it now that I have tried it |
| 00:33:24 | Defiler | Way less stress |
| 00:33:44 | drbrain | ObjectSpace is kinda broken |
| 00:33:52 | drbrain | or, something |
| 00:34:33 | drbrain | http://www.ruby-php.org/demo?code=ms+%3D+%5B%5D%0D%0AObjectSpace.each_object%28Module%29+do+%7Cm%7 C+ms+%3C%3C+m+end%0D%0Ams.uniq.sort+%7B+%7Ca%2Cb%7C+a.name+%3C%3D%3E+b.name+%7D.each+do+%7Cm%7C%0D%0 A++puts+m.name%0D%0A++puts+%22%5Ct%23%7Bm.instance_methods%28false%29.inspect%7D%22%0D%0A++puts+%22% 5Ct%23%7Bm.methods%28false%29.inspect%7D%22%0D%0A++puts%0D%0Aend |
| 00:34:38 | drbrain | hrm, that might be too long |
| 00:34:45 | drbrain | http://rubyurl.com/9hXj |
| 00:34:50 | drbrain | I see five Comparables |
| 00:35:04 | Defiler | I wonder why they didn't just emit PHP bytecode |
| 00:35:13 | Defiler | Instead of doing this weird source transformation thing |
| 00:35:17 | evan | Defiler: more work probably |
| 00:35:29 | evan | i don't think PHP bytecode is documented either. |
| 00:35:33 | evan | it's all internal. |
| 00:35:37 | Defiler | Really? It seems like this would be a nightmare of special cases |
| 00:35:45 | Defiler | wow, undocumented bytecode? |
| 00:35:50 | Defiler | That happens? In 2008? |
| 00:36:30 | evan | yep |
| 00:37:31 | evan | http://devzone.zend.com/manual/ref.bcompiler.html |
| 00:37:32 | evan | no docs. |
| 00:37:42 | evan | just a stupid API for dumping it I guess |
| 00:38:31 | drbrain | isn't zend $$ |
| 00:38:35 | lopex | I thought there's no one official bytecode for php |
| 00:38:48 | lopex | just some weird impls aside |
| 00:39:20 | evan | drbrain: the compiler is, yeah. |
| 00:39:22 | evan | it's bullshit. |
| 00:39:36 | evan | lopex: I think thats true |
| 00:39:38 | tarcieri | doesn't know how PHP is implemented... doesn't care |
| 00:39:42 | tarcieri | heh |
| 00:39:49 | rue | Steam power |
| 00:40:06 | drbrain | hrm "contact sales", so it's probably $$$ or $$$$ |
| 00:40:29 | Defiler | Man, GTA4 is waiting for me at home.. the paaaiinnnnn |
| 00:40:58 | drbrain | Defiler: mine arrived at 10AM |
| 00:41:09 | drbrain | Defiler: and promptly crashed at the first save point |
| 00:41:31 | enebo leaves the room. | |
| 00:41:43 | Defiler | oh nos |
| 00:41:55 | Defiler | Hopefully I will have better luck with the 360 version |
| 00:42:26 | tarcieri | Defiler: same here |
| 00:42:38 | tarcieri | heh everything I've read so far says the PS3 version is better |
| 00:42:45 | evan | i'll try it shortly |
| 00:43:04 | tarcieri | better antialiasing/post-processing on the video, shorter boot time, shorter in-game load times |
| 00:43:31 | drbrain | since I wanted to quit anyway, I'm not sure if it saved anything or not |
| 00:43:58 | drbrain | I did watch some TV though |
| 00:44:39 | wmoxam leaves the room. | |
| 00:44:59 | chris2 leaves the room. | |
| 00:45:28 | drbrain | your cousin does not have cable |
| 00:45:34 | drbrain | hope that doesn't spoil anything! |
| 00:47:19 | santana__ enters the room. | |
| 00:47:19 | pd enters the room. | |
| 00:47:19 | santana_ leaves the room. | |
| 00:48:54 | anteaya enters the room. | |
| 00:51:35 | wycats_ leaves the room. | |
| 00:52:08 | wycats leaves the room. | |
| 00:53:15 | ezmobius leaves the room. | |
| 00:53:15 | santana__ leaves the room. | |
| 00:53:21 | santana_ enters the room. | |
| 00:53:46 | mapar enters the room. | |
| 00:57:22 | agile enters the room. | |
| 00:57:27 | trythil_ leaves the room. | |
| 01:00:33 | headius | return n if (0..1).include? n |
| 01:00:43 | headius | that's gotta be the weirdest, slowest termination condition for fib I've ever seen |
| 01:01:08 | evan | heh |
| 01:01:10 | headius | feed it -1 and watch it blow up |
| 01:04:00 | Defiler | [0].zip([1]).flatten.each {|lol| return n if n == lol} |
| 01:04:04 | Defiler | is clearly what it should be generating |
| 01:04:16 | riffraff leaves the room. | |
| 01:04:18 | drbrain | headius: Natural Numbers only, Negative Integers need not apply |
| 01:06:11 | wdperson enters the room. | |
| 01:06:11 | santana_ leaves the room. | |
| 01:06:13 | headius | heh, damn users wanting to pass negative numbers! |
| 01:06:23 | santana_ enters the room. | |
| 01:08:14 | binary42 enters the room. | |
| 01:09:39 | santana__ enters the room. | |
| 01:09:39 | santana_ leaves the room. | |
| 01:11:10 | evan | o/~ The sign says, any negative numbers will segfault on sight. o/~ |
| 01:11:35 | Defiler | nice |
| 01:11:43 | Defiler | I miss Tesla =( |
| 01:11:45 | anteaya leaves the room. | |
| 01:12:58 | evan | i'm probably enjoying adding more type safety to the C++ VM too much |
| 01:14:03 | tarcieri | Defiler: Five Man Electrical Band yo, heh |
| 01:14:57 | Defiler | evan: Are we there yet? Are we there yet? |
| 01:15:09 | evan | not yet. |
| 01:15:24 | tarcieri | heh |
| 01:17:12 | crafterm enters the room. | |
| 01:17:49 | crafterm | moin all |
| 01:17:57 | evan | yo! |
| 01:18:08 | evan | bye! |
| 01:18:08 | crafterm enters the room. | |
| 01:18:10 | evan | yo! |
| 01:18:21 | crafterm | hi mate! hows it going? |
| 01:18:26 | evan | good good |
| 01:18:27 | evan | you? |
| 01:18:33 | benny leaves the room. | |
| 01:18:34 | crafterm | great mate! |
| 01:18:52 | crafterm | looking forward to catching up with you guys in portland soon! |
| 01:19:06 | wmoxam enters the room. | |
| 01:19:10 | evan | yep! |
| 01:19:17 | evan | too soon! too much rubinius work to do! |
| 01:19:18 | evan | :) |
| 01:19:40 | crafterm | yes! lots of action, have been reading through the blue book mate, top stuff |
| 01:19:45 | evan | oh nice! |
| 01:20:01 | crafterm | interesting to see where so much of ruby and objective-c get their inspiration ;) |
| 01:20:05 | evan | yeah |
| 01:20:08 | evan | it's a great read |
| 01:21:48 | crafterm | the boys are still talking about lamb'y mate :) |
| 01:22:42 | evan | hah |
| 01:22:45 | evan | lamby! |
| 01:23:18 | crafterm | :) |
| 01:23:54 | crafterm | any thoughts of having a rubinius hack session at railsconf at all (before/after/during)? |
| 01:26:14 | evan | there will be many |
| 01:26:38 | crafterm | for sure |
| 01:29:06 | srbaker enters the room. | |
| 01:29:53 | agardiner | hi crafterm |
| 01:30:04 | crafterm | agardiner: hi mate, hows it going? |
| 01:30:24 | agardiner | good good - just got off the phone from selling the car |
| 01:30:43 | drbrain | I am so hungry |
| 01:30:45 | agardiner | its all go |
| 01:30:51 | crafterm | agardiner: all stations go :) |
| 01:30:52 | drbrain | damn you Eastern Time! |
| 01:31:06 | crafterm | drbrain: hi mate, hope you enjoyed the rest of your melbourne visit :) |
| 01:31:14 | drbrain | I did |
| 01:31:29 | agardiner | yeah, shipped some of our stuff earlier in the week, sold the car and TV, rented the house... |
| 01:31:53 | crafterm | agardiner: exciting stuff mate :) |
| 01:32:09 | agardiner | stressful, more like! but looking forward to it |
| 01:37:57 | evan | ok, GTA4 time! |
| 01:38:10 | agardiner | evan: before you go |
| 01:38:28 | agardiner | CompiledMethod.scripts will need to contain files that aren't in $" |
| 01:38:38 | wycats enters the room. | |
| 01:38:52 | agardiner | since e.g. the script you are running is not in $" |
| 01:38:55 | agardiner | you ok with that? |
| 01:39:01 | drbrain | agardiner: that's fine |
| 01:39:50 | evan | sure |
| 01:40:07 | agardiner | sweet |
| 01:40:26 | wycats_ enters the room. | |
| 01:41:04 | mapar leaves the room. | |
| 01:41:21 | evan | similarly, i'm thinking about having user code 'class A; end' emit 'Rubinius.open_class(:A, nil, cm_of_body, methodcontext)' |
| 01:41:54 | evan | so it can be tied into, ala __add_method__ |
| 01:41:58 | Defiler | fuck. yes. |
| 01:42:55 | agardiner | cool |
| 01:44:18 | agardiner | ok, i've got CompiledMethod.scripts working for .rb and .rbc files |
| 01:44:33 | evan | sweet. |
| 01:44:40 | agardiner | .rba's might be more of a problem |
| 01:44:44 | evan | ok, PS3 updated, GTA4 time! |
| 01:44:55 | agardiner | they're handled in the VM, no? |
| 01:45:10 | Defiler | agardiner: note the path-to-rb-file thing I extracted into a method a couple days ago |
| 01:45:23 | Defiler | agardiner: You may or may not want to use it to normalize names, depending on what you are doing |
| 01:45:37 | lopex leaves the room. | |
| 01:45:42 | lstoll leaves the room. | |
| 01:45:54 | agardiner | yeah, i think i'll have the debugger use that when given a filename, so it normalizes to the same form i've used for my keys |
| 01:47:19 | evan | game installation on the ps3 is stupid. |
| 01:47:23 | evan | i'm waiting again. |
| 01:49:04 | tarcieri | evan: it's a bit of overhead to mitigate future load times |
| 01:49:21 | evan | yeah, blah blah. |
| 01:49:24 | tarcieri | heh |
| 01:49:24 | evan | I WANNA PLAY. |
| 01:49:49 | tarcieri | bought Okami for the Wii this weekend... 10 minute unskippable cinematic ;_; |
| 01:49:56 | tarcieri | first time you play |
| 01:50:00 | evan | i hate those. |
| 01:51:17 | santana__ leaves the room. | |
| 01:55:30 | anteaya enters the room. | |
| 01:55:44 | Fullmoon enters the room. | |
| 01:57:55 | ezmobius enters the room. | |
| 01:59:53 | jtoy enters the room. | |
| 02:05:02 | fbuilesv leaves the room. | |
| 02:06:22 | imajes_ enters the room. | |
| 02:06:45 | imajes leaves the room. | |
| 02:09:17 | RyanTM enters the room. | |
| 02:09:30 | RyanTM leaves the room. | |
| 02:12:20 | ryantmulligan enters the room. | |
| 02:15:48 | ezmobius leaves the room. | |
| 02:16:33 | nkpart enters the room. | |
| 02:23:41 | brapse enters the room. | |
| 02:24:25 | VVSiz_ enters the room. | |
| 02:32:43 | VVSiz leaves the room. | |
| 02:36:54 | wmoxam leaves the room. | |
| 02:37:44 | pd leaves the room. | |
| 02:38:23 | benburkert enters the room. | |
| 02:42:46 | benburkert_ enters the room. | |
| 02:45:55 | GMFlash leaves the room. | |
| 02:46:04 | GMFlash enters the room. | |
| 02:47:00 | mkescher leaves the room. | |
| 02:49:35 | trythil enters the room. | |
| 02:55:11 | Rich_Morin | Having trouble getting started with to_sexp (http://pastie.caboo.se/189060) - help? |
| 02:55:55 | rue | File.to_sexp or String#to_sexp |
| 02:59:03 | lstoll enters the room. | |
| 03:00:49 | benburkert leaves the room. | |
| 03:02:00 | tarcieri | ROTFLMAO @ headius's blog |
| 03:02:57 | headius | I like the python version |
| 03:03:02 | headius | every language needs a "Wrong" blog |
| 03:03:10 | tarcieri | heh yeah just clicked on that |
| 03:03:47 | tarcieri | I always thought Monty would make a way cooler name than RPython |
| 03:04:01 | tarcieri | although Pygmy would be good as well |
| 03:04:14 | Rich_Morin | rue: Thanks! |
| 03:07:58 | benburkert_ leaves the room. | |
| 03:09:34 | headius | Monty would be good |
| 03:10:04 | headius | or One-Eyed Trouser |
| 03:10:53 | agardiner | :-D |
| 03:12:20 | ruivaldo enters the room. | |
| 03:12:47 | evan | tarcieri: they totally should have called RPython Monty |
| 03:13:17 | evan | Or maybe Fauly Tower |
| 03:15:12 | be9 enters the room. | |
| 03:15:13 | ruivaldo | evan, sorry for interrupting, but rubinius is already compiling on win32 or neat to it ? |
| 03:15:27 | evan | no, it's not yet. |
| 03:15:33 | evan | people are currently working on it. |
| 03:16:12 | ruivaldo | evan, ok. how could i colaborate on it ? (please, easy steps. i am a good python/java ruby learner, my C skills are low). |
| 03:16:31 | evan | with running on windows or rubinius in general? |
| 03:17:29 | ruivaldo | evan, the easiest way :) i am really interestd in helping, but i only have access to computeres running windows. so, if i want to colaborate i will have to work on both i guess. |
| 03:18:09 | brixen | ruivaldo: TheProkrammer has been actively working on getting it to compile completely under cygwin |
| 03:18:16 | evan | well, people have run rubinius under cygwin and colinux fine |
| 03:18:32 | evan | ok, maybe not perfect under cgywin |
| 03:18:46 | rue | Think we might have gotten somewhere with some options today on that front but he has not reported back |
| 03:18:47 | brixen | oh, actually, I think TheProkrammer did work out the issue with libffi with rue's help |
| 03:18:56 | brixen | rue: :) |
| 03:19:32 | ruivaldo | i will give a try on colinux. lighthouse has some documentation about how to get started no ? |
| 03:19:54 | Fullmoon leaves the room. | |
| 03:20:21 | Rich_Morin | How can I get the sexp of the current program? |
| 03:20:50 | evan | Rich_Morin_: getting it for a file is easiest |
| 03:20:54 | evan | File.to_sexp(path) |
| 03:24:19 | rue | ruivaldo: coLinux is basically just Linux |
| 03:24:20 | srbaker leaves the room. | |
| 03:25:10 | thurston enters the room. | |
| 03:25:52 | evan | thurston: allo Adrian! |
| 03:26:04 | thurston | hey evan, was just going to ping ya |
| 03:26:11 | evan | sup? |
| 03:26:13 | thurston | just got rubinius compiled |
| 03:26:22 | Rich_Morin | That's great for some things, and I expect to use it, but it won't work (AFAIK) for some of my needs. Let's say I'm sitting in an END block, having collected all sorts of information about a program that may have been loaded from a number of files. I now want to integrate that information with things I can get from the program's composite sexp (if there is such a thing). Can I do this? |
| 03:26:28 | ruivaldo | rue, i think i will go with wubi :). thanks you all. keep the good work, you are great developers and people. |
| 03:26:31 | thurston | ah, will be back in 20 mins, sorry |
| 03:26:41 | evan | thurston: no prob |
| 03:27:15 | evan | Rich_Morin_: currently, the sexp for a CompiledMethod isn't saved |
| 03:28:03 | evan | there is no 'composite sexp' |
| 03:28:16 | evan | the sexp is only a compile time artifact |
| 03:28:30 | evan | it's not present during execution |
| 03:30:07 | Rich_Morin | So I'd have to walk through each file, getting their sexps, and then getting the sexps of the things they've included. Seems a bit chancy, given that the programs could bring in the required files in an arbitrary order. Hmmmm. Owell, off to dinner. |
| 03:31:14 | evan | Rich_Morin_: what do you want to do with them? |
| 03:31:18 | evan | perhaps thats a better question |
| 03:36:55 | bitbang leaves the room. | |
| 03:38:43 | ruivaldo leaves the room. | |
| 03:45:31 | thurston | evan: I'm back, yeah so I just got rubinius compiled. I'm getting an error with the ragel generated code |
| 03:45:46 | evan | yeah, there is a bug |
| 03:45:48 | thurston | No method '_atoi3_actions=' on an instance of Object. (NoMethodError) |
| 03:45:53 | evan | you have to remove the private line at the top |
| 03:45:57 | evan | in the generated output |
| 03:46:07 | evan | oh btw, would you be willing to accept a patch to change the Ruby output? |
| 03:46:11 | evan | it's kinda... strange now. |
| 03:46:14 | thurston | okay, are there fixes to ragel that I can make |
| 03:46:19 | thurston | sure would |
| 03:46:38 | evan | ok |
| 03:46:40 | evan | tell ya want |
| 03:46:46 | evan | i'll send ya another patch tonight |
| 03:47:03 | evan | who did the initial ruby output work? |
| 03:47:06 | evan | may I ask |
| 03:47:24 | thurston | victor hugo borja, he might be able to answer questions for you |
| 03:47:29 | evan | ok. |
| 03:47:34 | evan | real fast |
| 03:47:36 | evan | just curious. |
| 03:48:08 | evan | the expectation is that processing the .rl file generates a language file, that when run, executes right into the state machine |
| 03:48:11 | evan | right? |
| 03:48:16 | thurston | ya, i'm not a ruby hacker and so that stuff I can't answer for |
| 03:48:29 | evan | not ruby specific |
| 03:48:37 | evan | more the expectations of the backend |
| 03:49:00 | evan | if you remove the private line manually now |
| 03:49:06 | evan | rubinius can run the generate .rb file |
| 03:49:11 | thurston | it's designed so you can put the state machine code anywhere you like |
| 03:50:05 | thurston | ragel was originally made for C, so the idea was that you could emit the data in the top level, or in a structure, then put the code wherever it's convenient for you |
| 03:50:32 | evan | ok |
| 03:50:45 | thurston | okay, I'll take out the private |
| 03:50:50 | evan | mainly, i'm thinking that the data about the machine should be wrapped up in an object |
| 03:51:01 | evan | rather than emitted to be run on self |
| 03:51:08 | evan | that would clean it up a lot too. |
| 03:53:17 | thurston | is it possible to have ragel generate something like "table = [1, 2, ...]" |
| 03:53:24 | thurston | and then allow the user to choose where it goes |
| 03:53:33 | evan | yeah |
| 03:53:37 | thurston | class, function, top level? |
| 03:53:38 | evan | i'm thinking, since you give the machine a name |
| 03:53:42 | evan | if you say |
| 03:53:44 | evan | machine Test |
| 03:53:48 | evan | it would output something like |
| 03:53:53 | evan | module RagleTest |
| 03:53:57 | evan | Table = [1,2,...] |
| 03:54:02 | evan | end |
| 03:55:19 | evan | another problem with the current output is that it's easier for it to collide with something else |
| 03:55:29 | evan | since it's basically putting all data in Object |
| 03:55:38 | evan | well, sorta. |
| 03:55:41 | thurston | can you see a problem with doing "Test_table = [1,2,..]" ? That is how the other generators work. |
| 03:55:55 | thurston | then the user decides what to wrap it in |
| 03:56:01 | evan | no, thats fine too. |
| 03:56:02 | thurston | module RagelTest |
| 03:56:06 | Fullmoon enters the room. | |
| 03:56:07 | evan | let me check out the python output |
| 03:56:13 | evan | oh |
| 03:56:14 | thurston | %% write data; |
| 03:56:14 | evan | no python. |
| 03:56:15 | evan | mmmm |
| 03:56:16 | thurston | end |
| 03:56:17 | evan | java is fine. |
| 03:56:33 | Rich_Morin | How do I prettyprint sexps? |
| 03:56:52 | rue | You could store the sexp in bonus (which I am yet to go through to rename sigh( |
| 03:57:05 | evan | don't bother |
| 03:57:06 | thurston | ah, should get all those code likes in one block :) code interleaved with chat isn't so readable |
| 03:57:12 | evan | i'm doing than on the C++ branch |
| 03:57:24 | evan | thurston: :) |
| 03:57:33 | evan | for the java output |
| 03:57:35 | fbuilesv enters the room. | |
| 03:57:43 | evan | the idea is that you put the %% directives within a class |
| 03:58:03 | evan | ? |
| 03:58:21 | evan | and it outputs java code to perform the actions |
| 03:59:27 | thurston | Yep, ideally you should be able to put them wherever you like, but in java they have to go in a class. |
| 03:59:33 | evan | ok. |
| 03:59:37 | ezmobius enters the room. | |
| 04:00:00 | evan | ok, let me take a quick pass at this. |
| 04:00:49 | evan | thurston: in ruby-codegen.cpp |
| 04:01:03 | evan | does the RubyCodeGen class know the name of the machine? |
| 04:01:35 | thurston | yep, FSM_NAME() |
| 04:01:44 | evan | oh, i guess name has the machine prefixed already |
| 04:02:41 | thurston | yes, just looking at that stuff now, all the data variables already have the prefix there |
| 04:03:59 | evan | ha! this is going to be like a 2 line patch |
| 04:04:34 | thurston | good stuff, perhaps we can just get rid of that accessor stuff? I never understood why that was there. |
| 04:04:42 | evan | yep |
| 04:04:43 | evan | i am |
| 04:04:45 | evan | it's gone |
| 04:04:53 | evan | it's down from like 4 lines of code to 1 |
| 04:05:47 | thurston | can you shed some light on why that might have been there? seems to be adding an attribute to some special class named self? |
| 04:05:57 | evan | i can |
| 04:06:02 | evan | i see why victor did it this |
| 04:06:12 | crafterm leaves the room. | |
| 04:06:15 | evan | the rest of the ragel code gen is still C oriented |
| 04:06:26 | evan | so it wants things like static variables |
| 04:06:34 | evan | he 'faked' static variables in ruby |
| 04:06:57 | evan | what the << self thing is doing is adding methods directly to the toplevel self in a script |
| 04:07:00 | evan | an object called main |
| 04:07:28 | crafterm enters the room. | |
| 04:07:30 | evan | well, thats true if you generate code thats not wrapped in a class or module |
| 04:07:38 | evan | if you do that, then the same code works exactly |
| 04:07:46 | evan | and the class << self is add class methods |
| 04:07:52 | evan | if that makes sense |
| 04:08:37 | thurston | ah, so no static vars in ruby then? data should be in a class or module? |
| 04:08:46 | fbuilesv | corundum: doxygen |
| 04:08:54 | evan | well, ruby is flexible about that |
| 04:09:05 | fbuilesv | so, how do you query the friendly bot? :) |
| 04:09:12 | evan | imho, the fact that you can have ragel output code thats not in a class or module HAPPENS to work |
| 04:09:17 | drbrain | with a ? |
| 04:09:22 | drbrain | context: doxygen? |
| 04:09:24 | fbuilesv | corundum: doxygen? |
| 04:09:25 | corundum | doxygen is http://rubini.us/static/doxygen/ |
| 04:09:25 | evan | but i doubt anyone actually does that |
| 04:09:32 | fbuilesv | thanks |
| 04:09:32 | jtoy leaves the room. | |
| 04:09:55 | evan | thurston: in ruby, you can have methods that exist only on one object in the system |
| 04:10:06 | evan | that basically exist outside that objects class heirarchy |
| 04:10:12 | evan | s = "" |
| 04:10:14 | thurston | okay |
| 04:10:22 | evan | def s.blah |
| 04:10:27 | evan | puts "wee!" |
| 04:10:28 | evan | end |
| 04:10:37 | evan | the object s, which is a String, now has a method blah |
| 04:10:45 | evan | only that one object has that method |
| 04:10:47 | thurston | ah |
| 04:11:11 | thurston | okay, so self is a root global object of sorts? |
| 04:11:15 | evan | his stuff with class << self, private, and attr_* is to create those methods on the main object |
| 04:11:20 | evan | yeah |
| 04:11:33 | thurston | okay I see |
| 04:11:33 | anteaya leaves the room. | |
| 04:11:36 | rue | thurston: (Also, few people hear it too often so: thanks for the nice job with Kelbt and all the rest:) |
| 04:11:38 | evan | so, self in a script body is the main object |
| 04:11:54 | thurston | rue: thanks! |
| 04:12:45 | thurston | okay, so do you think it would be reasonable to take that out and expect people to put data in a module or class? |
| 04:13:02 | evan | nah, i can clean it up and make it work the same |
| 04:13:05 | evan | without being so strange |
| 04:13:06 | evan | :) |
| 04:13:39 | evan | ok, here's a quick question |
| 04:13:48 | evan | STATIC_VAR is called to initialize it |
| 04:13:56 | evan | but it doesn't appear to be used to access it |
| 04:14:31 | thurston | oh, you're looking at the java code generator ? |
| 04:14:35 | evan | no |
| 04:14:36 | evan | ruby |
| 04:14:44 | evan | but i can look at the java one |
| 04:15:38 | thurston | use the C one for refernce, the java code generator has some serious wierdness in it to get around the limit on method sizes |
| 04:15:42 | evan | ok. |
| 04:15:50 | evan | %%write init |
| 04:15:58 | evan | writes out the start index |
| 04:16:02 | evan | access via a static var |
| 04:16:10 | evan | <machine>_start |
| 04:16:19 | evan | can i control the name of that? |
| 04:16:51 | thurston | yeah, so STATIC_VAR is there just to emit the name of the variable when it's declared |
| 04:17:03 | evan | what about when it's accessed? |
| 04:17:33 | evan | are those static variable ever written to? |
| 04:17:43 | evan | or are they const? |
| 04:17:44 | thurston | look in ruby-codegen.h, all the names have wrappers there |
| 04:17:51 | thurston | nope, const |
| 04:18:14 | evan | ok, i think i have a good idea. |
| 04:18:39 | evan | arg. |
| 04:19:05 | evan | to make that work, i need to be able to change how the static variables are accessed |
| 04:19:13 | evan | if that was available, this would be easy |
| 04:19:28 | evan | i think victor's code is basically working around that fact |
| 04:20:16 | thurston | you need an extra operator or subscript? |
| 04:20:46 | evan | just need something like STATIC_VAR |
| 04:20:56 | evan | thats called when 'string name' is being accessed |
| 04:20:56 | smparke1 leaves the room. | |
| 04:23:33 | thurston | hey I need to run for now, maybe resume tomorrow or email |
| 04:23:36 | evan | ok. |
| 04:23:49 | thurston | will be in touch, later |
| 04:23:52 | evan | talk to ya later. |
| 04:24:43 | ezmobius | hah crazy http://www.ruby-php.org/ |
| 04:24:52 | evan | yeah |
| 04:24:53 | evan | it's nuts. |
| 04:30:17 | wmoxam enters the room. | |
| 04:35:03 | Rich_Morin | evan: If I wanted to modify rbx to output the Sexps for each piece of code it compiles, where would be a good place to do this? |
| 04:38:50 | vborja enters the room. | |
| 04:40:34 | rue | Hey, vborja |
| 04:40:47 | santana_ enters the room. | |
| 04:41:23 | vborja | hey rue |
| 04:41:37 | drbrain | corundum: committer? |
| 04:41:37 | corundum | beats me |
| 04:41:43 | drbrain | dang |
| 04:42:25 | rue | Rich_Morin_: The compiler works off of .to_sexp too; you can hook in kernel/core/compile.rb or then in the compiler itself. |
| 04:43:07 | drbrain | santana_: please read 'Git Workflow' here: http://rubinius.lighthouseapp.com/projects/5089/using-git |
| 04:43:34 | drbrain | corundum: rubinius git is http://rubinius.lighthouseapp.com/projects/5089/using-git |
| 04:43:34 | corundum | aight |
| 04:43:55 | santana | ok drbrain |
| 04:44:05 | santana | was there something wrong? |
| 04:44:26 | santana | besides the date of the commit |
| 04:44:37 | drbrain | santana_: we prefer to see the changes you made instead of "merged branch" |
| 04:44:42 | drbrain | I don't know the specifics |
| 04:45:07 | Rich_Morin | rue: explain "then in the compiler itself", please? |
| 04:45:23 | trythil leaves the room. | |
| 04:45:30 | drbrain | santana_: we also have `rake git:push` and `rake git:pull` which encapsulate the workflow if you don't want to remember it |
| 04:45:45 | rue | Rich_Morin_: lib/compiler |
| 04:45:59 | santana | ok |
| 04:46:29 | rue | (No huge problem, all it does is create that unnecessary commit and message.) |
| 04:47:10 | Rich_Morin | rue: tnx |
| 04:48:56 | Rich_Morin | rue: This seems a bit quinish - puts File.to_sexp(__FILE__).inspect |
| 04:49:16 | santana | ok rue |
| 04:50:55 | rue | #pretty_inspect would probably be better |
| 04:51:30 | rue | I think someone wiped the expanded describe.rb but I think the AST walker and sexp printer are in graph.rb maybe |
| 04:52:18 | be9 leaves the room. | |
| 04:53:27 | Rich_Morin | No method 'pretty_inspect' on an instance of Array. (NoMethodError) - Heh? |
| 04:55:30 | santana__ enters the room. | |
| 04:55:30 | santana_ leaves the room. | |
| 04:56:04 | rue | Ah, hm. Maybe just #inspect then. Someone has been pruning |
| 04:56:43 | Rich_Morin | sigh |
| 04:57:01 | jtoy enters the room. | |
| 04:57:28 | Rich_Morin | Real Programmers read Sexps without indentation. |
| 04:58:06 | nicksieger leaves the room. | |
| 04:58:07 | drbrain | Rich_Morin_: that's a lie |
| 04:58:26 | Rich_Morin | Actually, it was sarcasm. |
| 04:58:30 | drbrain | Rich_Morin_: we wrote pp support for Sexp because they were too hard to read |
| 04:58:33 | drbrain | ... years ago |
| 04:58:38 | nicksieger enters the room. | |
| 04:58:38 | drbrain | I know :) |
| 04:58:54 | Rich_Morin | great - now, where do I find a copy? |
| 04:59:05 | drbrain | ParseTree? |
| 04:59:25 | manveru | oh, since you're all here... any shortcut to printing out the source of a CompiledMethod? |
| 04:59:26 | drbrain | it should be baked in somewhere |
| 05:00:50 | Rich_Morin | manveru: Might this be helpful? - http://cfcl.com/twiki/bin/view/Projects/Spect/Rubinius_Hacks_API |
| 05:02:03 | manveru | hrm |
| 05:02:05 | manveru | not exactly |
| 05:02:06 | manveru | cm = String.method(:to_s).compiled_method; puts File.readlines(cm.file.to_s).slice(cm.lines.first.last - 1, cm.lines.size + 1) |
| 05:02:11 | manveru | is what i'm doing right now |
| 05:03:23 | Rich_Morin | And what, pray tell, is that doing? :) |
| 05:05:10 | manveru | it shows original source of the method String#to_s |
| 05:05:39 | manveru | as you can easily try yourself :) |
| 05:05:40 | Rich_Morin | ah |
| 05:06:02 | manveru | i don't quite get yet why CompiledMethod#file returns a symbol though |
| 05:11:55 | Rich_Morin | Is the code that runs the website http://git.rubini.us readily available? |
| 05:14:26 | drbrain | it's git |
| 05:15:08 | Rich_Morin | I have git - is the web page generation software part of the git distro? |
| 05:15:12 | rue | gitweb to be specific |
| 05:15:30 | rue | manveru: The debugger would probably be the best |
| 05:15:32 | antares enters the room. | |
| 05:15:36 | Rich_Morin | Great - I think we should put it up at work. |
| 05:15:45 | rue | Hey, antares |
| 05:15:56 | drbrain | http://git.kernel.org/?p=git/git.git;a=summary |
| 05:15:59 | antares enters the room. | |
| 05:16:08 | antares | rue: hey :) |
| 05:20:03 | santana_ enters the room. | |
| 05:20:03 | santana__ leaves the room. | |
| 05:21:43 | rue | manveru: Looks like ListSource uses broadly that method |
| 05:23:43 | fbuilesv leaves the room. | |
| 05:24:12 | dysinger leaves the room. | |
| 05:26:00 | rue | manveru: If you meant a shortcut as literally a shortcut, CompiledMethod#source would be an easy addition |
| 05:26:22 | therealadam leaves the room. | |
| 05:27:18 | agardiner | Rich_Morin: i think you can use indented_inspect on sexp... the debugger uses that |
| 05:28:34 | rue | Yep, sure will... it was moved to array |
| 05:28:37 | boyscout | 2 commits by Adam Gardiner |
| 05:28:38 | boyscout | * Add CompiledMethod.scripts - a hash of .rb files to script CMs; 27318f7 |
| 05:28:39 | boyscout | * Fix bug when processing step selector in breakpoint.rb; df6049d |
| 05:28:56 | santana | there's an error in using-git |
| 05:29:09 | santana | "8. If you there are conflicts applying your changes" |
| 05:30:43 | rue | Got it, thanks |
| 05:30:47 | santana | np |
| 05:31:53 | agardiner | brixen: spinner formatter seems to be broken... |
| 05:34:17 | wmoxam leaves the room. | |
| 05:34:36 | Rich_Morin | agardiner: perfect! |
| 05:35:38 | agardiner | brixen: actually, i think it might be the -f option that's broke |
| 05:37:19 | rubuildius_amd64 | Adam Gardiner: 27318f7b4; 2097 files, 6765 examples, 23999 expectations, 0 failures, 0 errors; http://rafb.net/p/KuUXHp55.html |
| 05:38:48 | Defiler | agardiner: Tomorrow morning I'll take a look at unifying CM.scripts and Autoload |
| 05:39:01 | agardiner | rue: i renamed CM bonus a while back and moved some stuff out of there... but evan has got conflicting changes in the cpp branch, so it will need revisiting |
| 05:40:09 | agardiner | Defiler: ok... i think the CM.scripts hash should also include stuff from kernel |
| 05:40:27 | Defiler | Seems reasonable |
| 05:40:37 | agardiner | i.e. i think it should be possible to get to any CM via CM.scripts and then navigating through contained CMs |
| 05:40:52 | evan | agardiner: i'm cleaning a lot of things up in the C++ branch |
| 05:40:57 | evan | like remove the old opcodes, etc. |
| 05:41:02 | evan | fixed the CM fields |
| 05:41:07 | Defiler | Well, we do have at least one exception to that |
| 05:41:12 | agardiner | yeah, i know - i made those changes before you published the cpp branch |
| 05:41:14 | Defiler | being -e "def zomg" |
| 05:41:51 | agardiner | Defiler: yeah, i'm not so worried about those, since you can't specify a breakpoint on -e stuff |
| 05:42:07 | drbrain | do we support multiple -e? |
| 05:42:08 | rubuildius_ppc | Adam Gardiner: 27318f7b4; 2097 files, 6767 examples, 24025 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/189112 |
| 05:42:13 | drbrain | ruby -e 'p 1 + 1' -e 'p 1 + 2' |
| 05:42:14 | agardiner | well, you can if you've defined it as a class or method |
| 05:42:21 | drbrain | I am too lazy to check myself |
| 05:43:07 | agardiner | btw i hit an interesting issue i need to look into more |
| 05:43:12 | evan | drbrain: yep |
| 05:43:48 | agardiner | taking the CM#local_names and MC#locals and converting both to an array, i end up with names in a different order to values |
| 05:44:00 | agardiner | BUT if i leave them as tuples, it works |
| 05:44:13 | Defiler | phear |
| 05:44:24 | agardiner | so maybe Tuple#to_a is changing order or something?!? |
| 05:44:29 | evan | can't be |
| 05:44:45 | evan | but there could be a bug in the marshalling code for Array |
| 05:44:51 | evan | since it's never been used. |
| 05:44:51 | agardiner | i stared at the code for a good hour yesterday, trying to figure out what was going on |
| 05:45:20 | agardiner | taking out the .to_a solved the problem |
| 05:45:34 | evan | oh. |
| 05:45:37 | evan | it's Tuple#to_a |
| 05:45:38 | evan | thats odd. |
| 05:46:54 | agardiner | yeah... i'll try and get a reproducible case |
| 05:47:02 | agardiner | i was just happy when i got it to work! :-) |
| 05:48:20 | agardiner | i was tearing my hair out, cause i'd done exactly the same thing in the Rubinius debugger, but was getting weird results when i implemented similar code in rdebug |
| 05:49:13 | agardiner | eventually i realised i didn't need to convert Tuples to Arrays to use Enumerable (d'oh), at which point i got the right results |
| 05:49:54 | benburkert enters the room. | |
| 05:50:46 | wycats leaves the room. | |
| 05:54:49 | evan | agardiner: very strange. |
| 05:55:00 | evan | tarcieri: you around? |
| 05:57:54 | brapse leaves the room. | |
| 05:59:19 | Rich_Morin | evan - please consider doing a blog on your experience in moving rbx to C++ Like, why did you do it, how well did it work out, etc. |
| 05:59:33 | evan | surely |
| 06:01:26 | evan | wow, this is hilarious |
| 06:01:39 | evan | LLVM has a isa<Class>() function |
| 06:01:41 | evan | just like we almost did. |
| 06:01:59 | evan | and they has cast<>() instead of as<>() |
| 06:02:01 | agardiner | evan: if you run this bit of code, you'll see the problem: http://pastie.caboo.se/189120 |
| 06:02:59 | evan | agardiner: wait wait. |
| 06:03:03 | evan | what did you expect this to do? |
| 06:03:08 | evan | you're depending on hash order? |
| 06:03:24 | agardiner | no, i'm creating a hash of names and values |
| 06:03:33 | evan | right |
| 06:03:37 | agardiner | but if i do the to_a, the name points to the wrong value |
| 06:03:40 | evan | and when you print the hash, things aren't in the same order |
| 06:03:49 | evan | oh oh |
| 06:03:51 | evan | i see. |
| 06:03:52 | evan | odd. |
| 06:04:10 | Rich_Morin | erm, why has http://rubini.us/introduction-to-the-compiler disappeared? |
| 06:04:42 | evan | agardiner: i see why. |
| 06:05:02 | evan | Tuple#to_a on frame.locals returns 9 elements |
| 06:05:07 | evan | but the Tuple has 13 |
| 06:05:22 | evan | yep |
| 06:05:31 | agardiner | wha? |
| 06:05:31 | evan | someone stupidly make Tuple#to_a stop when it seems a nil. |
| 06:05:36 | agardiner | ah, i see |
| 06:05:50 | evan | yep |
| 06:05:56 | evan | Tuple#to_a is wrong |
| 06:06:06 | evan | it doesn't put nils in the Array |
| 06:06:07 | agardiner | cool! found a bug |
| 06:06:14 | evan | i wonder why someone did that. |
| 06:06:25 | agardiner | maybe cause tuples are fixed size |
| 06:06:50 | agardiner | and don't have a used counter? |
| 06:08:09 | mapar enters the room. | |
| 06:10:39 | evan | thats true |
| 06:10:44 | evan | but Tuple#to_a shouldn't skip. |
| 06:10:55 | agardiner | agreed, definitely |
| 06:11:11 | agardiner | if its going to stop it should just stop... but i don't think that is right either |
| 06:12:14 | agardiner | it should just copy everything - you can always use Array#compact or whatever it is to remove the nils if you don't want them |
| 06:14:07 | evan | yeah |
| 06:14:08 | evan | agreed. |
| 06:16:43 | Rich_Morin | Skimming through compile.rb, I get the impression that the sexp is never exposed at that level of the code. true? |
| 06:17:23 | agardiner | compile.rb doesn't deal with sexps - the compiler does (lib/compiler) |
| 06:17:42 | agardiner | it gets a CompiledMethod back from the compiler |
| 06:17:54 | Rich_Morin | as I thought - and lib/compiler is a directory (sigh) |
| 06:18:27 | agardiner | you can take a look at the Sexp command in lib/debugger/standard_commands.rb to see how it does it |
| 06:18:28 | evan | Rich_Morin_: a ruby compiler isn't the simplest thing in the world |
| 06:18:34 | evan | Rich_Morin_: we had to split it up between files. |
| 06:18:45 | evan | Rich_Morin_: what are you trying to do? |
| 06:18:59 | agardiner | it's a bit problematic, since the last line number for a method is not easy to determine |
| 06:19:25 | Rich_Morin | Find out what I need to override to dump the initial Sexp for each compile into a file. |
| 06:20:15 | evan | Rich_Morin_: you can just override File.to_sexp |
| 06:20:17 | imajes leaves the room. | |
| 06:20:20 | evan | monkeypatch style |
| 06:20:23 | evan | thats one way |
| 06:20:41 | Rich_Morin | works for me! |
| 06:21:08 | Rich_Morin | I can always get more subtle later, if appropriate |
| 06:21:27 | evan | but why do you want to dump the sexp |
| 06:21:34 | evan | what problem are you solving |
| 06:23:44 | Rich_Morin | The sexp contains information which isn't in the CM object, but is (IMHO) complementary to it. For example, I can traverse the sexp and find all of the method calls in the program. |
| 06:23:46 | brixen | agardiner: seems to just be -f(*|a|spin) for me, all the other options work, really odd |
| 06:24:07 | agardiner | hmm... i tried -fm, and that doesn't work for me |
| 06:25:33 | srbaker enters the room. | |
| 06:25:40 | brixen | agardiner: heh, ENODESCRIPTION "doesn't work" |
| 06:27:15 | headius | Rich_Morin: you probably should just look at parsetree and related utils |
| 06:27:18 | headius | it's essentially the same |
| 06:27:50 | headius | and works on MRI (and sortof on JRuby) |
| 06:27:51 | brixen | agardiner: what output do you get? -fm only prints the time and tally summaries |
| 06:28:15 | femtowin enters the room. | |
| 06:28:52 | Rich_Morin | headius: portability is definitely a plus! |
| 06:29:15 | agardiner | brixen: strange... it seems to be working now. perhaps i got a typo before? |
| 06:29:17 | headius | not that I'm an advocate of working with the parse tree directly |
| 06:29:42 | headius | specially since it changes over time |
| 06:29:46 | headius | and across impl |
| 06:30:04 | evan | Rich_Morin_: ok, but what do you want to do with the sexp? |
| 06:30:10 | evan | Rich_Morin_: just save it because you might need it later? |
| 06:30:40 | brixen | agardiner: ok, -fa is definitely messed up though, working on it |
| 06:30:41 | agardiner | bbiab |
| 06:30:45 | agardiner | ok |
| 06:31:51 | Rich_Morin | I have two current interests. One is related to mechanized documentation of Ruby and Rails. I think that, by learning about Ruby and Rubinius introspection, I'll be able to gather information that I couldn't otherwise. |
| 06:35:16 | dysinger enters the room. | |
| 06:36:40 | Rich_Morin | The other interest has to do with trying to explore the limits of Ruby assertions, etc. That is, what things can we determine about a program without writing exhaustive test suites? As a simple example, CM will tell me all about method definitions, but not (without a lot of effort) about method calls. Runtime assertions will only check things that get executed. However, by combining CMs and whatever, I hope to be able to do lintish things like comparing ca |
| 06:37:26 | evan | you got cut off |
| 06:37:34 | evan | comparing ca |
| 06:37:37 | evan | is the last thing i got. |
| 06:37:47 | evan | on IRC, better to break things up by sentence |
| 06:37:50 | evan | than by paragraph |
| 06:38:00 | Rich_Morin | or by phrase? |
| 06:38:06 | evan | sure |
| 06:38:21 | Rich_Morin | ... like comparing calls to definitions. It won't be 100%, but it may be better than nothing... |
| 06:39:04 | evan | CM has just as much info as the sexp. |
| 06:39:06 | evan | more actually. |
| 06:39:13 | evan | for method calls. |
| 06:39:26 | Rich_Morin | This started as a thought experiment, but I'm having fun and learning stuff and some things actually seem promising. |
| 06:39:26 | evan | the arguments are harder to see in the CM |
| 06:39:33 | evan | but where the method call goes can be seen in a CM |
| 06:40:38 | Rich_Morin | It looked like I'd have to decompile the opcodes, which looked harder than walking an Sexp |
| 06:41:43 | evan | Rich_Morin_: not at all. |
| 06:41:51 | evan | puts cm.decode |
| 06:41:52 | Rich_Morin | This gives me an idea, however. Might I be able to extend some method in the compiler to save the Sexp as part of the CM? |
| 06:41:55 | evan | agardiner is the man. |
| 06:42:03 | santana | there's a known bug in Solaris' stdbool.h that doesn't let me build Rubinius |
| 06:42:06 | evan | a CM can decode itself to a form you can easily look through |
| 06:42:15 | santana | I've found a workaround: http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/textproc/gsed/patches/patch-ae?rev=1.4&content-type =text/x-cvsweb-markup |
| 06:42:30 | santana | but requires a few changes in configure.ac |
| 06:42:48 | santana | just testing for stdbool.h and for _Bool |
| 06:42:51 | evan | we don't use configure |
| 06:43:05 | evan | but if it's for the external_libs |
| 06:43:07 | evan | go for it |
| 06:44:07 | santana | it's for shotgun/lib :-S |
| 06:44:14 | evan | ah |
| 06:44:18 | evan | well, there is no configure. |
| 06:44:23 | santana | grammar_internal.h |
| 06:44:33 | santana | is including stdbool.h |
| 06:44:41 | evan | hm. |
| 06:44:48 | evan | did you try just not including it? |
| 06:44:49 | femtowin leaves the room. | |
| 06:44:53 | evan | see what happens |
| 06:45:03 | santana | ahm |
| 06:45:07 | santana | :) |
| 06:45:34 | Rich_Morin | In upgrading my copy of rbx, I seem to have lost a bonus I didn't know I had - http://pastie.caboo.se/189136 |
| 06:46:16 | evan | we've been trying to get rid of it |
| 06:46:20 | evan | perhaps someone finally did |
| 06:46:44 | santana | Jesus, it worked |
| 06:46:52 | santana | ok, but there's another problem |
| 06:46:58 | santana | bignum.c: In function `bignum_to_double': |
| 06:46:58 | santana | bignum.c:638: warning: implicit declaration of function `__builtin_isinf' |
| 06:47:04 | evan | santana_: grammar_* is crazy. |
| 06:47:13 | evan | it's code i've hacked up and hacked up. |
| 06:47:19 | Rich_Morin | yah, it looked a bit redundant. |
| 06:47:22 | santana | may I commit the deletion of stdbool.h? |
| 06:47:34 | santana | two lines removed |
| 06:47:40 | evan | please do. |
| 06:48:11 | evan | as for bignum, maybe include <float> |
| 06:48:14 | femtowin enters the room. | |
| 06:48:17 | evan | <float.h> |
| 06:48:39 | ryantmulligan leaves the room. | |
| 06:48:51 | santana | err, about bignum, I'm afraid I didn't paste the real problem ... |
| 06:49:17 | santana | bignum.c:640: error: incompatible types in assignment |
| 06:49:33 | santana | res = HUGE_VAL; |
| 06:49:39 | evan | hm, whats HUGE_VAL |
| 06:50:07 | santana | I hit the same problem when building GNU m4 on Solaris |
| 06:51:25 | evan | hm. |
| 06:51:30 | evan | maybe just cast HUGE_VAL |
| 06:51:38 | santana | I was pointed to another distribution file |
| 06:51:41 | santana | http://lists.gnu.org/archive/html/bug-m4/2008-04/msg00085.html |
| 06:52:06 | santana | another bug in Solaris' math |
| 06:52:10 | santana | .h |
| 06:54:41 | srbaker leaves the room. | |
| 06:57:51 | boyscout | 1 commit by Gerardo Santana |
| 06:57:52 | boyscout | * stdbool.h is not needed; 2dd7e55 |
| 06:58:12 | santana | I will see what was the workaround in GNU m4 |
| 06:58:28 | santana | tomorrow... |
| 06:58:37 | santana | thanks Evan, for everything |
| 06:58:48 | santana | see you guys, rue, brixen, drbrain |
| 06:58:55 | santana_ leaves the room. | |
| 07:01:28 | rubuildius_amd64 | Gerardo Santana: 2dd7e550f; build failed! http://rafb.net/p/nLpuQm25.html |
| 07:01:55 | brixen | oops |
| 07:04:15 | rubuildius_ppc | Gerardo Santana: 2dd7e550f; build failed! http://pastie.caboo.se/paste/189144 |
| 07:08:33 | wycats enters the room. | |
| 07:09:47 | femtowin leaves the room. | |
| 07:10:27 | femtowin enters the room. | |
| 07:12:38 | obiejuan leaves the room. | |
| 07:12:52 | obiejuan enters the room. | |
| 07:13:48 | femtowin leaves the room. | |
| 07:20:27 | headius leaves the room. | |
| 07:22:49 | boyscout | 1 commit by Brian Ford |
| 07:22:50 | boyscout | * Revert "stdbool.h is not needed". We need to first remove use of 'bool'.; fc458f1 |
| 07:25:05 | lstoll leaves the room. | |
| 07:25:43 | femtowin enters the room. | |
| 07:32:17 | rubuildius_amd64 | Brian Ford: fc458f15f; 2097 files, 6765 examples, 23999 expectations, 0 failures, 0 errors; http://rafb.net/p/tkLAWP30.html |
| 07:35:58 | rubuildius_ppc | Brian Ford: fc458f15f; 2097 files, 6767 examples, 24025 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/189152 |
| 07:36:53 | Maledictus enters the room. | |
| 07:37:31 | boyscout | 1 commit by Brian Ford |
| 07:37:32 | boyscout | * Fix spinner formatter to correctly access counter object.; b0b52cd |
| 07:38:26 | mkrauskopf enters the room. | |
| 07:43:54 | agardiner | loves the spinner |
| 07:47:18 | rubuildius_amd64 | Brian Ford: b0b52cd13; 2097 files, 6765 examples, 23999 expectations, 0 failures, 0 errors; http://rafb.net/p/aJXsrg85.html |
| 07:47:35 | evan | spinner ftw. |
| 07:48:23 | agardiner | come in spinner! |
| 07:50:15 | Rich_Morin | evan - decode is indeed cool. I've added it to my CM demo script - http://cfcl.com/twiki/bin/view/Projects/Spect/Rubinius_Hacks_API |
| 07:50:29 | brixen | agardiner: sorry about breaking that :? |
| 07:50:59 | rubuildius_ppc | Brian Ford: b0b52cd13; 2097 files, 6767 examples, 24025 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/189159 |
| 07:51:00 | agardiner | hehe, well i guess we're equal - i broke the mspec debugging support on you last week! :-D |
| 07:51:03 | evan | mmm |
| 07:51:07 | brixen | evan: so, grammar.c and grammar_internal.h both use 'bool' |
| 07:51:09 | evan | i can't wait for external iterators |
| 07:51:22 | brixen | agardiner: :) |
| 07:51:31 | evan | [].map.with_index do |e,i| ... end |
| 07:51:42 | brixen | yeah, that's nice |
| 07:54:38 | qwert666 enters the room. | |
| 07:57:20 | yaroslav enters the room. | |
| 07:57:24 | kamal_fariz | oh cool, the spinner has an ETA |
| 07:57:41 | Rich_Morin | evan - At a swag, how stable is the opcode set? How much would you expect to change in (say) the next year? |
| 07:58:22 | evan | no clue |
| 07:58:41 | evan | i expect it to evolve until we got to 1.0 |
| 07:58:53 | evan | get |
| 08:00:46 | Rich_Morin | fair enough; just wondering how much of a moving target I'll be chasing. (my problem; not yours. keep up the good work!) |
| 08:01:43 | evan | not too much i'd think. |
| 08:01:49 | evan | it will always be well documented |
| 08:02:25 | Rich_Morin | Glad to hear both. Thanks for all the clues! As it's officially Wednesday, I'm off to snooze. later... |
| 08:02:35 | evan | later. |
| 08:12:53 | yugui enters the room. | |
| 08:18:45 | mitchellvriley enters the room. | |
| 08:19:19 | mitchellvriley leaves the room. | |
| 08:24:14 | agardiner | hmm... what's a good name for a method to return the collection of CompiledMethod objects from the literals tuple of a CompiledMethod? |
| 08:24:42 | evan | child_methods |
| 08:24:52 | agardiner | sold! |
| 08:26:47 | crafterm leaves the room. | |
| 08:27:28 | crafterm enters the room. | |
| 08:29:09 | ezmobius leaves the room. | |
| 08:32:55 | joachimm enters the room. | |
| 08:35:50 | agardiner | later! |
| 08:35:58 | agardiner leaves the room. | |
| 08:36:30 | benburkert leaves the room. | |
| 08:39:37 | crafterm leaves the room. | |
| 08:42:53 | thehcdreamer enters the room. | |
| 08:50:18 | octopod enters the room. | |
| 09:01:53 | mutle enters the room. | |
| 09:08:54 | femtowin leaves the room. | |
| 09:24:22 | benny enters the room. | |
| 09:30:20 | yugui leaves the room. | |
| 09:30:29 | yugui enters the room. | |
| 09:42:19 | femtowin enters the room. | |
| 09:57:48 | femtowin leaves the room. | |
| 09:58:11 | GMFlash leaves the room. | |
| 10:01:28 | dctanner enters the room. | |
| 10:06:03 | mutle leaves the room. | |
| 10:07:39 | mutle enters the room. | |
| 10:27:48 | olabini leaves the room. | |
| 10:39:34 | yugui leaves the room. | |
| 10:55:14 | olabini enters the room. | |
| 11:02:09 | niraj1234 enters the room. | |
| 11:02:29 | niraj1234 leaves the room. | |
| 11:36:18 | antares enters the room. | |
| 11:41:51 | yaroslav leaves the room. | |
| 11:56:55 | octopod_ enters the room. | |
| 12:04:52 | octopod leaves the room. | |
| 12:06:33 | jtoy leaves the room. | |
| 12:10:33 | chris2 enters the room. | |
| 12:16:17 | radarek enters the room. | |
| 12:23:35 | ctennis leaves the room. | |
| 12:31:57 | qwert666 leaves the room. | |
| 12:36:00 | VVSiz_ enters the room. | |
| 12:43:27 | VVSiz leaves the room. | |
| 12:47:24 | kschiess enters the room. | |
| 12:52:12 | kschiess | Anybody able to help with installing on Leopard? I've followed http://sam.aaron.name/2007/9/22/rubinius-on-os-x/ but that didn't get me far. |
| 12:56:44 | Norgg leaves the room. | |
| 12:59:55 | chris2 leaves the room. | |
| 13:04:20 | ctennis enters the room. | |
| 13:05:16 | foysavas leaves the room. | |
| 13:09:58 | w1rele55 leaves the room. | |
| 13:10:28 | foysavas enters the room. | |
| 13:13:29 | yugui enters the room. | |
| 13:20:15 | foysavas leaves the room. | |
| 13:20:57 | Rich_Morin | kschiess: Where did you start to go off the rails? |
| 13:21:26 | foysavas enters the room. | |
| 13:21:33 | joachimm | kschiess: the guide http://rubinius.lighthouseapp.com/projects/5089/installation seems to be more up to date. |
| 13:21:52 | kschiess | looks at that and comes back once that fails ;) |
| 13:23:11 | mutle leaves the room. | |
| 13:23:36 | kschiess | I get: http://pasternak.superalloy.nl/pastes/355 |
| 13:23:43 | mutle enters the room. | |
| 13:25:40 | srbaker enters the room. | |
| 13:27:18 | Rich_Morin | kschiess: try running it with --trace and see if anything useful shows up |
| 13:27:19 | joachimm | kschiess: do you have xcode? |
| 13:27:32 | Rich_Morin | +1 |
| 13:27:36 | kschiess | joachimm: yeah. |
| 13:27:43 | Rich_Morin | -1 |
| 13:28:11 | yaroslav enters the room. | |
| 13:28:11 | kschiess | rake build --trace gives the same thing basically, only that I've got a ruby stack trace from rake. |
| 13:28:22 | kschiess | Anyone interested in the long error ? ;) |
| 13:28:39 | w1rele55 enters the room. | |
| 13:28:53 | Rich_Morin | kschiess: too bad. sure;put it in a pastie |
| 13:29:16 | lstoll enters the room. | |
| 13:29:41 | kschiess | http://pasternak.superalloy.nl/pastes/356 |
| 13:29:55 | Rich_Morin | Have you looked for permissions problems (eg, "ls -l external_libs/libffi/.libs") ? |
| 13:31:35 | kschiess | Nah, sorry, I own all the files. |
| 13:31:40 | kschiess | tries to find that config.log |
| 13:32:33 | AndrewO leaves the room. | |
| 13:33:06 | kschiess | Do I have to build the external_libs by hand? |
| 13:34:17 | foysavas leaves the room. | |
| 13:34:24 | joachimm | kschiess: have you build your own ruby or gems ? |
| 13:34:50 | kschiess | No, afaik on this mac I've been using preinstalled Leopard ruby. |
| 13:34:58 | kschiess | ruby 1.8.6 (2007-09-24 patchlevel 111) [universal-darwin9.0] |
| 13:35:39 | GMFlash enters the room. | |
| 13:38:11 | kschiess | joachimm: Or do you mean: Have you built in the past? Yes, I have ;) |
| 13:38:48 | foysavas enters the room. | |
| 13:39:47 | joachimm | kschiess: have you tried 'rake distclean' and then rebuilt? |
| 13:40:06 | kschiess | I'll try that |
| 13:40:51 | kschiess | http://libffi.darwinports.com/ - darwin ports seem to pass extra command line options to libffi configure .. |
| 13:43:03 | foysavas leaves the room. | |
| 13:43:47 | kschiess | distclean didn't help either |
| 13:44:14 | kschiess | the darwinports libffi installs cleanly - I'll try using that as an external library. |
| 13:45:19 | robertpostill enters the room. | |
| 13:45:47 | smparke1 enters the room. | |
| 13:45:58 | NoKarma enters the room. | |
| 13:46:34 | NoKarma | Heya all |
| 13:51:35 | kschiess | This helps a little - but I am now stuck with oniguruma and the same error message. Will google that. |
| 13:56:15 | kschiess | Past oniguruma (installed the port library) I am now stuck with ltdl. Will stop trying and continue some other time. Thanks for your help |
| 13:56:21 | Arjen_ enters the room. | |
| 14:01:06 | robertpostill leaves the room. | |
| 14:01:28 | kschiess leaves the room. | |
| 14:03:12 | mentz enters the room. | |
| 14:14:02 | Fullmoon leaves the room. | |
| 14:14:50 | srbaker leaves the room. | |
| 14:15:12 | webmat enters the room. | |
| 14:16:02 | hornbeck leaves the room. | |
| 14:16:23 | hornbeck enters the room. | |
| 14:17:55 | imajes enters the room. | |
| 14:23:11 | Fullmoon enters the room. | |
| 14:28:01 | moofbong enters the room. | |
| 14:31:35 | AndrewO enters the room. | |
| 14:35:05 | yaroslav leaves the room. | |
| 14:35:51 | boyscout | 2 commits by Adam Gardiner |
| 14:35:52 | boyscout | * Implement breakpoints on file:line specifications; 3feff35 |
| 14:35:53 | boyscout | * Add CompiledMethod#child_methods, #send_sites, #locate_line; a69ef2c |
| 14:43:43 | marnen enters the room. | |
| 14:45:24 | headius enters the room. | |
| 14:47:23 | rubuildius_amd64 | Adam Gardiner: 3feff35d0; 2097 files, 6765 examples, 23999 expectations, 0 failures, 0 errors; http://rafb.net/p/RtuYPD21.html |
| 14:49:28 | rubuildius_ppc | Adam Gardiner: 3feff35d0; 2097 files, 6767 examples, 24025 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/189276 |
| 14:51:25 | ryantmulligan enters the room. | |
| 14:53:39 | d2dchat leaves the room. | |
| 14:55:02 | smparke1 leaves the room. | |
| 15:04:48 | corundum leaves the room. | |
| 15:05:25 | corundum enters the room. | |
| 15:08:56 | qwert666 enters the room. | |
| 15:09:03 | benburkert enters the room. | |
| 15:12:59 | wmoxam enters the room. | |
| 15:17:16 | benburkert leaves the room. | |
| 15:21:52 | enebo enters the room. | |
| 15:23:31 | lstoll leaves the room. | |
| 15:26:03 | cyndis leaves the room. | |
| 15:29:04 | corundum leaves the room. | |
| 15:30:30 | corundum enters the room. | |
| 15:45:07 | jtoy enters the room. | |
| 15:51:44 | dlee enters the room. | |
| 15:53:28 | smparke1 enters the room. | |
| 15:54:46 | VVSiz | brixen: you there? |
| 15:55:33 | headius | still early on the coast |
| 15:55:47 | VVSiz | yeah :) |
| 15:56:50 | GMFlash leaves the room. | |
| 15:57:22 | agile leaves the room. | |
| 15:57:54 | boyscout | 1 commit by Vladimir Sizikov |
| 15:57:55 | boyscout | * New specs for BigDecimal#modulo and #%.; 8eb9dc1 |
| 15:58:21 | therealadam enters the room. | |
| 15:59:00 | foysavas enters the room. | |
| 15:59:22 | benburkert enters the room. | |
| 16:01:53 | yugui leaves the room. | |
| 16:03:46 | dschn enters the room. | |
| 16:05:48 | benstiglitz enters the room. | |
| 16:07:22 | rubuildius_amd64 | Vladimir Sizikov: 8eb9dc1b0; 2097 files, 6765 examples, 23999 expectations, 0 failures, 0 errors; http://rafb.net/p/JBwZP159.html |
| 16:08:21 | marnen_ enters the room. | |
| 16:12:18 | rubuildius_ppc | Vladimir Sizikov: 8eb9dc1b0; 2097 files, 6767 examples, 24025 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/189327 |
| 16:19:27 | webmat_ enters the room. | |
| 16:22:37 | marnen leaves the room. | |
| 16:26:56 | GMFlash enters the room. | |
| 16:31:17 | trythil enters the room. | |
| 16:33:33 | anteaya enters the room. | |
| 16:34:14 | vertiginous enters the room. | |
| 16:34:56 | webmat leaves the room. | |
| 16:38:07 | mentz leaves the room. | |
| 16:42:35 | jtoy leaves the room. | |
| 16:46:17 | enebo leaves the |