Show enters and exits. Hide enters and exits.
| 00:00:17 | rue | agardiner: Congrats on the move! You looking to be inside the M? |
| 00:00:30 | agardiner | yeah, in paddington |
| 00:00:36 | buddha_ leaves the room. | |
| 00:00:49 | agardiner | between paddington stn and edgware rd |
| 00:01:03 | agardiner | oh, and thanks! :-) |
| 00:01:19 | rue | Damned expensive, London. Otherwise a lot of fun |
| 00:01:40 | agardiner | yeah, you got that right (the expensive bit) |
| 00:01:52 | agardiner | well, both bits really! :-D |
| 00:03:48 | zimbatm_ leaves the room. | |
| 00:05:30 | benburkert_ enters the room. | |
| 00:06:48 | rby_ leaves the room. | |
| 00:11:19 | Arjen_ leaves the room. | |
| 00:13:54 | mernen enters the room. | |
| 00:15:06 | trythil leaves the room. | |
| 00:16:21 | headius leaves the room. | |
| 00:19:28 | wycats enters the room. | |
| 00:19:55 | trythil enters the room. | |
| 00:20:54 | wycats_ enters the room. | |
| 00:21:12 | benburkert leaves the room. | |
| 00:21:28 | qwert666_ leaves the room. | |
| 00:22:25 | wycats leaves the room. | |
| 00:23:51 | joachimm leaves the room. | |
| 00:26:00 | boyscout | 8 commits by Ryan Davis |
| 00:26:01 | boyscout | * Added quickstart to readme; 54a407f |
| 00:26:02 | boyscout | * Added; 3c6e878 |
| 00:26:03 | boyscout | * '?\ ' is horrid. use ?\s; 7e0cba7 |
| 00:26:04 | boyscout | * trailing whitespace drives me nuts; ac21a76 |
| 00:26:05 | boyscout | * simple refactorings; dddbf70 |
| 00:26:06 | boyscout | ... |
| 00:27:02 | brixen | zenspider: when vlad prompts me for a password, is there an easy way to get it to tell me what it's trying to access? |
| 00:28:57 | benburkert_ leaves the room. | |
| 00:29:04 | zenspider | it only prompts for sudo |
| 00:29:36 | brixen | hrm, wth is it not taking the pw then |
| 00:32:14 | zenspider | no clue |
| 00:32:25 | evan | zenspider: it wont prompt for an ssh password? |
| 00:32:40 | zenspider | I had some problems when ttys were still connected ... but that was blocking errors |
| 00:33:07 | zenspider | evan: vlad assumes you're using ssh-agent or something similar |
| 00:33:10 | drbrain | vlad doesn't prompt for ssh key passwords, use keys or ssh-agent |
| 00:33:14 | zenspider | brixen: is it full on hanging? |
| 00:35:09 | brixen | zenspider: it prompts for pw but will not take it |
| 00:35:52 | brixen | zenspider: the first time it prompts, it accepts the pw, inits the scm/repo, then prompts again |
| 00:36:28 | brixen | 2nd time - 5th time, it does not accept the pw, so I think it's trying to access something else |
| 00:37:26 | rubuildius_amd64 | Ryan Davis: 54a407f96; 2097 files, 6777 examples, 24248 expectations, 0 failures, 0 errors; http://rafb.net/p/MCvAhw71.html |
| 00:38:11 | zenspider | brixen: custom recipes? or straight up vlad? |
| 00:39:06 | brixen | zenspider: http://pastie.org/190226 |
| 00:39:37 | AndrewO enters the room. | |
| 00:39:43 | brixen | zenspider: interestingly: http://pastie.org/190228 |
| 00:40:04 | enebo leaves the room. | |
| 00:40:18 | rubuildius_ppc | Ryan Davis: 54a407f96; 2097 files, 6779 examples, 24274 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/190229 |
| 00:40:37 | AndrewO leaves the room. | |
| 00:42:11 | drbrain | brixen: what's that password prompt on line 23? |
| 00:42:30 | evan | it's pretty clearly asking for an ssh password |
| 00:42:45 | trythil leaves the room. | |
| 00:42:46 | brixen | drbrain: on line 23 I gave it the same pw as on line 11-16 |
| 00:42:59 | drbrain | brixen: for ssh? |
| 00:43:05 | brixen | yeah |
| 00:43:06 | drbrain | you need to set up your ssh key |
| 00:43:26 | brixen | so, why does it accept the pw on line 8? |
| 00:43:31 | brixen | I must have a key? |
| 00:44:04 | drbrain | it might be the sudo password prompt detector triggering |
| 00:44:07 | drbrain | must |
| 00:45:18 | zenspider | yeah. this is almost all ssh problems... if you can't do ssh rubyspec ls w/o password, something is configured wrong |
| 00:45:28 | zenspider | btw, your domain value is JUST rubyspec... is that right? |
| 00:45:39 | brixen | rubyspec is in ssh/config |
| 00:45:43 | KirinDav leaves the room. | |
| 00:45:45 | brixen | didn't realize I had to have ssh key setup |
| 00:46:19 | brixen | thanks guys |
| 00:46:44 | therealadam leaves the room. | |
| 00:46:50 | drbrain | ssh keys are Good for the Soul |
| 00:47:46 | KirinDav enters the room. | |
| 00:47:52 | zenspider | brixen: doco patches gladly accepted. ;) |
| 00:48:05 | brixen | if they're good for my *immortal* soul, I guess I'll comply |
| 00:48:18 | brixen | zenspider: it's just been so long since I've deployed with vlad |
| 00:48:23 | brixen | don't do much rails lately :) |
| 00:48:32 | drbrain | think of all that time saved typing your password! |
| 00:48:42 | ezmobius enters the room. | |
| 00:49:50 | ShayArnett enters the room. | |
| 00:51:20 | OccamRazor leaves the room. | |
| 00:51:48 | evan | life is too short to type your password more than once every 6 months |
| 00:52:00 | brixen | heh |
| 00:52:09 | brixen | ahh, the sweet swoosh of deploy |
| 00:52:25 | brixen | I have keys almost everywhere, but it's not the first thing I set up |
| 00:52:39 | brixen | sometimes I *like* to type my pw |
| 00:52:46 | brixen | makes me feel important |
| 00:52:54 | brixen | (not really, that's total bs :) |
| 00:53:02 | evan | like you're arming a nuclear missile |
| 00:53:07 | brixen | heh |
| 00:53:10 | evan | "Your passcode Mr. President." |
| 00:53:24 | evan | <boop> <boop> <boop> Goodbye Haiti! |
| 00:53:40 | olabini enters the room. | |
| 00:53:41 | evan | nothing against Haiti, first country that came to mind. |
| 00:53:48 | brixen | I was going to say... |
| 00:57:17 | drbrain | its small enough that a nuke could obliterate it, too |
| 00:57:38 | evan | wouldn't be good for Florida though. |
| 01:00:31 | eventualbuddha leaves the room. | |
| 01:00:50 | headius enters the room. | |
| 01:01:44 | yugui enters the room. | |
| 01:04:14 | wvdschel leaves the room. | |
| 01:06:44 | ShayArnett leaves the room. | |
| 01:11:45 | benburkert enters the room. | |
| 01:17:43 | benny leaves the room. | |
| 01:18:55 | ShayArnett enters the room. | |
| 01:40:28 | benstiglitz leaves the room. | |
| 01:46:17 | mkescher_ enters the room. | |
| 01:52:51 | hornbeck leaves the room. | |
| 01:53:11 | radarek leaves the room. | |
| 01:54:02 | trythil enters the room. | |
| 01:59:11 | KirinDav leaves the room. | |
| 02:02:41 | fbuilesv enters the room. | |
| 02:12:20 | kw enters the room. | |
| 02:18:07 | rue | `bin/mspec ci -j` is very nice. I have to be mindful of the times though |
| 02:20:22 | boyscout | 1 commit by Eero Saynatkari |
| 02:20:23 | boyscout | * Improved a spec description for String#index.; b700239 |
| 02:22:26 | mkescher_ leaves the room. | |
| 02:25:47 | lopex leaves the room. | |
| 02:32:24 | rubuildius_amd64 | Eero Saynatkari: b70023978; 2097 files, 6778 examples, 24248 expectations, 0 failures, 0 errors; http://rafb.net/p/m7iarT60.html |
| 02:34:21 | rubuildius_ppc | Eero Saynatkari: b70023978; 2097 files, 6780 examples, 24274 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/190287 |
| 02:42:19 | agile enters the room. | |
| 02:42:41 | yugui leaves the room. | |
| 02:45:44 | VVSiz_ enters the room. | |
| 02:46:03 | dschn leaves the room. | |
| 02:52:59 | yugui enters the room. | |
| 02:56:53 | dlee leaves the room. | |
| 03:04:07 | VVSiz leaves the room. | |
| 03:06:50 | MenTaLguY enters the room. | |
| 03:10:00 | Fullmoon enters the room. | |
| 03:11:40 | kw leaves the room. | |
| 03:15:03 | AndrewO enters the room. | |
| 03:17:07 | ezmobius leaves the room. | |
| 03:24:25 | yugui leaves the room. | |
| 03:24:25 | benburkert leaves the room. | |
| 03:24:33 | yugui enters the room. | |
| 03:30:56 | Fullmoon leaves the room. | |
| 03:41:00 | Fullmoon enters the room. | |
| 03:55:56 | antares enters the room. | |
| 03:55:56 | bitbang_ leaves the room. | |
| 04:09:12 | fbuilesv leaves the room. | |
| 04:10:31 | AndrewO leaves the room. | |
| 04:10:32 | trythil leaves the room. | |
| 04:10:45 | trythil enters the room. | |
| 04:16:51 | anteaya leaves the room. | |
| 04:19:08 | boyscout | 1 commit by Adam Gardiner |
| 04:19:09 | boyscout | * Add support for conditional breakpoints; 7b54945 |
| 04:19:31 | hornbeck enters the room. | |
| 04:27:25 | rubuildius_amd64 | Adam Gardiner: 7b54945cb; 2097 files, 6778 examples, 24248 expectations, 0 failures, 0 errors; http://rafb.net/p/g5Oxow49.html |
| 04:29:20 | imajes enters the room. | |
| 04:33:46 | rubuildius_ppc | Adam Gardiner: 7b54945cb; 2097 files, 6780 examples, 24274 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/190316 |
| 04:53:26 | headius leaves the room. | |
| 04:53:52 | be9 enters the room. | |
| 04:58:27 | KirinDave enters the room. | |
| 05:02:40 | mernen leaves the room. | |
| 05:10:10 | lstoll enters the room. | |
| 05:14:12 | ezmobius enters the room. | |
| 05:17:45 | imajes leaves the room. | |
| 05:22:32 | nicksieger leaves the room. | |
| 05:22:58 | hornbeck leaves the room. | |
| 05:26:47 | rue | Haha, awesome |
| 05:26:55 | Defiler | What is? |
| 05:26:57 | rue | "The End Justifies the Memes" |
| 05:27:26 | Defiler | boom tisk |
| 05:33:54 | headius enters the room. | |
| 05:35:28 | kw enters the room. | |
| 05:40:05 | blakewatters enters the room. | |
| 05:40:24 | GMFlash leaves the room. | |
| 05:44:13 | knowtheory enters the room. | |
| 05:44:29 | nicksieger leaves the room. | |
| 05:52:45 | ryantmulligan leaves the room. | |
| 05:55:41 | yaroslav enters the room. | |
| 05:59:55 | headius leaves the room. | |
| 06:00:29 | headius enters the room. | |
| 06:07:44 | Defiler | There are so many gems I've never heard of now |
| 06:07:45 | Defiler | wild |
| 06:10:47 | ezmobius leaves the room. | |
| 06:11:27 | trythil leaves the room. | |
| 06:11:44 | trythil enters the room. | |
| 06:16:12 | crafterm enters the room. | |
| 06:17:01 | hornbeck enters the room. | |
| 06:19:50 | dctanner enters the room. | |
| 06:20:41 | shanghaililly enters the room. | |
| 06:23:50 | shanghaililly leaves the room. | |
| 06:24:58 | yugui leaves the room. | |
| 06:30:15 | lstoll_ enters the room. | |
| 06:30:55 | lstoll leaves the room. | |
| 06:37:02 | agardiner enters the room. | |
| 06:37:23 | lstoll_ leaves the room. | |
| 06:37:29 | dctanner leaves the room. | |
| 06:37:59 | lstoll enters the room. | |
| 06:38:01 | agardiner leaves the room. | |
| 06:39:48 | KirinDave leaves the room. | |
| 06:40:52 | rue | Man, they fix the weirdest things in MatzRuby |
| 06:40:57 | rue | "Step may be bignum" |
| 06:41:40 | dysinger | has anyone started on the net/ specs ? |
| 06:41:45 | dysinger | I don't see any |
| 06:43:00 | KirinDave enters the room. | |
| 06:47:02 | evan | dysinger: thanks again for the kind words about my presentation |
| 06:47:10 | dysinger | np :) |
| 06:47:20 | evan | i really do hope that it starts to seep in for people |
| 06:47:21 | dysinger | It was inspiring |
| 06:47:26 | dysinger | and I feel the same way |
| 06:47:34 | evan | that their life and their projects life is better when they let go |
| 06:47:47 | dysinger | I have been getting older and leading teams for a long time. I am trying to get it down to a science. |
| 06:47:58 | dysinger | and "enable" people |
| 06:48:34 | dysinger | When I was younger I used to fall into that Ego trap of "I am my code" "don't talk bad about my code" |
| 06:48:37 | rue | Oh cool |
| 06:48:45 | rue | I may have won $25 million |
| 06:48:47 | dysinger | I still struggle with it - everyone does |
| 06:48:51 | dysinger | WTF |
| 06:48:58 | rue | I just need to send them my bank account number.. |
| 06:49:03 | dysinger | haha |
| 06:49:50 | dysinger | So this spec is going to be gnarly and I imagine that's why nobody has tackled it yet - but we have a need on my project for net/imap.rb specs. |
| 06:50:30 | rue | Yeah, net/ will be pretty nasty. I really think we should consider just rewriting the *library* but it is not exactly high priority |
| 06:50:40 | dysinger | anyone started that yet ? I didn't see it - but I am noob to actually trying to contribute. I have been git-following the project since Aug last year or so. |
| 06:51:17 | rue | If we had any, it would be in spec/ruby/1.8/library/net.. and looks like no |
| 06:53:24 | tarcieri | rue: heh, sounds like fun :) |
| 06:53:42 | rue | dysinger: Having a single section to start from will help, though. Have you worked with BDD/RSpec and such otherwise? |
| 06:55:59 | wycats leaves the room. | |
| 06:56:08 | KirinDave leaves the room. | |
| 06:58:27 | benny enters the room. | |
| 07:08:56 | dysinger | sorry I was out |
| 07:09:10 | dysinger | Yes I am a BDD fiend and have been doing rspec for a year. |
| 07:09:49 | KirinDave enters the room. | |
| 07:09:53 | dysinger | rue so I have never attacked something so complex as networking so I may FLAIL! |
| 07:10:17 | dysinger | but I was thinking of just mocking everything on the outside of net/imap.rb |
| 07:10:31 | dysinger | connecting to a server and seeing what complains |
| 07:10:39 | dysinger | stubing and should_receiving as I go |
| 07:11:12 | dysinger | It would be a big task though I imagine. |
| 07:12:14 | rue | dysinger: Yeah, definitely the best way for as much as you can |
| 07:15:30 | dysinger | Man the rubinius specs take three times as long to run as one of my fat rails projects. Heh.... :) |
| 07:15:35 | dysinger | I thought I had it bad :) |
| 07:16:37 | dysinger | I need a new 8-core mac pro w/ 32GB RAM. I have been salivating over those. hey! Excuse to buy one :) |
| 07:17:21 | dysinger | If only Ruby had native threads and autotest / rspec could use them. |
| 07:18:29 | dbussink | we have the -j option now for mspec |
| 07:18:52 | dbussink | runs stuff in parallel |
| 07:19:34 | dysinger | sweet |
| 07:19:53 | dysinger | like -j2 or -j4 etc ? |
| 07:20:23 | wycats enters the room. | |
| 07:23:58 | rue | I think just -j.. never tried anything else :) |
| 07:24:13 | rue | Morning, dbussink ;) |
| 07:24:33 | rue | You all packed up yet? |
| 07:24:41 | dbussink | packed up? |
| 07:25:00 | rue | Yeah, only a month to go! |
| 07:25:57 | dysinger | lol the whole internets is filled with "twitter dosn't ruby & rails. Ruby sucks. Rails sucks. I told you so" today |
| 07:25:57 | dbussink | i'm not a woman :P |
| 07:26:28 | dysinger | twitter (doesn't like) |
| 07:28:53 | crafterm leaves the room. | |
| 07:29:12 | rue | What is Twitter again? |
| 07:30:20 | dbussink | hehe |
| 07:34:02 | rue | I am experimenting in literate programming. |
| 07:34:08 | tarcieri | rue: Slow motion IRC |
| 07:35:11 | rue | char buffer[SocketType::HOW_MANY_BYTES_I_SHOULD_SEND_ONCE]; |
| 07:35:24 | tarcieri | heh |
| 07:35:54 | tarcieri | an order of magnitude above the MTU is good :) |
| 07:36:44 | rue | Apache uses 8kiB everywhere for whatever reason |
| 07:38:14 | tarcieri | sounds good |
| 07:38:15 | tarcieri | heh |
| 07:38:40 | evan | std::string this_one_time_I_told_this_story; |
| 07:41:30 | Arjen_ enters the room. | |
| 07:42:02 | rue | Something like that :P |
| 07:44:10 | chris2 enters the room. | |
| 07:47:56 | dbussink | one time at band camp |
| 07:49:27 | headius_ enters the room. | |
| 07:50:35 | headius leaves the room. | |
| 07:55:59 | GMFlash enters the room. | |
| 07:57:45 | KirinDave leaves the room. | |
| 08:03:34 | mkrauskopf enters the room. | |
| 08:06:13 | chris2 leaves the room. | |
| 08:06:13 | ixx leaves the room. | |
| 08:08:56 | dysinger leaves the room. | |
| 08:18:00 | chris2 enters the room. | |
| 08:18:00 | ixx enters the room. | |
| 08:19:12 | rue | Morning |
| 08:27:50 | Maledictus enters the room. | |
| 08:27:56 | joachimm enters the room. | |
| 08:29:19 | octopod enters the room. | |
| 08:29:51 | danlucraft enters the room. | |
| 08:40:52 | dbussink | rue: VVSiz only says morning in #jruby ;) |
| 08:40:55 | yaroslav leaves the room. | |
| 08:41:04 | trythil leaves the room. | |
| 08:41:05 | VVSiz | heheh :) |
| 08:42:21 | dctanner enters the room. | |
| 08:42:41 | dctanner leaves the room. | |
| 08:43:06 | brainopia enters the room. | |
| 08:46:25 | dbussink | VVSiz: nickname hinting is always fun :) |
| 08:46:56 | VVSiz | :) |
| 08:48:03 | VVSiz | heh, new specs comitted, new failures on JRuby. the story of my life (lately) ;) |
| 08:48:42 | qwert666 enters the room. | |
| 08:51:16 | lstoll leaves the room. | |
| 09:01:09 | dbussink | well, keeps you busy so to speak |
| 09:01:12 | dbussink | what's failing? |
| 09:02:03 | mutle enters the room. | |
| 09:14:38 | VVSiz | dbussink: some recent File stuff. most probably, easy to correct on JRuby side |
| 09:15:00 | VVSiz | heh, nice commit message: "Added" ! :) |
| 09:15:16 | VVSiz | and nice path in senders.rb: File.expand_path("~/Work/p4/zss/src/ParseTree/dev/lib") |
| 09:15:45 | dbussink | hehe |
| 09:16:47 | VVSiz | that's 3c6e8789ab39fa2d1735c4dd5476aae50463cbc8 by zenspider(?) |
| 09:20:30 | kschiess enters the room. | |
| 09:20:45 | dbussink | zenspider yeah |
| 09:21:12 | TheVoice leaves the room. | |
| 09:23:55 | zimbatm enters the room. | |
| 09:26:15 | kw leaves the room. | |
| 09:42:07 | thehcdreamer enters the room. | |
| 09:50:52 | benny leaves the room. | |
| 09:51:16 | benny enters the room. | |
| 09:59:23 | _mutle enters the room. | |
| 10:00:32 | headius_ enters the room. | |
| 10:09:26 | chris2 | you guys went c++? |
| 10:10:01 | headius leaves the room. | |
| 10:10:19 | rue | Yep |
| 10:11:18 | mutle leaves the room. | |
| 10:13:00 | rue | Apache2 bucket brigades are the stupidest, most ass-backward implementation in the field of http servers |
| 10:15:51 | rue | Why I invariably start these fabulous conversion projects at 3am I dunno. |
| 10:17:01 | eule | Better than 4 am (http://www.ted.com/index.php/talks/view/id/148) |
| 10:19:04 | rue | I dunno, I think the stars may have aligned better at 4 |
| 10:34:16 | Spakman | I'm trying to install rubinius on 64bit Fedora. When I rake install I'm told that glibtool cannot be found. What is glibtool? Seems to be an Apple tool. |
| 10:39:57 | wycats_afk enters the room. | |
| 10:40:04 | wycats leaves the room. | |
| 10:40:46 | dbussink | Spakman: it's part from glib, pretty stardard stuff |
| 10:40:49 | dbussink | not apple specific |
| 10:41:16 | dbussink | i have rubinius running in a fedora system, so it should work |
| 10:41:24 | dbussink | make sure you have all the dependencies though |
| 10:42:38 | dbussink | on fedora you need libtool btw |
| 10:42:42 | dbussink | not glibtool |
| 10:43:28 | eule leaves the room. | |
| 10:50:52 | aasmith leaves the room. | |
| 10:51:05 | aasmith enters the room. | |
| 10:59:55 | rue | Well, specifically, it IS GNU Libtool |
| 11:04:38 | zenspider leaves the room. | |
| 11:13:46 | flori leaves the room. | |
| 11:13:52 | flori enters the room. | |
| 11:19:14 | yugui enters the room. | |
| 11:20:29 | GMFlash leaves the room. | |
| 11:40:30 | anteaya enters the room. | |
| 11:43:38 | headius_ leaves the room. | |
| 12:05:06 | wmoxam enters the room. | |
| 12:13:49 | antares enters the room. | |
| 12:16:33 | saywatmang enters the room. | |
| 12:17:02 | saywatmang | wats rubinius' policy on adding new features to the language that wont break 1.8 compat ? |
| 12:17:49 | Maledictus | I don't know, just curious what that would be? |
| 12:18:44 | saywatmang | like say.. rescue/ensure available in all blocks |
| 12:19:00 | saywatmang | w/o begin/end needed |
| 12:19:17 | Maledictus | ah |
| 12:19:36 | saywatmang | or... being able to rescue specific exceptions inline |
| 12:19:49 | saywatmang | blah rescue(BlahError) p :blah_error_caught! |
| 12:20:02 | saywatmang | stuff like that... |
| 12:20:07 | Maledictus | I must say I'm not a big fan of such incompatibilities, but if Matz would implement that it could be cool |
| 12:20:22 | saywatmang | waht do u mena incompats? |
| 12:20:44 | saywatmang | oh you just mean adding stuff that 1.8 doenst have? |
| 12:20:54 | Maledictus | if rubinius had this feature and someone uses it, one would not be able to run it on mri or jruby |
| 12:20:56 | Maledictus | yes |
| 12:21:00 | saywatmang | right right |
| 12:21:02 | saywatmang | i agree... |
| 12:21:09 | saywatmang | so i must convince matz then.. ok :P |
| 12:21:19 | Maledictus | hehe, would be the best |
| 12:21:30 | saywatmang leaves the room. | |
| 12:26:14 | chris2 | rubinius commits around the clock! http://rubyurl.com/1K9O |
| 12:26:41 | Maledictus | heh, cool |
| 12:27:06 | Maledictus | an now by country ;9 |
| 12:27:10 | chris2 | heh |
| 12:27:18 | chris2 | that's the script, http://pastie.caboo.se/190425 |
| 12:28:20 | Maledictus | nice |
| 12:29:10 | chris2 | google charts is pretty nasty :P |
| 12:29:28 | Maledictus | never worked with it. But looks nice imo |
| 12:29:48 | chris2 | yeah, but you need to get the format exactly right |
| 12:31:43 | Maledictus | Oh, that's positive I think. I don't like the "be gentle with input and strict with output" theme. I would be always strict |
| 12:32:16 | chris2 | but then show a fricking error message and not just a white png :P |
| 12:32:29 | Maledictus | yeah, sure :) |
| 12:32:34 | Maledictus | lol. |
| 12:33:06 | yugui leaves the room. | |
| 12:33:35 | Maledictus | Is there any documentation for --pretty in git? |
| 12:33:42 | chris2 | man git-log |
| 12:33:48 | Maledictus | man git-log doesn't really help |
| 12:34:06 | Maledictus | only says there is medium, full, etc |
| 12:34:32 | chris2 | uh |
| 12:34:37 | chris2 | either your git is really old |
| 12:34:37 | Maledictus | ah, got it |
| 12:34:40 | chris2 | http://linux.die.net/man/1/git-log |
| 12:34:41 | Maledictus | you're right |
| 12:34:50 | Maledictus | it has it's own section |
| 12:34:53 | chris2 | or your search skills suck :-) |
| 12:34:57 | Maledictus | :P |
| 12:36:40 | anteaya leaves the room. | |
| 12:40:26 | yugui enters the room. | |
| 12:43:29 | ctennis leaves the room. | |
| 12:43:40 | brainopia leaves the room. | |
| 12:48:22 | webmat enters the room. | |
| 12:56:31 | naeu enters the room. | |
| 12:57:00 | naeu leaves the room. | |
| 12:57:14 | naeu enters the room. | |
| 12:57:35 | ctennis enters the room. | |
| 12:59:10 | wdperson enters the room. | |
| 13:13:31 | manveru | Defiler: any updates for me? ^^; |
| 13:16:26 | ryantmulligan enters the room. | |
| 13:32:01 | dctanner enters the room. | |
| 13:42:38 | robertpostill enters the room. | |
| 13:45:08 | radarek enters the room. | |
| 13:46:46 | zimbatm leaves the room. | |
| 14:05:40 | boyscout | 1 commit by Vladimir Sizikov |
| 14:05:41 | robertpostill leaves the room. | |
| 14:05:41 | boyscout | * More tests for BigDecimal#floor.; 3cf6c1e |
| 14:08:20 | webmat | I have an awesome patch to submit |
| 14:08:40 | AndrewO enters the room. | |
| 14:09:30 | webmat | It allows you to turn off the awesome_backtrace colorizing off with 'No' and 'nO' in addition to the currently supported 'no' and 'NO' ;-) |
| 14:09:36 | webmat | http://pastie.caboo.se/190461 |
| 14:10:30 | webmat | I'm not sure whether Evan thought of code patches THAT small for first time contributors. Hehe |
| 14:10:34 | danlucraft | well rubinius is ready for the enterprise then |
| 14:10:57 | webmat | yep |
| 14:11:09 | webmat | much more stable now, too ;-) |
| 14:11:09 | danlucraft | it could be smaller. You could correct spelling in a comment or something. |
| 14:11:25 | webmat | or remove a space at the end of a comment line |
| 14:11:53 | webmat | I can't think of anything more insignificant than that |
| 14:11:55 | danlucraft | hmm. you win. |
| 14:11:58 | webmat | lol |
| 14:15:41 | joachimm leaves the room. | |
| 14:16:40 | benny leaves the room. | |
| 14:17:23 | rubuildius_amd64 | Vladimir Sizikov: 3cf6c1e03; 2097 files, 6778 examples, 24248 expectations, 0 failures, 0 errors; http://rafb.net/p/3fUK9w31.html |
| 14:19:09 | rubuildius_ppc | Vladimir Sizikov: 3cf6c1e03; 2097 files, 6780 examples, 24274 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/190462 |
| 14:19:32 | probablycorey enters the room. | |
| 14:24:11 | moofbong enters the room. | |
| 14:27:09 | VVSiz | damn you, BigDecimal! |
| 14:43:30 | GMFlash enters the room. | |
| 14:43:40 | zimbatm enters the room. | |
| 14:45:59 | srbaker enters the room. | |
| 14:46:03 | brainopia enters the room. | |
| 14:46:32 | KirinDave enters the room. | |
| 14:50:48 | wmoxam leaves the room. | |
| 14:59:34 | chammiya enters the room. | |
| 14:59:38 | chammiya leaves the room. | |
| 15:00:00 | wmoxam enters the room. | |
| 15:06:31 | joachimm enters the room. | |
| 15:12:29 | agile leaves the room. | |
| 15:13:39 | dambalah leaves the room. | |
| 15:21:09 | _sk enters the room. | |
| 15:33:24 | imajes enters the room. | |
| 15:34:35 | dctanner leaves the room. | |
| 15:34:50 | dctanner enters the room. | |
| 15:37:14 | imajes leaves the room. | |
| 15:37:39 | imajes enters the room. | |
| 15:37:48 | headius enters the room. | |
| 15:39:19 | ryantmulligan leaves the room. | |
| 15:40:28 | ryantmulligan enters the room. | |
| 15:41:23 | OccamRazor enters the room. | |
| 15:44:56 | therealadam enters the room. | |
| 15:45:26 | boyscout | 1 commit by Vladimir Sizikov |
| 15:45:27 | boyscout | * A couple of test cases for BigDecimal's #quo, #div, #/.; b9806e0 |
| 15:48:52 | headius_ enters the room. | |
| 15:51:33 | ttmrichter leaves the room. | |
| 15:55:20 | trythil enters the room. | |
| 15:55:34 | headius leaves the room. | |
| 15:57:00 | joachimm leaves the room. | |
| 15:57:24 | rubuildius_amd64 | Vladimir Sizikov: b9806e0ef; 2097 files, 6778 examples, 24248 expectations, 0 failures, 0 errors; http://rafb.net/p/Rm9DKs76.html |
| 15:59:04 | rubuildius_ppc | Vladimir Sizikov: b9806e0ef; 2097 files, 6780 examples, 24274 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/190509 |
| 16:05:14 | joachimm enters the room. | |
| 16:05:38 | dc_ leaves the room. | |
| 16:10:03 | benstiglitz enters the room. | |
| 16:14:51 | antares_ enters the room. | |
| 16:19:21 | pauldix enters the room. | |
| 16:19:35 | enebo enters the room. | |
| 16:19:47 | _sk leaves the room. | |
| 16:31:12 | srbaker leaves the room. | |
| 16:32:42 | srbaker enters the room. | |
| 16:34:33 | srbaker leaves the room. | |
| 16:37:16 | joachimm leaves the room. | |
| 16:38:35 | antares_ leaves the room. | |
| 16:45:27 | yaroslav enters the room. | |
| 16:51:08 | srbaker enters the room. | |
| 16:52:16 | srbaker leaves the room. | |
| 16:53:14 | blakewatters leaves the room. | |
| 16:58:18 | agile enters the room. | |
| 16:59:18 | benny enters the room. | |
| 17:02:23 | enebo leaves the room. | |
| 17:05:05 | marnen enters the room. | |
| 17:05:32 | nicksieger enters the room. | |
| 17:12:56 | pauldix leaves the room. | |
| 17:26:16 | naeu leaves the room. | |
| 17:28:00 | fbuilesv enters the room. | |
| 17:29:39 | radarek leaves the room. | |
| 17:32:12 | yipstar enters the room. | |
| 17:32:36 | enebo enters the room. | |
| 17:33:55 | headius_ leaves the room. | |
| 17:34:08 | headius enters the room. | |
| 17:44:29 | kw enters the room. | |
| 17:44:36 | binary42 leaves the room. | |
| 17:49:14 | boyscout | 1 commit by Vladimir Sizikov |
| 17:49:15 | boyscout | * New BigDecimal#divmod specs.; 854a011 |
| 17:49:25 | TheProkrammer | http://twitter.com/ev/statuses/801530348 |
| 17:49:31 | thehcdreamer leaves the room. | |
| 17:49:32 | TheProkrammer | Since it was brought up yesterday here. |
| 17:49:53 | evan | yep. |
| 17:50:03 | evan | Arrington is still sticking to his story |
| 17:50:06 | evan | because he's a douche. |
| 17:50:09 | VVSiz | well, it's on Slashdot now, so it official! |
| 17:50:37 | TheProkrammer | The story is that they abandoned RoR for their /backend/ MONTHS ago... yay. :) |
| 17:50:57 | evan | yeah |
| 17:50:59 | evan | long ago. |
| 17:51:02 | TheProkrammer | It's so sad that I barely ever ever read slashdot any more. |
| 17:51:08 | evan | the backend hasn't been rails maybe ever. |
| 17:52:03 | VVSiz | one thing for sure though, Twitter's performance is not that great |
| 17:52:18 | evan | growing pains. |
| 17:52:22 | evan | plus, it's twitter. |
| 17:52:46 | evan | as tbray pointed out, people seem to think of twitters uptime like it were a missile defense system |
| 17:53:20 | yaroslav leaves the room. | |
| 17:55:42 | blakewatters enters the room. | |
| 17:57:19 | evan | so, i think i've come up with a nice way to eliminate ivar_as_index |
| 17:57:21 | rubuildius_amd64 | Vladimir Sizikov: 854a01132; 2097 files, 6778 examples, 24248 expectations, 0 failures, 0 errors; http://rafb.net/p/J44leE19.html |
| 17:57:24 | evan | and keep everything nice and simple |
| 17:58:28 | brixen | ohh, do tell :) |
| 17:59:26 | evan | it's based on what dgtized and I were discussing the other day |
| 17:59:50 | evan | basically, don't even expose that, say, name is a slot in CompiledMethod |
| 18:00:09 | evan | just let the VM have a per class registery that maps ivars to slots. |
| 18:00:22 | evan | let methods be generated as normal |
| 18:00:41 | evan | ie, compile a method for CompiledMethod that uses @name into using, say, get_ivar @name |
| 18:01:12 | evan | but when the method is attached, quickly go through and mutate all ivar accesses to ivars which are slots into instructions which access the slots directly |
| 18:02:15 | evan | a simple version can easily handle our existing usage of slots |
| 18:02:40 | evan | and it can easily be extended in the future to dynamicly assign ivars to slots |
| 18:03:55 | rubuildius_ppc | Vladimir Sizikov: 854a01132; 2097 files, 6780 examples, 24274 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/190584 |
| 18:04:17 | mutle leaves the room. | |
| 18:04:22 | brixen | hmm |
| 18:04:29 | evan | basicly, dipping our toe into the runtime optimization pool |
| 18:04:35 | brixen | right |
| 18:05:19 | brixen | how do we specify which are slots in this "quickly go through and mutate..." ^^^ |
| 18:05:34 | evan | at first, hard code it. |
| 18:05:37 | evan | when the VM boots itself |
| 18:05:46 | evan | make a LookupTable that sits in each class |
| 18:05:49 | brixen | oh, so something like hints is still necessary? |
| 18:05:50 | evan | that provides a @name => 1 |
| 18:05:53 | brixen | ok |
| 18:05:57 | evan | it's runtime hints though |
| 18:06:00 | evan | rather than compile time. |
| 18:06:04 | brixen | gotcha |
| 18:06:11 | evan | which makes it much much more powerful |
| 18:06:16 | evan | yet, still pretty simple |
| 18:06:23 | brixen | yeah |
| 18:06:45 | evan | this is fairly easy because the get_ivar and push_my_field instructions both take one operand |
| 18:06:56 | evan | so they can be directly swapped in and out in the instruction stream |
| 18:07:01 | brixen | nice |
| 18:07:29 | evan | plus, since i've starting to push more things deeper, into the VMMmethod object in the VM |
| 18:07:42 | evan | the CompiledMethods first class InstructionSequence object remains unchanged |
| 18:08:04 | evan | we're just manipulating the 'compiled' version thats stored in VMMethod |
| 18:08:17 | brixen | oh, that's slick |
| 18:08:37 | evan | the other tricky thing i've been considering is this: |
| 18:09:04 | evan | for increased type safety, bulitins declare their slots of a certain type |
| 18:09:15 | evan | for example, CompiledMethod has name declared as |
| 18:09:17 | evan | SYMBOL name |
| 18:09:26 | evan | thus it only expects to find a SYMBOL there |
| 18:09:28 | evan | no ducktyping |
| 18:09:37 | evan | because you can't ducktype in the VM |
| 18:09:52 | binary42 enters the room. | |
| 18:10:00 | evan | I've got 2 options to remain type safe: |
| 18:10:31 | evan | 1) change stuff like name back to OBJECT, and access it only through an accessor function, which performs a cast |
| 18:10:37 | evan | OBJECT name_obj; |
| 18:10:49 | evan | SYMBOL name() { as<Symbol>(name_obj); } |
| 18:11:03 | evan | as<> raises an exception if the value isn't what it exepcts |
| 18:11:11 | evan | which would be translated back into ruby |
| 18:11:18 | evan | so thats option 1 |
| 18:11:21 | evan | option 2: |
| 18:11:34 | evan | when allowing slots to be set directly from ruby |
| 18:11:39 | evan | ie, the set_my_field instruction |
| 18:11:49 | evan | it doesn't set the slot directly in memory |
| 18:12:11 | evan | it dispatches it through a little C++ code, which would perform a type check on name |
| 18:12:19 | evan | er. a type check on the in coming value |
| 18:12:24 | evan | before assigning it to the name slot |
| 18:12:33 | evan | again, raising an exception if things aren't as they seem |
| 18:12:48 | brixen | that's primarily for VM stability, right? |
| 18:13:00 | evan | yeah |
| 18:13:07 | brixen | how expensive is that? estimate? |
| 18:13:16 | KirinDave leaves the room. | |
| 18:13:25 | evan | one thing that contributed to shotgun instability is that slots would be assumed to be of a certain form |
| 18:13:32 | evan | but never checked that they actually were |
| 18:13:38 | brixen | right |
| 18:13:50 | evan | and we'd get crashes because it would try and treat a symbol like an array |
| 18:14:03 | brixen | it seems like option 2 could be faster |
| 18:14:05 | naeu enters the room. | |
| 18:14:08 | evan | option 2? well. |
| 18:14:22 | marnen | VVSiz: stop with the new specs -- that means I have to actually implement them! :D |
| 18:14:29 | evan | it's considerably more expensive then just setting it |
| 18:14:33 | VVSiz | marnen: hehehe :) |
| 18:14:34 | evan | but on the other hand, it's only on assignment |
| 18:14:37 | brixen | marnen: heh |
| 18:14:38 | evan | which is more rare than access |
| 18:14:48 | evan | option 1 slows down all access to the slots |
| 18:14:50 | brixen | evan: just thinking 2 is faster than cast + access |
| 18:14:53 | brixen | yeah |
| 18:14:56 | evan | because they're constantly casting |
| 18:14:59 | binary42_ enters the room. | |
| 18:14:59 | brixen | yep |
| 18:15:23 | binary42 leaves the room. | |
| 18:15:36 | evan | option 2 would be using the object's type to lookup an object with virtual functions, dispatching to a virtual function, which would contain a switch statement |
| 18:15:38 | VVSiz | marnen, brixen: one more BigDecimal sickness for you: BigDecimal('1').divmod(BigDecimal('3E-9'))[1] #==> '0.3E9' |
| 18:15:43 | zimbatm leaves the room. | |
| 18:15:47 | brixen | the more general approach in 1 (i.e. cast and access) doesn't seem necessary |
| 18:15:53 | VVSiz | but should be 0.3333333333E9 :) so much for precision :) |
| 18:15:57 | brixen | but maybe I'm missing something |
| 18:16:15 | evan | brixen: we don't need them both |
| 18:16:23 | evan | but we have to have one or the other |
| 18:16:29 | brixen | evan: right, I think 2 over 1 |
| 18:16:31 | brixen | option 2 |
| 18:16:33 | evan | ok. |
| 18:16:54 | evan | 2 has the benefit of being able to done largely via generate code |
| 18:17:08 | evan | i wrote some code last night to parse out the types of all the slots in the builtin classes |
| 18:17:25 | evan | so i'd just autogenerate the function that contains the switch to perform type checks |
| 18:17:28 | marnen | VVSiz: no, actually, I think neither result is correct, unless you meant [0] instead of [1] |
| 18:17:45 | VVSiz | damn, I meant [0] indeed :) |
| 18:18:29 | evan | hm, i need to actually sign that maid service up |
| 18:18:39 | brixen | evan: so, what does this slot type stuff look like in the class? |
| 18:18:40 | VVSiz | the diff between actual result and calculated one: 33333333 :) |
| 18:19:00 | evan | brixen: which? |
| 18:19:04 | marnen | yeah |
| 18:19:05 | marnen | oy |
| 18:19:26 | brixen | evan: the types of the slots in the built in classes, is it the same ivar_as_index syntax? |
| 18:19:35 | brixen | i.e. a hash in the class body? |
| 18:19:40 | evan | no |
| 18:19:43 | evan | it's not at all in ruby code |
| 18:19:47 | brixen | ahh, doh |
| 18:19:49 | evan | it's hidden entirely in the VM |
| 18:19:50 | brixen | gotcha |
| 18:19:51 | brixen | heh |
| 18:19:56 | evan | you can access it from ruby |
| 18:19:59 | brixen | all these classes floating around now :) |
| 18:20:00 | evan | you'd do something like |
| 18:20:12 | evan | CompiledMethod.mapped_ivars |
| 18:20:22 | brixen | I'm not used to thinking of classes in the VM still :) |
| 18:20:28 | evan | # => <LookupTable @name => 1, @file => 2 ... > |
| 18:25:44 | octopod leaves the room. | |
| 18:31:45 | thehcdreamer enters the room. | |
| 18:32:58 | headius_ enters the room. | |
| 18:32:58 | headius leaves the room. | |
| 18:35:10 | Fullmoon leaves the room. | |
| 18:36:57 | Arjen_ leaves the room. | |
| 18:37:07 | binary42 enters the room. | |
| 18:38:19 | binary42_ leaves the room. | |
| 18:40:55 | wdperson enters the room. | |
| 18:42:01 | boyscout | 1 commit by Vladimir Sizikov |
| 18:42:02 | boyscout | * More BigDecimal#divmod rubyspecs.; b677164 |
| 18:42:58 | TheVoice enters the room. | |
| 18:45:17 | zimbatm enters the room. | |
| 18:47:31 | thehcdreamer leaves the room. | |
| 18:49:44 | binary42 leaves the room. | |
| 18:50:19 | headius_ leaves the room. | |
| 18:50:45 | binary42_ enters the room. | |
| 18:51:48 | TheProkrammer | headius needs to use screen... |
| 18:52:05 | evan | or a proxy |
| 18:52:23 | rubuildius_amd64 | Vladimir Sizikov: b6771644d; 2097 files, 6778 examples, 24248 expectations, 0 failures, 0 errors; http://rafb.net/p/T8SM9n12.html |
| 18:53:24 | djwhitt | fyi ctrlproxy works great for me |
| 18:53:42 | marnen leaves the room. | |
| 18:53:53 | evan | djwhitt: me too |
| 18:54:03 | evan | hasn't crashed yet like dircproxy |
| 18:54:13 | evan | plus it's nice just telling irssi to use it as a proxy |
| 18:54:28 | djwhitt | yeah, seems to gobble up a lot of memory, but that might just be logging settings or something |
| 18:54:34 | djwhitt | likewise, hasn't crashed at all for me |
| 18:55:35 | binary42 enters the room. | |
| 18:55:57 | evan | hm |
| 18:56:06 | evan | i'm thinking about simplifying primitives a bit too. |
| 18:56:10 | rubuildius_ppc | Vladimir Sizikov: b6771644d; 2097 files, 6780 examples, 24274 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/190608 |
| 18:56:19 | evan | how headius and I were talking about |
| 18:56:30 | binary42 leaves the room. | |
| 18:56:38 | evan | just make it so that |
| 18:56:43 | binary42 enters the room. | |
| 18:56:49 | evan | /* Ruby.primitive :fixnum_add */ |
| 18:57:09 | evan | INTEGER Fixnum::add(STATE, INTEGER other) { ... |
| 18:58:31 | binary42_ leaves the room. | |
| 18:58:54 | evan | auto generates glue code to call automatically call that C++ function |
| 19:00:15 | djwhitt | well, since no one else is speaking up, I'm not a huge fan of that kind of thing being in comments, but I'm not sure there's a better way in C++ |
| 19:00:30 | joachimm enters the room. | |
| 19:00:31 | evan | yeah, i'm all ears for a better way |
| 19:00:31 | djwhitt | JRuby uses annotations right? |
| 19:00:33 | evan | yeah |
| 19:00:48 | evan | I like that locatily though |
| 19:00:58 | evan | rather than stashing it off in another file like we do now |
| 19:01:34 | evan | there aren't any form of C++ anonations, right? |
| 19:01:41 | djwhitt | no that I know of |
| 19:01:48 | djwhitt | C++ has pretty much 0 introspection |
| 19:02:07 | evan | yeah |
| 19:02:46 | macournoyer enters the room. | |
| 19:03:09 | evan | speaking of which |
| 19:03:28 | evan | anyone know wtf is with the style of putting /* blah */ comments IN the argument list? |
| 19:03:33 | evan | IronRuby seems to do that in C# code |
| 19:03:48 | benny leaves the room. | |
| 19:05:56 | marnen_ enters the room. | |
| 19:06:17 | joachimm | is there a guide for building the c++ vm and the tests and coverage reports for it? |
| 19:06:43 | evan | cd vm/test; |
| 19:06:51 | evan | rake test; |
| 19:06:54 | evan | make coverage; |
| 19:06:57 | evan | :) |
| 19:07:12 | evan | make coverage creates a coverage/ directory, just open the index.html to see the report |
| 19:07:36 | djwhitt | is there an equivelant of heckle for C++ I wonder |
| 19:07:44 | djwhitt | it would be sweet to run something like that on the VM |
| 19:07:52 | evan | hm... |
| 19:08:14 | joachimm | evan: is that supposed to pass without errors? |
| 19:08:20 | evan | yes |
| 19:08:28 | evan | well, on os x |
| 19:08:34 | evan | there are some errors on linux currently |
| 19:08:41 | marnen_ leaves the room. | |
| 19:08:42 | joachimm | evan: I have problems on ppc osx leopard. |
| 19:08:47 | djwhitt | http://www.mutationtest.net/twiki/bin/view/Resources |
| 19:09:10 | djwhitt | there are some C++ mutation tools listed, but they're commercial |
| 19:09:42 | evan | well, thats not a deal breaker |
| 19:09:57 | evan | since I have a company credit card |
| 19:10:05 | djwhitt | hehe, nice |
| 19:10:09 | djwhitt | deal breaker for me though ;) |
| 19:10:15 | djwhitt | unless they're really cheap |
| 19:13:06 | evan | i wonder how much insure++ is |
| 19:13:10 | evan | i can't seem to find a price |
| 19:14:08 | evan | yikes. |
| 19:14:13 | evan | found the price of an older one |
| 19:14:14 | evan | $2k |
| 19:16:02 | evan | i think this falls under the category of if you have to ask what the price is, you con't afford it. |
| 19:18:17 | joachimm | evan: is the c++ vm build with debug info by default? |
| 19:18:25 | evan | yep |
| 19:18:29 | evan | what error you getting? |
| 19:25:08 | joachimm | evan: http://pastie.textmate.org/private/l2kweo1m4brfloywmybltw not exactly descriptive. |
| 19:25:35 | evan | oh |
| 19:25:38 | evan | that means it segfaulted |
| 19:25:42 | evan | fire up |
| 19:25:44 | evan | gdb ./runner |
| 19:27:00 | binary42 leaves the room. | |
| 19:27:20 | joachimm | evan: http://pastie.textmate.org/private/r70yymj3lqsew3gxketvw |
| 19:27:46 | evan | hit c |
| 19:27:50 | evan | thats expected |
| 19:27:53 | evan | thats during the events tests |
| 19:27:59 | evan | not a segfault |
| 19:29:48 | joachimm | evan: http://pastie.textmate.org/private/pxas8i0mgtzcdwbfoloq |
| 19:30:04 | evan | bt |
| 19:30:13 | evan | thats a real segfault |
| 19:30:20 | evan | hit bt |
| 19:31:04 | thehcdreamer enters the room. | |
| 19:31:09 | joachimm | http://pastie.textmate.org/private/jekumy5iave58bllk2jcq |
| 19:31:21 | benburkert enters the room. | |
| 19:33:14 | evan | hm, interesting. |
| 19:33:29 | evan | oh oh |
| 19:33:32 | evan | cif is NULL there |
| 19:33:44 | evan | something isn't getting checked likely |
| 19:33:59 | evan | you're on ppc 10.4 or 10.5? |
| 19:34:02 | joachimm | evan: dinner with girlfriend, will be back in 40 min. |
| 19:34:04 | jarib enters the room. | |
| 19:34:05 | joachimm | evan: leopard |
| 19:34:09 | evan | joachimm: no prob chief |
| 19:34:24 | jarib leaves the room. | |
| 19:38:27 | boyscout | 1 commit by Vladimir Sizikov |
| 19:38:28 | boyscout | * Added news specs for BigDecimal#mult.; d401159 |
| 19:40:04 | pauldix enters the room. | |
| 19:40:15 | twbray enters the room. | |
| 19:43:33 | evan | anyone around? |
| 19:43:40 | evan | want to bounce an idea off someone |
| 19:45:18 | drbrain | ok |
| 19:45:40 | kw leaves the room. | |
| 19:45:45 | evan | i'm thinking about primitives |
| 19:46:04 | evan | and starting to realize that having syntax for them in bootstrap is maybe not the greatest idea |
| 19:46:13 | evan | because it's not as though you can mix and match them. |
| 19:46:22 | drbrain | with what? |
| 19:46:30 | thehcdreamer leaves the room. | |
| 19:46:36 | evan | you can translant a primitive into another class |
| 19:46:41 | evan | it can really only go one place. |
| 19:46:45 | evan | er. |
| 19:46:46 | evan | you can't |
| 19:47:18 | evan | the name of the method it's called as is the only real mutable part |
| 19:47:19 | drbrain | ok |
| 19:47:49 | evan | so, i'm thinking, to simplify things, just moving registration of the primitives into the VM |
| 19:47:52 | rubuildius_amd64 | Vladimir Sizikov: d4011595a; 2097 files, 6778 examples, 24248 expectations, 0 failures, 0 errors; http://rafb.net/p/NJGrmO38.html |
| 19:48:00 | evan | so when the VM boots up, the primitives are already attached at the proper places. |
| 19:48:05 | evan | no bootstrap that just attaches them |
| 19:48:34 | drbrain | how would the VM know where to attach them? |
| 19:48:55 | evan | it would calculate them via an annotation in the C++ source |
| 19:48:59 | riffraff enters the room. | |
| 19:49:04 | evan | since things are organized by clasess in C++ that match the Ruby class names |
| 19:49:11 | evan | class Fixnum { |
| 19:49:16 | drbrain | then I think that's a terrible idea |
| 19:49:17 | evan | // Ruby.primitive :add |
| 19:49:22 | evan | ok, why? |
| 19:49:40 | drbrain | right now the primitives ask the VM for a feature it provides |
| 19:49:50 | drbrain | so the VM can be generic in its function |
| 19:50:03 | evan | not sure how ya maen |
| 19:50:05 | drbrain | now the VM has to know about the upper layer |
| 19:50:08 | evan | could you give me an example |
| 19:50:33 | drbrain | now bootstrap asks the VM to do work for it via primitives |
| 19:50:39 | evan | certainly, the primitive is a generic unit of work |
| 19:50:45 | evan | but they're still class oriented |
| 19:50:50 | evan | because they all use the receiver |
| 19:51:28 | drbrain | I think the VM knowing about classes is a convenience for us programmers |
| 19:51:33 | drbrain | but is really unimportant |
| 19:51:34 | evan | so, you like having an ruby exposed bootstrap? |
| 19:51:36 | riffraff leaves the room. | |
| 19:51:48 | evan | certainly thats true |
| 19:51:56 | evan | but the primitives still care |
| 19:52:04 | drbrain | but the VM needing to know about how Ruby is implemented feels like too much coupling |
| 19:52:13 | evan | 99% of the primitives have a guard on the receiver |
| 19:52:17 | evan | to make sure it's of a certain type |
| 19:52:28 | drbrain | in the Future, primitives will be implemented in ruby and translated, right? |
| 19:52:34 | evan | sure |
| 19:52:52 | evan | but this change doesn't make than any more difficult |
| 19:53:00 | evan | because the translated ones still would have to be linked into the VM |
| 19:53:02 | drbrain | I think its ok for the primitives to have a guard on the receiver |
| 19:53:24 | evan | what about attaching the primitives in Ruby do you like? |
| 19:53:33 | evan | that you can go read bootstrap and see what are primitive methods? |
| 19:53:33 | rubuildius_ppc | Vladimir Sizikov: d4011595a; 2097 files, 6780 examples, 24274 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/190641 |
| 19:53:51 | drbrain | since primitives are supposed to be written in ruby, I don't think the VM (which isn't ruby) is the place to hook them up |
| 19:54:16 | evan | what they're written in actually doesn't matter |
| 19:54:21 | drbrain | zenspider: wrote a tool yesterday that uses the current system to figure out what methods call down to primitives |
| 19:54:27 | evan | what matters (in my mind) is that they're VM execution units |
| 19:55:04 | evan | right, so in that case, it's the ability to look into bootstrap and see what ruby methods are hooked up as primitives |
| 19:55:08 | evan | it increases the visibility |
| 19:55:14 | drbrain | yes |
| 19:55:25 | evan | ok |
| 19:55:29 | evan | you're right. |
| 19:55:30 | evan | it stays. |
| 19:55:54 | drbrain | it also feels like its the wrong side of the VM/ruby coupling boundary to put that information |
| 19:56:02 | evan | true |
| 19:56:13 | evan | i buy that argument |
| 19:56:28 | evan | i'm still going to make the primitives more object oriented on the VM side |
| 19:56:40 | evan | but they'll remain hooked up via the Ruby.primitive construct in bootstrap |
| 19:56:49 | drbrain | that's cool |
| 19:57:09 | drbrain | I think it is tempting because you've OO-ified the VM so much |
| 19:57:15 | evan | yeah |
| 19:57:26 | evan | thats why i needed to bounce the idea off someone |
| 19:57:30 | evan | to check my thinking. |
| 19:57:30 | ShayArnett enters the room. | |
| 19:58:07 | drbrain | happy to help |
| 19:59:47 | dysinger enters the room. | |
| 20:01:16 | fbuilesv leaves the room. | |
| 20:12:41 | riffraff enters the room. | |
| 20:20:15 | lopex enters the room. | |
| 20:21:22 | chris2 leaves the room. | |
| 20:22:17 | kw enters the room. | |
| 20:24:32 | evan | sweet |
| 20:24:38 | evan | this glue code generation is going to work well I think. |
| 20:26:16 | benny enters the room. | |
| 20:26:22 | benburkert_ enters the room. | |
| 20:31:51 | riffraff leaves the room. | |
| 20:32:35 | ndemonner leaves the room. | |
| 20:33:56 | joachimm leaves the room. | |
| 20:34:36 | benburkert leaves the room. | |
| 20:37:38 | rue | Muu |
| 20:37:40 | enebo_ enters the room. | |
| 20:44:07 | rue | evan: See if Dinkumware has anything |
| 20:44:22 | nicksieger leaves the room. | |
| 20:44:31 | enebo leaves the room. | |
| 20:45:17 | naeu leaves the room. | |
| 20:49:00 | rue | Gut feeling, annotations are a slippery slope. Java has to use annotations because the language sucks, to horribly generalise |
| 20:49:30 | rue | There are certainly some practical applications, but you have to be careful |
| 20:49:57 | rue | Because then you have THREE languages you are working with. Ruby, C++ and the annotations. |
| 20:49:59 | anteaya enters the room. | |
| 20:52:42 | ndemonner enters the room. | |
| 20:52:53 | naeu enters the room. | |
| 20:53:11 | enebo enters the room. | |
| 20:59:10 | ShayArnett leaves the room. | |
| 20:59:10 | macournoyer leaves the room. | |
| 20:59:10 | agile leaves the room. | |
| 20:59:10 | Maledictus leaves the room. | |
| 20:59:10 | rubuildius_amd64 leaves the room. | |
| 20:59:10 | rue leaves the room. | |
| 20:59:49 | macournoyer enters the room. | |
| 20:59:49 | agile enters the room. | |
| 20:59:49 | Maledictus enters the room. | |
| 20:59:49 | rue enters the room. | |
| 20:59:49 | rubuildius_amd64 enters the room. | |
| 21:03:52 | naeu leaves the room. | |
| 21:05:09 | qwert666_ enters the room. | |
| 21:06:31 | enebo_ leaves the room. | |
| 21:07:21 | EugZol enters the room. | |
| 21:16:07 | be9 leaves the room. | |
| 21:16:20 | joachimm enters the room. | |
| 21:17:21 | ctennis leaves the room. | |
| 21:19:23 | riffraff enters the room. | |
| 21:21:19 | evan | rue: true |
| 21:21:29 | evan | i'm using a single formatted comment for now. |
| 21:22:06 | qwert666 leaves the room. | |
| 21:25:23 | headius enters the room. | |
| 21:27:07 | agile leaves the room. | |
| 21:30:07 | yaroslav enters the room. | |
| 21:30:33 | yaroslav leaves the room. | |
| 21:30:46 | yaroslav enters the room. | |
| 21:31:20 | whitethunder922 enters the room. | |
| 21:32:00 | whitethunder922 | i'm having trouble installing rubinius: |
| 21:32:02 | whitethunder922 | (in /home/mwhite/rubinius-daily) |
| 21:32:02 | whitethunder922 | fatal: Not a git repository |
| 21:32:02 | whitethunder922 | make vm |
| 21:32:02 | whitethunder922 | cd shotgun; make rubinius |
| 21:32:02 | whitethunder922 | make[1]: Entering directory `/home/mwhite/rubinius-daily/shotgun' |
| 21:32:03 | whitethunder922 | cd lib; make library; |
| 21:32:05 | whitethunder922 | make[2]: Entering directory `/home/mwhite/rubinius-daily/shotgun/lib' |
| 21:32:07 | whitethunder922 | bison -o grammar.c grammar.y |
| 21:32:09 | whitethunder922 | make[2]: bison: Command not found |
| 21:32:11 | whitethunder922 | CC grammar.o |
| 21:32:13 | whitethunder922 | cc: grammar.c: No such file or directory |
| 21:32:15 | whitethunder922 | cc: no input files |
| 21:32:17 | whitethunder922 | make[2]: *** [grammar.o] Error 1 |
| 21:32:19 | whitethunder922 | make[2]: Leaving directory `/home/mwhite/rubinius-daily/shotgun/lib' |
| 21:32:21 | evan | you need to have bison istalled |
| 21:32:21 | whitethunder922 | make[1]: *** [lib/librubinius-0.8.0.so] Error 2 |
| 21:32:23 | whitethunder922 | make[1]: Leaving directory `/home/mwhite/rubinius-daily/shotgun' |
| 21:32:24 | evan | stop. |
| 21:32:25 | whitethunder922 | make: *** [vm] Error 2 |
| 21:32:25 | rue | Bison |
| 21:32:27 | evan | please |
| 21:32:27 | whitethunder922 | rake aborted! |
| 21:32:31 | rue | ^D |
| 21:32:34 | rue | :D |
| 21:32:45 | evan | whitethunder922: do not paste into channel |
| 21:33:05 | whitethunder922 | sorry, never been here before |
| 21:33:18 | evan | whitethunder922: you need bison installed. |
| 21:33:29 | Defiler | manveru: No fix yet for that wacky included hook. right now I am only touching bugs that block merb or rails |
| 21:33:36 | zimbatm leaves the room. | |
| 21:34:10 | ctennis enters the room. | |
| 21:36:32 | whitethunder922 | ok, i installed bison but now there are all sorts of errors with readline.c after doing "rake build" again |
| 21:36:41 | atmos leaves the room. | |
| 21:37:13 | evan | whitethunder922: you need the readline headers installed |
| 21:39:53 | rue | whitethunder922: http://rubinius.lighthouseapp.com/projects/5089/installation also |
| 21:39:55 | binary42 enters the room. | |
| 21:40:09 | rue | It may need to be updated so let me know if anything is missing from there |
| 21:40:40 | dbussink | whitethunder922: the bison missing is in the faq there |
| 21:40:55 | rue | I think the INSTALL doc may be closeish |
| 21:43:25 | whitethunder922 | i think it's good now, thanks |
| 21:43:28 | manveru | Defiler: :( |
| 21:43:47 | dmpk2k leaves the room. | |
| 21:44:35 | rue | Wtf, there were tons of posts that just appeared in spams |
| 21:45:26 | Defiler | manveru: I'll still fix it if nobody else does first.. RailsConf is coming up soon, though |
| 21:46:04 | manveru | oh well... i just want to be able to run ramaze :P |
| 21:46:42 | Defiler | wait, real code does that stupid thing? |
| 21:46:43 | Defiler | Why? |
| 21:46:50 | Defiler | and where? |
| 21:47:24 | manveru | included does extend the object it was included in |
| 21:47:30 | Defiler | Why? |
| 21:47:33 | manveru | i thought that was a normal pattern... |
| 21:47:41 | evan | no |
| 21:47:48 | evan | the pattern is to include a seperate module in extended |
| 21:47:52 | manveru | so you can get normal and singleton methods from a module |
| 21:48:05 | evan | the one that rails has put forth, rather. |
| 21:48:21 | dlee enters the room. | |
| 21:48:42 | dalee enters the room. | |
| 21:48:43 | manveru | i never expected it to become a problem since it runs just normal in 1.8/1.9 ... |
| 21:48:46 | Defiler | Crap, it is common |
| 21:48:52 | Defiler | http://www.google.com/search?hl=en&safe=off&client=firefox-a&rls=org.mozilla%3Aen-US%3 Aofficial&hs=DuM&q=%22extend+self%22+%22def+self.included%22&btnG=Search |
| 21:48:57 | dalee leaves the room. | |
| 21:49:09 | Defiler | shit and rails does it doesn't it |
| 21:49:20 | manveru | no idea... |
| 21:49:22 | Defiler | time to read the MRI code for it I guess |
| 21:49:30 | evan | calling extend in included |
| 21:49:30 | evan | yeah |
| 21:49:34 | evan | thats the rails pattern |
| 21:49:43 | Defiler | calling extend self apppears to be a common rails pattern |
| 21:49:48 | evan | i've never seen someone extend the thing that was included though too |
| 21:50:04 | manveru | evan: did i say that? |
| 21:50:07 | yaroslav leaves the room. | |
| 21:50:16 | manveru | if so, sorry, i'm tired :) |
| 21:50:17 | Defiler | http://blade.nagaokaut.ac.jp/cgi-bin/vframe.rb/ruby/ruby-talk/188468?188228-198790 |
| 21:50:20 | Defiler | e.g. ^^ |
| 21:50:31 | dmpk2k enters the room. | |
| 21:50:37 | manveru | my specs shows it really nicely |
| 21:50:55 | Defiler | Yeah, I know.. but I thought it was a spec for a synthetic bug report |
| 21:51:01 | Defiler | not real code in the wild |
| 21:51:16 | manveru | all my specs are from trying to run ramaze on rubinius |
| 21:51:41 | manveru | i just have to synthesize the parts that offend out of it |
| 21:53:09 | Defiler | OK. I apologize for not understanding earlier |
| 21:53:42 | Defiler | I had you filed in the "crazy neighbor with cats" part of my mental bug tracker |
| 21:53:59 | manveru | ^^; |
| 21:54:25 | riffraff leaves the room. | |
| 21:54:35 | rue | Damnit, now I will be left there by myself again |
| 21:55:10 | evan | that being said |
| 21:55:18 | evan | you should be able to extend something that was included. |
| 21:55:19 | evan | and not crash. |
| 21:55:21 | evan | :) |
| 21:55:24 | Defiler | For sure, yeah |
| 21:55:30 | Defiler | I was just thinking 'June'. Heh |
| 21:55:40 | evan | it's easy |
| 21:55:42 | evan | it's a quick check. |
| 21:55:45 | evan | it's like 2 minutes. |
| 21:55:46 | Defiler | Sadly no |
| 21:55:50 | evan | why not? |
| 21:55:51 | dbussink | afaik it's indeed pretty commonly used in rails |
| 21:55:51 | Defiler | ryan and I worked on it for hours |
| 21:56:02 | evan | why is it complicated? |
| 21:56:04 | moofbong leaves the room. | |
| 21:56:07 | manveru | metaclasses are nasty :| |
| 21:56:12 | Defiler | Well, the code that should work is easy |
| 21:56:21 | dbussink | Defiler: i feel a "the master will fix it in 5 minutes" moment coming up ;) |
| 21:56:27 | Defiler | but it seems like the ancestors list only contains the included module AFTER included fires |
| 21:56:36 | evan | thats a bug. |
| 21:56:41 | evan | it shouldn't. |
| 21:56:41 | Defiler | not before.. but even if you check it early, we couldn't figure out why |