Show enters and exits. Hide enters and exits.
| 00:00:23 | tarcieri | heh, it's... hard to explain |
| 00:00:28 | evan | ok. |
| 00:00:34 | tarcieri | mainly I was just wondering why the output was screwey |
| 00:00:37 | tarcieri | that explains it |
| 00:00:48 | tarcieri | a.sort! { rand(3).to_i - 1 } works |
| 00:01:01 | evan | ha! true. |
| 00:01:25 | tarcieri | guess the to_i is unnecessary too |
| 00:01:37 | tarcieri | evan: so I was going to ask you about gems for the "rbx" platform |
| 00:01:41 | tarcieri | is that ok? |
| 00:01:46 | tarcieri | gems that are rbx-specific |
| 00:01:48 | evan | we should ask drbrain |
| 00:01:50 | evan | but I think so |
| 00:01:55 | evan | we should probably use the name rubinius though |
| 00:01:59 | tarcieri | ok |
| 00:01:59 | evan | to be explicit |
| 00:02:19 | tarcieri | I was talking to the mongrel people and they're willing to take a patch to let them generate a gem for Rubinius |
| 00:02:20 | wycats enters the room. | |
| 00:02:32 | tarcieri | that would include the Rubinius.asm parser |
| 00:02:47 | evan | dopeness |
| 00:02:57 | evan | let me ask drbrain |
| 00:03:00 | evan | he's on a train |
| 00:03:18 | wycats | evan: Defiler was telling me about using Rubinius.asm in random files, and how it takes locals to use in asm |
| 00:03:22 | wycats | that's dope |
| 00:04:47 | evan | wycats: yeah |
| 00:05:01 | evan | Rubinius.asm basically lets you run specific code at compile time |
| 00:05:57 | evan | that code typically drives the Compiler::Generator to create bytecode |
| 00:06:40 | wycats | yeah |
| 00:06:44 | wycats | it's pretty sweet |
| 00:06:55 | evan | yeah |
| 00:08:28 | wycats | evan: any idea why Safari's new JS VM is not using LLVM? |
| 00:08:41 | wycats | I would think given the amount of attention Apple is giving LLVM it would be central |
| 00:09:29 | anonuser | Different teams different preferences I'd assume. |
| 00:11:02 | tarcieri | Apple's main interest in LLVM seems to be mixing and matching hardware and software implementations of various 3D graphics features depending on what's available on the 3D chip |
| 00:11:28 | anonuser | That's what I took from it. They use it to provide shader support to lower end graphics cards. |
| 00:12:29 | mass | I'd be a bit worried about doing a sort with rand as an index, because it means that a lot of assumptions don't hold true |
| 00:12:58 | evan | tarcieri: drbrain is adding a feature to rubygems now to make this much easier |
| 00:13:07 | evan | (having rubinius specific gems) |
| 00:13:29 | mass | in STL you can have segfaults because the data structures get so mucked up |
| 00:13:47 | evan | thats not going to happen to a ruby Array. |
| 00:13:52 | evan | mass: ^^ |
| 00:14:40 | anonuser | evan, are you still playing around with LLVM for Rubinius? |
| 00:14:49 | atduskgr_ enters the room. | |
| 00:14:50 | evan | anonuser: yep |
| 00:15:01 | wycats | evan: I have a new favorite line of Railas code: |
| 00:15:02 | wycats | method_scoping = method_scoping.method_scoping if method_scoping.respond_to?(:method_scoping) |
| 00:15:14 | evan | hah |
| 00:15:16 | anonuser | For a C++ rewrite of the core VM or something? |
| 00:15:39 | evan | anonuser: i'm doing it in the C++ VM i've been working on, yes. |
| 00:15:58 | atduskgreg leaves the room. | |
| 00:16:03 | anonuser | Neat-o, I'm just trying to get the story straight. |
| 00:16:09 | evan | yeah, no prob. |
| 00:16:09 | moofbong leaves the room. | |
| 00:16:15 | evan | it's pretty awesome |
| 00:16:19 | evan | for a very small effort |
| 00:16:21 | anonuser | C++ or LLVM? |
| 00:16:21 | mass | wycats: I cannot think of an emoticon to describe how that code makes me feel |
| 00:16:27 | anonuser | <3's both |
| 00:16:28 | evan | bytecode dispatch will be entirely eliminated |
| 00:16:33 | anonuser | but I'm in a major minority with C++ |
| 00:16:47 | wycats | mass: yeah |
| 00:16:48 | wycats | agreed |
| 00:16:49 | evan | the C++ + bytecode + LLVM setup |
| 00:17:02 | evan | i'm not minding C++ too much |
| 00:17:31 | anonuser | C++ has a bad rap in the OSS arena :( |
| 00:17:40 | evan | i'd agree with that. |
| 00:18:02 | mass | most of that is because of past performance by a certain free software compiler though :) |
| 00:18:05 | evan | it has crazy parts |
| 00:18:07 | evan | but so does C |
| 00:18:13 | anonuser | Yeah. |
| 00:18:16 | evan | and it fixes some of C's crazy parts |
| 00:18:22 | anonuser | And adds it's own. |
| 00:18:26 | evan | yep! |
| 00:18:27 | evan | :D |
| 00:18:31 | wycats | evan: it has a bad rap because people are lazy :P |
| 00:18:36 | anonuser | wycats, partially! |
| 00:18:42 | mass | C++ standardizes a lot of things that C should have standarized by now |
| 00:18:44 | wycats | lol |
| 00:18:44 | evan | stuff like function template specialization has made the new VM nice and clean though. |
| 00:18:52 | anonuser | wycats, C++ is crazy complex but very powerful if you can wield it correctly. |
| 00:18:53 | wycats | if you can read it ;) ;) |
| 00:18:57 | wycats | anonuser: same with Ruby |
| 00:19:06 | evan | after all, coming from Ruby, who can resist a little metaprogramming (even if it is at compile time) |
| 00:19:07 | anonuser | wycats, exactly but people love ruby for some reason! |
| 00:19:11 | mass | but C++ as an OO language tries to go too high for not having solved cross-cutting problems for the user |
| 00:19:14 | anonuser | I actually went from C++ to Ruby |
| 00:19:44 | anonuser | evan, partial template specialization is an easy thing to screw up. |
| 00:19:53 | mass | because of that, library code becomes less readable as it becomes more useful |
| 00:19:55 | mass | :) |
| 00:19:58 | anonuser | I know I got in trouble with PTS going from compiler to compiler |
| 00:20:06 | tarcieri | evan: cool (re: rubinius-specific gems) |
| 00:20:17 | anonuser | mass, that is the truth, I fear reading complex container classes. |
| 00:20:19 | evan | tarcieri: drbrain is on the train, but he should be able to push it soon |
| 00:20:48 | evan | tarcieri: i'm pretty sure that all rubygems versions now will say they can't install them |
| 00:20:52 | mass | anonuser: to be fair, a lot of that complexity is because the C++ standards committee decided all objects have to have a non-zero size (be referencable) |
| 00:20:59 | evan | and just the updated versions in rubinius will realize that they can |
| 00:21:00 | evan | so thats good. |
| 00:21:06 | mass | oh the fun the STL does to optimize that decision away |
| 00:21:32 | anonuser | mass, well that's one of my gripes with the C++ committee they don't really make a reference implementation of these things. They just kind of hope it works :( |
| 00:21:39 | evan | personally, I don't get why STL is so crazy complex. |
| 00:21:43 | tarcieri | evan: so it's just going to be a platform setting, right? |
| 00:21:47 | evan | tarcieri: yeah |
| 00:21:52 | tarcieri | "rubinius"? |
| 00:21:52 | mass | evan: which part? |
| 00:22:02 | evan | tarcieri: we'll tag a gem as platform rubinius |
| 00:22:06 | tarcieri | ok, cool |
| 00:22:14 | evan | mass: all the containers, for instance |
| 00:22:18 | anonuser | evan, my take is performance for different cases. |
| 00:22:20 | evan | i tried to read the code |
| 00:22:23 | evan | YIKES. |
| 00:22:25 | anonuser | Don't bother it. |
| 00:22:37 | anonuser | SGI wrote a lot of that crap in the early days. |
| 00:22:41 | mass | evan, yeah thats what I meant with my 'all classes must have size' comment |
| 00:22:42 | anonuser | I love their variable names |
| 00:22:47 | anonuser | _m, _s, _sp |
| 00:22:53 | evan | anonuser: yeah |
| 00:23:06 | mass | oh yeah, the variable names are superb as well |
| 00:23:08 | anonuser | That's why I loved using Visual Studio |
| 00:23:19 | anonuser | it had special cases for container classes. |
| 00:23:23 | mass | the compiler generates slower native code if you use long names, apparently ;-) |
| 00:23:42 | anonuser | so if it was a string or array it'd just show the content in the debugger as you'd use it, not the internals. |
| 00:23:52 | rubuildius_amd64 | Brian Ford: 7a25999ab; 2188 files, 7231 examples, 25913 expectations, 1 failure, 0 errors; http://rafb.net/p/BKMMeh47.html |
| 00:23:54 | anonuser | mass, :( name mangling happens anyways. |
| 00:24:15 | mass | but no, to keep the allocator from taking up space (except in the cases where you need space for the allocator), they do things like subclass internal types that have all the logic from your allocator |
| 00:24:40 | mass | so there is a hashtable and a hashtable internal that will inherit from your less and allocator implementations |
| 00:24:44 | mass | mindblowing. |
| 00:24:56 | anonuser | It's all crazy stuff. |
| 00:25:26 | evan | mass: yeah, thats the kind of stuff i mean |
| 00:25:31 | mass | anyway, I recommend "Modern C++ Design" if you want to get headaches :) |
| 00:25:31 | evan | seems overly complicated |
| 00:25:40 | mass | I called it the anarchists cookbook of C++ |
| 00:25:41 | anonuser | I know C is getting crazy cool things like jemalloc implementations and you can override malloc easily in unix but I've yet to see an arena based allocator for C++ |
| 00:25:44 | evan | mass: i've actually decided to buy no C++ books. |
| 00:25:49 | evan | it's better I not know |
| 00:25:55 | mass | lol |
| 00:25:57 | evan | and use more ruby-style idioms instead. |
| 00:26:00 | anonuser | evan, good show! I bought a reference book back in the day. |
| 00:26:11 | anonuser | Jamas' C/C++ programmers bible.. |
| 00:26:14 | anonuser | what a shitty book |
| 00:26:16 | evan | ha |
| 00:26:22 | evan | i have had C++ books over the years |
| 00:26:24 | evan | did it back in college |
| 00:26:28 | evan | i have one C++ book |
| 00:26:36 | anonuser | Maybe I can find it. |
| 00:26:36 | mass | i don't disagree evan, although effective C++ and more effective C++ might be a good idea to try and skim :) |
| 00:26:37 | evan | the really old Oreilly C++ Core Language book |
| 00:26:46 | anonuser | To give an idea the craziness of this book |
| 00:26:52 | evan | mass: ok, i'll skim at the bookstore :) |
| 00:27:02 | anonuser | effective C++ is an excellent book for people wanting to be decent C++ programmers |
| 00:27:44 | mass | evan: if it is good enough, crazy people like me will contribute fixes to eliminate 4 bytes here or inline a method there. |
| 00:28:09 | anonuser | 5 months later I've still not unpacked everything :( |
| 00:28:25 | mass | the next c++ will be rather nice imho, I just wish there was something I could play with now |
| 00:28:27 | evan | mass: heh |
| 00:28:44 | anonuser | mass, yeah it's going to be neat. No more space between the angle and templating spec |
| 00:28:48 | anonuser | That is going to be so awesome |
| 00:28:51 | evan | hah |
| 00:28:54 | mass | lol there are other things I like about it |
| 00:28:55 | evan | only took them 15 years! |
| 00:28:58 | mass | like the auto keyword :) |
| 00:29:05 | anonuser | FINALLY. |
| 00:29:07 | mass | inferred typing ftw |
| 00:29:12 | anonuser | That is the best thing evar! |
| 00:29:30 | anonuser | I always had to pull out some kind of iterator before a loop because it makes things too unreadable |
| 00:29:30 | mass | rvalue references are evil and will take me a while to fully grok, but they fix so many issues its worth it. |
| 00:29:48 | anonuser | I'm hoping threading in the language will be complete. |
| 00:29:57 | mass | unique_ptr will be great. |
| 00:30:06 | mass | it'll be somewhat complete, if that makes any sense |
| 00:30:09 | anonuser | I hope it'll support multiple paradigms of concurrency and parallelisms |
| 00:30:18 | evan | i don't get the reason for the null_ptr type |
| 00:30:23 | tarcieri | *boggle* @ parallelism in C++ |
| 00:30:37 | anonuser | evan, there's a lot of history to it. |
| 00:30:40 | mass | evan, I can explain null_ptr in one line :D |
| 00:30:50 | anonuser | I hope the garbage collector makes it in there. |
| 00:30:58 | tarcieri | I think the best way to do concurrent C++ is to write a VM that runs a language that solves the problems of parallelism at a higher level of abstraction :) |
| 00:30:59 | anonuser | tarcieri, It can be done :) |
| 00:30:59 | mass | char *foo = false; // true here will throw a compilation exception |
| 00:31:45 | anonuser | Actually C++ is a great candidate for threads for the sake of clarity. |
| 00:31:46 | tarcieri | One VM per hardware thread per CPU core seems like a nice model for shared heap languages |
| 00:31:50 | hemulen leaves the room. | |
| 00:31:55 | tarcieri | threads are a lousy concurrency model |
| 00:32:05 | anonuser | tarcieri, it depends on the case. |
| 00:32:12 | tarcieri | in the general case |
| 00:32:17 | mass | actually, I used to work on threaded C++ apps. abandon all hope ye who enter here. |
| 00:32:24 | anonuser | mass, same here. |
| 00:32:30 | tarcieri | used to do multithread C code |
| 00:32:32 | tarcieri | urgh |
| 00:32:40 | mass | I'm sure its better now |
| 00:32:46 | anonuser | mass, hah, you'd think. |
| 00:33:02 | mass | solaris gcc is still crappy I know |
| 00:33:02 | anonuser | I remember running into a memory starvation problem with threads. |
| 00:33:05 | evan | I still can't believe how bad threads and signals interact |
| 00:33:10 | anonuser | It was trivially easy to trigger. |
| 00:33:13 | evan | and that no unix seems to have fixed that. |
| 00:33:15 | tarcieri | evan: heh, that's exactly what I was going to say |
| 00:33:19 | anonuser | evan, you mean the all threads all the time get all signals? |
| 00:33:25 | evan | anonuser: or do they? |
| 00:33:26 | tarcieri | evan: signal management in multithreaded programs is a nightmare |
| 00:33:29 | evan | NO ONE KNOWS! |
| 00:33:34 | mass | they shipped 3.0.x with a bad atomicity.h for sparc |
| 00:33:37 | anonuser | haha |
| 00:33:38 | tarcieri | anonuser: you can pthread_sigmask() |
| 00:33:46 | tarcieri | and block certain signals on a thread-by-thread basis |
| 00:33:58 | anonuser | tarcieri, yeah I know. |
| 00:34:16 | mass | yeah, I think you pretty much have to sigmask everything to one point or else you cannot be sure what will happen |
| 00:34:20 | tarcieri | what's really fun is if you have a program that was never designed to be multithreaded that uses sigprocmask() and you try to create some threads inside it and want to block signals |
| 00:34:25 | mass | the signal handling thread :P |
| 00:34:28 | tarcieri | like, say, MRI |
| 00:34:48 | tarcieri | you're basically screwed |
| 00:34:49 | anonuser | mass, I had the signaling thread :( |
| 00:35:03 | tarcieri | yeah, that's what I tended to do... dedicate an entire thread just to signal handling |
| 00:35:16 | tarcieri | block all signals on all other threads |
| 00:35:29 | mass | at the time I was part of a small but growing group that wanted to ban all threading from all our c++ code and go to shared memory and mutex signalling :P |
| 00:35:31 | yasuhito leaves the room. | |
| 00:36:03 | tarcieri | shared memory? urgh |
| 00:36:09 | anonuser | I wanted to give intels threading crap a try |
| 00:36:32 | tarcieri | preferred to implement message queues that would copy data into buffers and deliver those to other threads |
| 00:36:44 | tarcieri | and use only those |
| 00:36:52 | anonuser | I actually did something similar. |
| 00:37:00 | lopex leaves the room. | |
| 00:37:09 | headius | howdy |
| 00:37:17 | anonuser | I wrote a networked framework for messages but I left before it was any decent. |
| 00:37:52 | evan | headius: allo! |
| 00:38:21 | tarcieri | anonuser: yeah I think given enough time people generally converge on some sort of message passing model |
| 00:38:39 | anonuser | Yeah that's what I hope makes it into C++0x |
| 00:38:51 | anonuser | which is bound to become C++1x |
| 00:39:07 | tarcieri | anonuser: sometimes referred to as Armstrong's Addendum to Greenspun's Tenth Rule |
| 00:39:12 | tarcieri | or something to that effect |
| 00:39:13 | tarcieri | heh |
| 00:39:19 | evan | they just just call it C++ 3000 |
| 00:39:23 | tarcieri | heh |
| 00:39:25 | evan | er. |
| 00:39:26 | evan | should just |
| 00:39:28 | anonuser | hahah |
| 00:39:53 | anonuser | Does anyone know if the garbage collection will make it into the C++ standard. |
| 00:40:20 | mass | not for the next release, but the plan was to make changes to prepare for it |
| 00:40:41 | headius | everyone settling back into the daily grind? |
| 00:40:50 | evan | headius: yep! |
| 00:40:51 | mass | some of the threading stuffs for next release: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2497.html |
| 00:40:57 | evan | headius: you? |
| 00:41:28 | headius | just arrived home...gonna look at AST sharing across runtimes to reduce memory |
| 00:41:33 | mass | gc stuff @ http://tinyurl.com/5ct3tm |
| 00:41:38 | evan | headius: nice. |
| 00:41:38 | mass | that first URL was too long |
| 00:42:02 | anonuser | I was hoping it'd make it into the language standard :( |
| 00:44:07 | evan | cezarsa: i found the bug. |
| 00:44:18 | evan | there is a bug with a native method calling a primitive |
| 00:44:22 | evan | fixing it now. |
| 00:44:34 | mass | shared_ptr is good and unique_ptr will be nice as well. The only time I've really run into a case where I would want to do full on GC management in C was when managing an internal cache |
| 00:44:50 | anonuser | Neat-o there's a STL thread safety proposal. Not sure why but okay |
| 00:45:10 | mass | and even then I wanted to expire things least-recently-used, so I wound up having to just implement my own refcounting/ordering scheme |
| 00:45:25 | anonuser | mass, if it's generation it can help with object instantiation overhead. |
| 00:46:01 | mass | anonuser: the proposal may be that they have to be safe when threads are in use. Today, I don't know if STL guarantees two different maps on two different threads will work |
| 00:46:15 | mass | even if the threads never access one another's maps |
| 00:46:20 | anonuser | mass, ah that makes sense. |
| 00:46:55 | cezarsa | evan: great! I think there many tagged specs on object_spec because of this bug, once you push the correction I'll check then |
| 00:47:08 | evan | ok. |
| 00:47:10 | evan | yeah |
| 00:47:13 | evan | this is a nasty bug |
| 00:47:20 | evan | i'm surprised i didn't run into myself. |
| 00:47:20 | evan | :) |
| 00:47:25 | mass | I think I got distracted again by a non-rubinius-related conversation :) |
| 00:47:54 | anonuser | mass, it's tangentially related :) |
| 00:48:04 | mass | I do really well with tangents |
| 00:48:17 | RyanTM enters the room. | |
| 00:48:19 | RyanTM_ enters the room. | |
| 00:56:24 | benny leaves the room. | |
| 00:59:12 | Defiler | wait, there's a daily grind? :) |
| 00:59:55 | foysavas leaves the room. | |
| 01:00:07 | benstiglitz leaves the room. | |
| 01:00:25 | evan | gets out the whip for Defiler |
| 01:01:01 | Defiler | You missed your chance in the hotel room.. Now I am free! FREE! hahaha |
| 01:02:24 | benburkert enters the room. | |
| 01:02:27 | evan | tarcieri: you can put |
| 01:02:37 | evan | spec.platform = Gem::Platform.new ['universal', 'rubinius', '0.8'] |
| 01:02:42 | evan | in the gem spec |
| 01:03:01 | tarcieri | ok, sweet |
| 01:03:01 | evan | drbrain needs to sync the code into rubinius so rubinius knows to match properly |
| 01:03:30 | tarcieri | the Rubinius.asm parser is failing 3 of the tests... so it's gonna be a bit here before I actually get a patch together for them |
| 01:03:51 | maharg | evan: good stuff at railsconf. I went mostly for the alternative implementation stuff and wasn't disapointed :) |
| 01:03:55 | tarcieri | I'm not seeing any errors when running Mongrel on rbx though |
| 01:04:14 | evan | maharg: :) thanks! |
| 01:04:32 | evan | maharg: pardon my ignorance, but did we talk face to face? |
| 01:04:45 | evan | i can never keep IRC nicks and real names/faces together |
| 01:04:48 | maharg | we did, briefly |
| 01:04:59 | mass | evan: Is that why you forgot I was in denver? :) |
| 01:05:08 | evan | mass: oh, probably. |
| 01:05:09 | tarcieri | using real names as nicks is helpful in that regard :) |
| 01:05:21 | evan | ^5s tarcieri |
| 01:05:26 | maharg | my real name is the reverse of my nick heh |
| 01:05:36 | evan | or at least keeping your IRC name field correct |
| 01:05:36 | evan | helps |
| 01:05:43 | evan | because i can /whois people |
| 01:06:13 | maharg | during railsconf I was using my real name as my nick in the #railsconf channel |
| 01:06:13 | Defiler | Wilson is just my 'street name' |
| 01:06:28 | evan | Defiler: Wilson is your slave name. |
| 01:06:31 | mass | Defiler: I thought your real name was McLovin? |
| 01:06:31 | Defiler | haha |
| 01:07:09 | maharg | I think we're gonna get one of our coders to start hacking on rubinius some time this week |
| 01:07:11 | evan | mass: the 27 year old hawaiian organ donor? he's a great guy. |
| 01:07:22 | evan | maharg: awesome! |
| 01:07:28 | evan | maharg: I forget, where do you work? |
| 01:07:31 | maharg | we've got a good C/C++ guy who's been hacking in the guts of ruby itself for the last little while |
| 01:07:37 | maharg | nexopia |
| 01:07:50 | tarcieri | hacking in the guts of MRI is pain pain pain |
| 01:07:58 | evan | i hope you all realize by now that my memory for relating irc names to real people and their jobs is terrible |
| 01:08:06 | tarcieri | has monkeypatched C :( |
| 01:08:12 | evan | so I hope you don't hold it against me |
| 01:08:23 | anonuser | Has anyone ever worked at Turner broadcasting systems? |
| 01:08:34 | maharg | he's been doing crazy things with memory profiling hooks in mri heh |
| 01:09:39 | maharg | his nick'll probably be cthompson when he comes by |
| 01:09:43 | tarcieri | added support for non-blocking SSLSockets through total absurdity |
| 01:10:39 | tarcieri | I have a native extension that couples to a bunch of externs in the openssl C extension through externs |
| 01:10:40 | tarcieri | ugh |
| 01:11:18 | maharg | and I don't blame you. I'm sure you meet hundreds of people at these conferences. I can barely remember the names of people I've known for years |
| 01:12:19 | evan | maharg: :) |
| 01:13:09 | anonuser | bbl |
| 01:13:31 | foysavas enters the room. | |
| 01:14:11 | nullstyle leaves the room. | |
| 01:15:08 | anonuser leaves the room. | |
| 01:16:58 | ShayArnett enters the room. | |
| 01:17:05 | trythil enters the room. | |
| 01:17:38 | wycats leaves the room. | |
| 01:18:16 | wycats enters the room. | |
| 01:18:44 | foysavas leaves the room. | |
| 01:19:13 | boyscout | 1 commit by Evan Phoenix |
| 01:19:14 | boyscout | * Fix a subtend native method calling a primitive; 4a2cb03 |
| 01:19:18 | evan | cezarsa: there ya go! |
| 01:19:26 | evan | going to go hang out with abby now |
| 01:19:27 | evan | bbiab. |
| 01:19:47 | wycats leaves the room. | |
| 01:26:24 | foysavas enters the room. | |
| 01:28:11 | bitsweat enters the room. | |
| 01:32:10 | cored enters the room. | |
| 01:33:49 | rubuildius_ppc | Evan Phoenix: 4a2cb0387; 2188 files, 7254 examples, 25973 expectations, 0 failures, 0 errors |
| 01:49:00 | hemulen enters the room. | |
| 01:51:06 | yugui enters the room. | |
| 01:54:54 | jtoy enters the room. | |
| 01:58:45 | ShayArnett leaves the room. | |
| 02:00:56 | atduskgreg leaves the room. | |
| 02:02:07 | hemulen leaves the room. | |
| 02:02:52 | nullstyle enters the room. | |
| 02:05:28 | dctanner leaves the room. | |
| 02:06:46 | moofbong enters the room. | |
| 02:07:49 | dbussink | hey ppl |
| 02:08:55 | dbussink | most already back home? |
| 02:09:49 | Defiler | I've got a couple hours of travel left =( |
| 02:09:58 | dbussink | Defiler: ah, well, me too |
| 02:10:39 | Defiler | At least the WiFi actually works here |
| 02:10:47 | dbussink | just went hiking a bit today, we went to multnomah falls today |
| 02:11:00 | dbussink | pretty nice spending of the free day |
| 02:12:08 | Defiler | Nice |
| 02:12:19 | jeremydurham enters the room. | |
| 02:12:56 | dbussink | Defiler: good to do something without a laptop :) |
| 02:13:31 | Defiler | :) |
| 02:13:40 | Defiler | Speaking of which, time to head to my flight. See you later |
| 02:13:57 | dbussink | Defiler: have a good flight |
| 02:14:00 | dbussink | seen ya |
| 02:14:02 | dbussink | see ya |
| 02:18:38 | dbussink | btw, on something totally different, anyone knows whether i can pickup an eee pc here around portland? |
| 02:18:58 | dbussink | a store that has them in stock would be really great |
| 02:19:41 | trythil leaves the room. | |
| 02:20:06 | kevwil enters the room. | |
| 02:23:10 | RyanTM leaves the room. | |
| 02:23:46 | kevwil leaves the room. | |
| 02:24:01 | RyanTM_ leaves the room. | |
| 02:24:05 | hemulen enters the room. | |
| 02:24:53 | trythil enters the room. | |
| 02:25:06 | VVSiz_ enters the room. | |
| 02:26:19 | boyscout | 1 commit by Vincent Lu |
| 02:26:20 | boyscout | * Shows failed substring in InvalidCharacter error message.; 4489e32 |
| 02:26:56 | hemulen leaves the room. | |
| 02:28:02 | lstoll enters the room. | |
| 02:34:13 | Yurik_ leaves the room. | |
| 02:37:06 | Yurik enters the room. | |
| 02:37:39 | edwardam leaves the room. | |
| 02:38:15 | Yurik_ enters the room. | |
| 02:38:30 | Yurik_ leaves the room. | |
| 02:39:09 | Yurik leaves the room. | |
| 02:39:24 | rubuildius_ppc | Vincent Lu: 4489e320a; 2188 files, 7254 examples, 25973 expectations, 0 failures, 0 errors |
| 02:39:27 | Yurik enters the room. | |
| 02:42:26 | VVSiz leaves the room. | |
| 02:46:24 | rubuildius_amd64 | Vincent Lu: 4489e320a; 2188 files, 7232 examples, 25917 expectations, 1 failure, 0 errors; http://rafb.net/p/tNnDJS78.html |
| 02:46:25 | rubuildius_amd64 | Evan Phoenix: 4a2cb0387; 2188 files, 7232 examples, 25917 expectations, 1 failure, 0 errors; http://rafb.net/p/idvScm48.html |
| 02:47:09 | shame enters the room. | |
| 02:56:07 | michalw leaves the room. | |
| 02:56:26 | wmoxam enters the room. | |
| 03:00:00 | atduskgreg enters the room. | |
| 03:17:17 | RyanTM enters the room. | |
| 03:17:58 | RyanTM_ enters the room. | |
| 03:22:59 | xhanjian_ enters the room. | |
| 03:24:12 | atduskgreg leaves the room. | |
| 03:30:42 | cored leaves the room. | |
| 03:32:56 | mernen enters the room. | |
| 03:33:56 | oliver_ enters the room. | |
| 03:35:50 | xhanjian leaves the room. | |
| 03:36:16 | wmoxam leaves the room. | |
| 03:36:45 | ShayArnett enters the room. | |
| 03:39:15 | moofbong leaves the room. | |
| 03:42:38 | sambo82 enters the room. | |
| 03:42:52 | moofbong enters the room. | |
| 03:45:02 | jeremydurham leaves the room. | |
| 03:55:04 | lstoll_ enters the room. | |
| 03:57:15 | wycats enters the room. | |
| 04:00:05 | trythil leaves the room. | |
| 04:04:37 | lstoll leaves the room. | |
| 04:10:13 | jbarnette enters the room. | |
| 04:13:55 | trythil enters the room. | |
| 04:16:45 | nicksieger leaves the room. | |
| 04:22:50 | oliver_ leaves the room. | |
| 04:31:15 | nicksieger enters the room. | |
| 04:34:09 | RyanTM leaves the room. | |
| 04:34:22 | RyanTM_ leaves the room. | |
| 04:35:50 | hemulen enters the room. | |
| 04:43:35 | ezmobius enters the room. | |
| 04:43:47 | nicksieger leaves the room. | |
| 04:44:47 | nicksieger enters the room. | |
| 04:47:33 | trythil leaves the room. | |
| 04:56:51 | trythil enters the room. | |
| 05:01:22 | carllerche leaves the room. | |
| 05:03:41 | boyscout | 2 commits by Cezar Sa Espinola |
| 05:03:43 | boyscout | * Removing fail tags from most subtend specs (only 1 failing spec left!); 21ac763 |
| 05:03:43 | boyscout | * Fixing gc when using Data_Wrap_Struct with null mark and free functions.; 98a1b19 |
| 05:15:34 | ShayArnett leaves the room. | |
| 05:17:20 | rubuildius_ppc | Cezar Sa Espinola: 21ac76333; 2188 files, 7267 examples, 25998 expectations, 0 failures, 0 errors |
| 05:18:53 | rubuildius_amd64 | Cezar Sa Espinola: 21ac76333; 2188 files, 7245 examples, 25942 expectations, 1 failure, 0 errors; http://rafb.net/p/xafc5699.html |
| 05:24:44 | oliver_ enters the room. | |
| 05:26:33 | oliver_ leaves the room. | |
| 05:29:45 | trythil_ enters the room. | |
| 05:29:56 | trythil leaves the room. | |
| 05:40:48 | hemulen leaves the room. | |
| 05:42:12 | nicksieger leaves the room. | |
| 05:50:07 | sambo82_ enters the room. | |
| 05:50:22 | sambo82 leaves the room. | |
| 05:52:18 | obvio171 leaves the room. | |
| 05:52:46 | mernen leaves the room. | |
| 05:53:12 | moofbong leaves the room. | |
| 05:54:59 | headius | anyone here with an interest in subtend? |
| 05:56:36 | tarcieri | has interest in making Ragel parsers not use subtend :) |
| 05:57:08 | headius | yeah |
| 05:57:27 | headius | we now have a library that can load extensions and a contributor is filling out the ruby.h bits for us |
| 05:57:41 | headius | but it's becoming increasingly apparent it's infeasible |
| 05:58:12 | headius | even the smallest extensions twiddle memory directly or expect object references to have a specific structure |
| 05:58:39 | headius | I'm just not sure if it's worth the effort now |
| 05:58:46 | ezmobius | yeah that seems like a rough task trying to support every extension |
| 05:58:48 | mass | sounds painful unless you want to create a higher level interface |
| 05:58:49 | tarcieri | you're talking about binary compatibility iwth MRI? |
| 05:58:50 | headius | performance would be terrible either way |
| 05:58:54 | headius | tarcieri yes |
| 05:58:57 | tarcieri | urgh |
| 05:59:18 | headius | mass even then there's stuff like this from the json gem: if (st_lookup(RHASH(opts)->tbl, tmp, 0)) { |
| 05:59:26 | headius | there's no way we'll ever get that to work under rbx or jruby |
| 05:59:48 | tarcieri | isn't the JSON gem Ragel-generated? |
| 05:59:53 | brixen | headius: what's FFI look like from IR land? |
| 05:59:56 | headius | it is, but it's using that to pull some options |
| 06:00:09 | brixen | I wonder if we should just push FFI seriously and rewrite some of the C extensions |
| 06:00:16 | mass | ouch. |
| 06:00:18 | headius | brixen CLR has an "unsafe" mode where it can directly link to specific libs, so I suspect an FFI layer is just as feasible |
| 06:00:27 | brixen | headius: oh cool |
| 06:00:39 | mass | yu |
| 06:00:47 | mass | err, you also have externals in CLR |
| 06:00:49 | headius | and yes, I'm convinced now we need to start pushing FFI and start a concerted campaign against ruby.h |
| 06:00:53 | mass | makes it stupid simple to call C api |
| 06:01:09 | tarcieri | I mean... I could look at converting the JSON gem to Ragel-generated Rubinius.asm |
| 06:01:31 | brixen | headius: agreed |
| 06:01:54 | headius | tarcieri: I think the need to be able to call C libs is still key though, and that just avoids the issue |
| 06:02:14 | tarcieri | is just of the "less C is better" school of thought |
| 06:02:14 | headius | maybe I'll try to look at jruby-ffi this week |
| 06:02:14 | tarcieri | heh |
| 06:02:24 | headius | wmeissner says it's basically done but needs integration work |
| 06:02:52 | headius | it also introduces a new library that parallels JNA so we'd need to deal with that...but it could be possible to have FFI in JRuby within days |
| 06:03:09 | ezmobius | tarcieri: hows the perf of the Rubinius.asm mongrel parser? |
| 06:03:12 | headius | drbrain and I agreed we also need to provide an FFI for MRI/YARV |
| 06:03:26 | tarcieri | ezmobius: two orders of magnitude below the C extension |
| 06:03:27 | tarcieri | heh |
| 06:03:30 | headius | that would be the last straw and we could really start pushing it |
| 06:03:35 | tarcieri | which should change dramatically with JIT |
| 06:04:15 | headius | tarcieri: is it ruby I could run in JRuby? I'd be curious to repeat the test |
| 06:04:23 | tarcieri | headius: nope |
| 06:04:36 | headius | that's to bad |
| 06:04:44 | tarcieri | it's full of Rubinius.asm |
| 06:04:49 | tarcieri | that lets it do goto in Ruby |
| 06:04:58 | ezmobius | ragel has a mode to output goto machines using Rubinius.asm |
| 06:05:55 | sambo82 enters the room. | |
| 06:06:13 | sambo82_ leaves the room. | |
| 06:06:14 | headius | mmm, I see, that's too bad |
| 06:06:25 | headius | we still have a partial rubinius machine, but no Rubinius.asm support |
| 06:07:03 | tarcieri | you could modify Ragel to generate JVM bytecode :) |
| 06:07:15 | ezmobius | ragel already generates java though doesnt it? |
| 06:07:37 | tarcieri | I'm sure it can generate a table-based FSM using plain vanilla Java |
| 06:08:18 | mass | yes it does, my json4java lib is at its core a ragel-based parser |
| 06:08:37 | tarcieri | I mean, there's already a Mongrel parser for Java |
| 06:09:06 | headius | oh, we have mongrel and hpricot using the java stuff already |
| 06:09:15 | headius | I was just curious to try running the ruby version |
| 06:09:27 | ezmobius | ahh it does output pure ruby but it uses continuations |
| 06:09:31 | tarcieri | yeah, you'd need to have it spit out Ruby that compiles to JVM bytecode |
| 06:09:34 | ezmobius | and is massively slow on mri |
| 06:09:39 | headius | ezmobius: gack |
| 06:09:48 | tarcieri | ezmobius: the Ruby it spits out is horrid |
| 06:09:53 | ezmobius | yeah its fugly |
| 06:10:26 | tarcieri | it's so bad it exposed a Rubinius bug |
| 06:10:26 | tarcieri | heh |
| 06:10:52 | mass | thats good then :) |
| 06:10:58 | mass | its so bad its useful |
| 06:11:05 | tarcieri | I did a little postprocessing to clean it up |
| 06:12:38 | elight enters the room. | |
| 06:12:57 | mass | I think I've had my fill of screencasts for the day |
| 06:23:21 | jbarnette leaves the room. | |
| 06:34:08 | thehcdreamer enters the room. | |
| 06:35:40 | trythil_ leaves the room. | |
| 06:36:03 | trythil enters the room. | |
| 06:40:14 | maharg_ enters the room. | |
| 06:40:32 | elight leaves the room. | |
| 06:41:25 | trythil leaves the room. | |
| 06:41:48 | bitsweat leaves the room. | |
| 06:46:59 | cezarsa_ enters the room. | |
| 06:47:00 | cezarsa leaves the room. | |
| 06:49:37 | boyscout | 1 commit by Vincent Lu |
| 06:49:38 | boyscout | * Removing fail tags from most Iconv specs.; a66f3b6 |
| 06:50:42 | obvio171 enters the room. | |
| 06:54:45 | Skip enters the room. | |
| 06:58:42 | thehcdreamer leaves the room. | |
| 07:00:36 | maharg leaves the room. | |
| 07:02:15 | rubuildius_ppc | Vincent Lu: a66f3b678; 2188 files, 7304 examples, 26090 expectations, 0 failures, 0 errors |
| 07:03:52 | rubuildius_amd64 | Vincent Lu: a66f3b678; 2188 files, 7245 examples, 25942 expectations, 1 failure, 0 errors; http://rafb.net/p/2h0t5B79.html |
| 07:19:51 | shame leaves the room. | |
| 07:21:29 | shame enters the room. | |
| 07:24:02 | blakewatters enters the room. | |
| 07:25:51 | Maledictus enters the room. | |
| 07:44:34 | JonathanT enters the room. | |
| 07:44:48 | JonathanT leaves the room. | |
| 07:48:01 | blakewatters leaves the room. | |
| 07:48:29 | blakewatters enters the room. | |
| 07:51:20 | FoobarWidget enters the room. | |
| 07:51:25 | FoobarWidget | hi guys |
| 07:51:42 | FoobarWidget | was there a talk on RailsConf on mod_rubinius? |
| 07:53:09 | headius | no |
| 07:53:15 | headius | just a vanilla rubinius talk |
| 07:54:17 | FoobarWidget | ah. I thought I had missed something, but apparently not |
| 07:55:06 | FoobarWidget | how did your talk go headius? :) |
| 07:56:08 | blakewatters leaves the room. | |
| 07:56:11 | headius | I just did a little 10-min keynote which seemed to go pretty well and we had an open Q/A session on JRuby that went well |
| 08:07:06 | tarcieri | tries to decide if Railsconf would've actually been worth going to |
| 08:07:36 | hemulen enters the room. | |
| 08:08:07 | wycats | tarcieri: it would have |
| 08:09:09 | maharg | I really liked the jruby session. It was the highlight of the last two days for me. Was pretty disapointed with everything else I saw on those two days |
| 08:09:26 | tarcieri | I'm not doing Rails anymore |
| 08:09:35 | maharg | I've never done rails heh |
| 08:09:36 | tarcieri | or web development in general |
| 08:09:36 | tarcieri | so |
| 08:09:40 | wycats | maharg: :( |
| 08:09:48 | tarcieri | is on the client side of the web |
| 08:09:54 | wycats | maharg: did you see my talk? |
| 08:09:56 | maharg | I went for the alt-implementation stuff |
| 08:10:02 | maharg | which was yours? |
| 08:10:17 | tarcieri | I've never been to a RailsConf... I think RubyConfs are more up my alley |
| 08:10:19 | wycats | DataMapper |
| 08:10:21 | tarcieri | cheaper too |
| 08:11:07 | maharg | no, didn't see datamapper. The coworker I went with did, though, and thought it was good though. He asked the question about sharding. |
| 08:11:18 | tarcieri | although Florida seems a bit far out there |
| 08:11:47 | wycats | maharg: ah |
| 08:11:47 | maharg | he didn't agree with the answer though :P |
| 08:11:50 | wycats | tricky question |
| 08:11:51 | wycats | yeah |
| 08:11:53 | wycats | I don't either |
| 08:11:58 | wycats | not sure if he could tell ;) |
| 08:12:14 | maharg | heh |
| 08:12:18 | wycats | but Sam's argument is that sharding is a complex technique that doesn't let itself well to 80-20 |
| 08:12:28 | wycats | and that the people who will likely use the built-in support won't need it |
| 08:12:41 | maharg | we built our own framework from the ground up and have it aware of sharding at pretty much every level |
| 08:12:42 | tarcieri | likes databases which use a tuplespace |
| 08:12:55 | tarcieri | autosharding |
| 08:13:08 | tarcieri | peer-to-peer distributed |
| 08:13:37 | maharg | though tbh most of the awareness is lower level than our orm layer. It's mostly in our sql abstraction |
| 08:13:46 | wycats | maharg: it would not be hard, at all, to add sharding-awareness of DM |
| 08:13:59 | wycats | we already support joins across multiple repositoriesw |
| 08:14:03 | wycats | repositories |
| 08:16:07 | qwert666 enters the room. | |
| 08:21:26 | maharg leaves the room. | |
| 08:21:35 | thehcdreamer enters the room. | |
| 08:21:44 | maharg enters the room. | |
| 08:22:19 | maharg | blah my tubes are so clogged tonight. I think I brought the 'bad wifi' bug back home with me |
| 08:23:33 | wycats | haha |
| 08:23:44 | wycats | maharg: so was sharding like a make-or-break for him? |
| 08:23:54 | maharg | what's the last thing you say me say? |
| 08:24:53 | wycats | ? |
| 08:25:00 | wycats | though tbh... |
| 08:25:24 | maharg | 01:18 < maharg> unfortunately the boat has kind of already passed for us |
| 08:25:25 | maharg | 01:18 < maharg> when we switched to ruby, there was really just activerecord and some very immature projects. And we found it unlikely we'd be able to sanely modify activerecord to do it |
| 08:25:30 | maharg | 01:19 < maharg> but I think it was interesting to see how other non-activerecord frameworks are doing things. It sounded like datamapper's a lot like what we built up |
| 08:25:39 | wycats | heh |
| 08:25:40 | wycats | awesome |
| 08:26:18 | nullstyle leaves the room. | |
| 08:26:52 | maharg | but yeah, sharding is definitely required for us |
| 08:27:17 | maharg | 15 database servers split by user livejournal-style |
| 08:28:00 | wycats | yeah |
| 08:28:01 | ezmobius leaves the room. | |
| 08:28:04 | wycats | would be trivial to add to DM |
| 08:28:09 | wycats | maybe I'll bug ssmoot about it again |
| 08:31:39 | maharg | we tend to think that lack of ability to properly scale your database (beyond the pretty brutal method of distributing reads to slaves) is a bigger part of ruby/rails scaling issues than it's given credit for |
| 08:32:35 | wycats | maharg: it's not like it's hard to add such a solution on top of something like DM |
| 08:32:44 | wycats | how does Hibernate handle it? |
| 08:33:19 | maharg | I can't see it being anything but clunky on top. There are a lot of assumptions about how to connect to the database in most orm frameworks |
| 08:33:28 | maharg | and they don't tend to play nicely with sharding |
| 08:33:45 | wycats | maharg: DM is written with multiple repositories as a central notion |
| 08:36:54 | maharg | cool. I'll have to take a closer look at it some time |
| 08:38:17 | wycats | :) |
| 08:38:18 | wycats | yeah |
| 08:38:30 | wycats | I'll see what I can do about at least adding the appropriate hooks for sharding |
| 08:38:33 | gnufied_ enters the room. | |
| 08:38:37 | wycats | like I said, the infrastructure is there |
| 08:38:46 | wycats | maharg: do you know how hibernate handles sharding? |
| 08:39:03 | maharg | nope |
| 08:39:09 | wycats | http://www.hibernate.org/414.html |
| 08:39:13 | wycats | I'll show this to Sam |
| 08:39:16 | wycats | he respects hibernate |
| 08:45:03 | shame leaves the room. | |
| 08:53:10 | mutle enters the room. | |
| 08:54:17 | Arjen_ enters the room. | |
| 08:59:22 | edwardam enters the room. | |
| 08:59:24 | shame enters the room. | |
| 09:01:14 | maharg leaves the room. | |
| 09:01:28 | maharg enters the room. | |
| 09:05:35 | brainopia enters the room. | |
| 09:29:56 | imajes_ enters the room. | |
| 09:40:03 | brainopia leaves the room. | |
| 09:40:08 | qwert666 leaves the room. | |
| 09:42:01 | lstoll leaves the room. | |
| 09:44:05 | michalw enters the room. | |
| 09:59:15 | krisps enters the room. | |
| 10:08:48 | radarek enters the room. | |
| 10:11:04 | octopod enters the room. | |
| 10:22:10 | antares_ enters the room. | |
| 10:23:44 | be9 enters the room. | |
| 10:24:50 | FoobarWidget leaves the room. | |
| 10:47:04 | chris2 enters the room. | |
| 10:54:09 | lstoll enters the room. | |
| 11:03:26 | krisps leaves the room. | |
| 11:05:09 | krisps enters the room. | |
| 11:08:53 | jtoy leaves the room. | |
| 11:11:19 | krisps leaves the room. | |
| 11:12:28 | krisps enters the room. | |
| 11:18:15 | benny enters the room. | |
| 11:23:14 | imajes_ leaves the room. | |
| 11:48:15 | qwert666 enters the room. | |
| 11:59:23 | jero5 leaves the room. | |
| 12:15:03 | olabini enters the room. | |
| 12:19:32 | hemant__ enters the room. | |
| 12:25:15 | _mutle enters the room. | |
| 12:27:56 | gnufied leaves the room. | |
| 12:29:38 | antares_ leaves the room. | |
| 12:40:26 | mutle leaves the room. | |
| 12:42:29 | benny leaves the room. | |
| 12:43:28 | benny enters the room. | |
| 12:43:47 | charlenopires enters the room. | |
| 12:43:49 | NoKarma enters the room. | |
| 12:46:03 | Yurik leaves the room. | |
| 12:48:02 | RyanTM enters the room. | |
| 12:48:11 | RyanTM_ enters the room. | |
| 12:52:47 | tim_w enters the room. | |
| 12:55:14 | chris2 leaves the room. | |
| 13:05:58 | gnufied enters the room. | |
| 13:05:58 | hemant__ leaves the room. | |
| 13:18:39 | charlenopires leaves the room. | |
| 13:22:24 | charlenopires enters the room. | |
| 13:27:54 | gnufied_ leaves the room. | |
| 13:29:00 | michalw leaves the room. | |
| 13:29:58 | RyanTM leaves the room. | |
| 13:30:46 | RyanTM_ leaves the room. | |
| 13:31:17 | RyanTM enters the room. | |
| 13:31:47 | RyanTM_ enters the room. | |
| 13:43:28 | gnufied_ enters the room. | |
| 13:43:40 | gnufied leaves the room. | |
| 13:46:56 | xhanjian enters the room. | |
| 13:49:21 | blakewatters enters the room. | |
| 13:50:27 | xhanjian leaves the room. | |
| 13:53:51 | ShayArnett enters the room. | |
| 14:05:08 | wmoxam enters the room. | |
| 14:05:45 | boyscout | 1 commit by Arthur Schreiber |
| 14:05:46 | boyscout | * Updated MSpec source to fdcdcd35.; 5fbe1f8 |
| 14:13:13 | pauldix enters the room. | |
| 14:13:38 | AndrewO enters the room. | |
| 14:15:14 | qwert666_ enters the room. | |
| 14:18:37 | rubuildius_ppc | Arthur Schreiber: 5fbe1f8eb; 2188 files, 7304 examples, 26090 expectations, 0 failures, 0 errors |
| 14:21:26 | benny leaves the room. | |
| 14:29:52 | nrlzd enters the room. | |
| 14:32:31 | Arjen_ leaves the room. | |
| 14:32:39 | qwert666 leaves the room. | |
| 14:38:41 | foysavas leaves the room. | |
| 14:39:37 | atmos enters the room. | |
| 14:41:38 | Yurik_ enters the room. | |
| 14:46:26 | oliver___ enters the room. | |
| 14:58:52 | macournoyer enters the room. | |
| 14:58:57 | lstoll leaves the room. | |
| 14:59:31 | moofbong enters the room. | |
| 15:01:10 | wmoxam leaves the room. | |
| 15:01:13 | wmoxam enters the room. | |
| 15:03:01 | obvio171 leaves the room. | |
| 15:05:42 | foysavas enters the room. | |
| 15:06:34 | oliver___ leaves the room. | |
| 15:07:00 | antares enters the room. | |
| 15:13:10 | yugui leaves the room. | |
| 15:21:00 | benny enters the room. | |
| 15:25:56 | kAworu leaves the room. | |
| 15:26:23 | kAworu enters the room. | |
| 15:27:15 | rubuildius_amd64 | Arthur Schreiber: 5fbe1f8eb; 2188 files, 7245 examples, 25942 expectations, 1 failure, 0 errors; http://rafb.net/p/1U10fe90.html |
| 15:32:01 | kAworu leaves the room. | |
| 15:38:39 | kAworu enters the room. | |
| 15:38:41 | oliver___ enters the room. | |
| 15:42:00 | hemulen leaves the room. | |
| 15:47:08 | antares leaves the room. | |
| 15:48:31 | nullstyle enters the room. | |
| 15:50:43 | kAworu leaves the room. | |
| 15:55:56 | kAworu enters the room. | |
| 15:58:16 | octopod leaves the room. | |
| 16:00:23 | lopex enters the room. | |
| 16:02:59 | therealadam enters the room. | |
| 16:03:17 | benny leaves the room. | |
| 16:06:03 | gnufied_ leaves the room. | |
| 16:09:36 | octopod enters the room. | |
| 16:16:10 | benburkert enters the room. | |
| 16:20:33 | gnufied enters the room. | |
| 16:28:59 | enebo enters the room. | |
| 16:33:13 | nullstyle leaves the room. | |
| 16:43:31 | hemulen enters the room. | |
| 16:44:08 | hemulen leaves the room. | |
| 16:44:11 | hemulen enters the room. | |
| 16:45:41 | rue leaves the room. | |
| 16:47:16 | elight enters the room. | |
| 16:48:52 | nexcastellan enters the room. | |
| 16:48:52 | dgtized leaves the room. | |
| 16:49:24 | anonuser enters the room. | |
| 16:49:41 | jlindley enters the room. | |
| 16:53:21 | MontyGS enters the room. | |
| 16:55:21 | jbarnette enters the room. | |
| 16:56:00 | nullstyle enters the room. | |
| 16:58:26 | sambo82 leaves the room. | |
| 17:07:46 | bricolage enters the room. | |
| 17:19:46 | yugui enters the room. | |
| 17:26:00 | mutle leaves the room. | |
| 17:30:42 | macournoyer leaves the room. | |
| 17:30:57 | jbarnette leaves the room. | |
| 17:34:52 | benstiglitz enters the room. | |
| 17:35:50 | scoopr | http://rubystuff.org/ludicrous/ o_O |
| 17:39:40 | evan | yeah |
| 17:39:44 | evan | i've heard him talk about i.t |
| 17:42:03 | scoopr | didn't quite get the gist of it from the description |
| 17:42:28 | scoopr | that might be because I'm unsure what libjit actually does |
| 17:42:53 | scoopr | except, that it does jit =) |
| 17:43:35 | evan | yeah |
| 17:43:46 | evan | it's a simple C library for generating and execute machine code |
| 17:44:58 | scoopr | is it usably good at it? |
| 17:45:14 | evan | it's ok. |
| 17:45:19 | evan | it's the most basic |
| 17:45:22 | evan | no optimizations |
| 17:45:37 | evan | the API is nice |
| 17:45:55 | evan | it's a similar API setup to LLVM actually |
| 17:46:49 | scoopr | any reason to use it over llvm, except perhaps simplicity? |
| 17:47:08 | evan | i've used it before actually |
| 17:47:20 | evan | it had an incompatable license and wasn't being maintained for a long time |
| 17:50:06 | thehcdreamer leaves the room. | |
| 17:51:29 | macournoyer enters the room. | |
| 17:51:55 | krisps enters the room. | |
| 17:55:05 | d2dchat leaves the room. | |
| 18:04:01 | atduskgreg enters the room. | |
| 18:11:53 | wycats leaves the room. | |
| 18:12:28 | jbarnette enters the room. | |
| 18:14:47 | enebo leaves the room. | |
| 18:19:16 | nexcastellan | I just created a ticket and I'm not sure my patch made it. Can someone please quickly look at http://rubinius.lighthouseapp.com/projects/5089-rubinius/tickets/584 and let me know if there's an attached (trivial) patch? Please and thank you. |
| 18:22:29 | anonuser | There is an attached patch |
| 18:22:52 | nexcastellan | Thank you. |
| 18:22:53 | jlindley leaves the room. | |
| 18:22:53 | anonuser | http://rubinius.lighthouseapp.com/attachments/25697/0001-OS-X-fink-section-points-to-a-URL-which-n o-longer-ex.patch |
| 18:23:00 | anonuser | Does that look correct? |
| 18:23:13 | JonathanT enters the room. | |
| 18:23:25 | anonuser | Well bbl Taco time! |
| 18:23:28 | JonathanT leaves the room. | |
| 18:23:29 | nexcastellan | Yes. I just missed the "attachments" section on the lighthouse page. I was expecting it to be in a different place. :) |
| 18:23:55 | octopod leaves the room. | |
| 18:29:10 | jlindley enters the room. | |
| 18:30:50 | wycats enters the room. | |
| 18:35:11 | dbussink | time to go to the airport, yay for a 10 hour flight :( |
| 18:35:26 | evan | dbussink: have a good flight! |
| 18:35:39 | evan | it was tons of fun seeing and hanging out with ya |
| 18:35:48 | dbussink | evan: did you take a look at the c++ stuff i made during these days? |
| 18:36:02 | evan | did you commit it? |
| 18:36:10 | dbussink | yeah, it's all in |
| 18:36:22 | evan | k |
| 18:36:24 | evan | i didn't |
| 18:36:25 | evan | i'll look now. |
| 18:36:55 | evan | oh.. |
| 18:36:58 | evan | lots of commits! |
| 18:36:58 | evan | yay~ |
| 18:38:06 | dbussink | i have 450 tests now :) |
| 18:38:14 | evan | sweeeeet! |
| 18:38:30 | evan | i love having tests for the VM |
| 18:38:31 | dbussink | pretty much covered all the stuff i wrote |
| 18:38:40 | dbussink | plus added some where stuff was missing |
| 18:38:53 | octopod enters the room. | |
| 18:39:41 | anonuser | Taco time was not that great :( |
| 18:40:17 | dbussink | anonuser: it came out the same route as it got in? :P |
| 18:40:30 | evan | hah |
| 18:40:47 | anonuser | dbussink, no. |
| 18:40:58 | anonuser | It tasted funny. |
| 18:41:05 | JonathanT enters the room. | |
| 18:41:11 | JonathanT leaves the room. | |
| 18:41:14 | enebo enters the room. | |
| 18:41:18 | anonuser | dbussink, though I wouldn't be surprised. I'm vegan and it tasted really odd. |
| 18:42:28 | dbussink | evan: i'd love to get the ruby benchmarks running against these new primitives, i got them simplified quite a bit in various places |
| 18:42:48 | evan | ok |
| 18:42:56 | evan | we should be able to get to that soon |
| 18:44:15 | anonuser | A bit off topic, as usual, but does anyone have experience with pulseaudio and bluetooth headphones? |
| 18:45:22 | evan | dbussink: do you fly direct back? |
| 18:48:10 | dbussink | evan: yeah, straight flight to amsterdam, pretty nice |
| 18:49:44 | evan | nice. |
| 18:51:17 | benny enters the room. | |
| 18:53:08 | gnufied | anonuser, get rid of pulseaudio. ;) |
| 18:53:22 | anonuser | gnufied, it works the best with bluetooth believe it or not. |
| 18:54:00 | anonuser | I get flashsupport with the thing. and I don't have to worry about rerouting gstreamer audiosinks |
| 18:54:20 | gnufied | are you on fedora? |
| 18:54:25 | anonuser | No |
| 18:54:41 | anonuser | Ubuntu. The only distro that installed with ease :( |
| 18:55:01 | anonuser | FreeBSD doesn't boot on this machine, and I had to get rid of wireless to make linux work. |
| 18:55:10 | anonuser | damn shoddy rt61pci driver :( |
| 18:55:13 | dbussink | but i've got to go, see you ppl later |
| 18:59:24 | jlindley leaves the room. | |
| 19:00:58 | rue enters the room. | |
| 19:04:57 | JonathanT enters the room. | |
| 19:14:14 | gnufied leaves the room. | |
| 19:16:58 | vertiginous enters the room. | |
| 19:18:38 | xhanjian_ leaves the room. | |
| 19:19:24 | mass | I'm constantly surprised by methods which are part of rails rather than core ruby |
| 19:20:00 | evan | like? |
| 19:20:04 | mass | index_by |
| 19:20:31 | evan | yeah, it's funny how thats worked |
| 19:20:41 | evan | because rails has moved so much faster than 1.8 |
| 19:20:48 | evan | it's added all these methods people have always wanted. |
| 19:21:02 | benny leaves the room. | |
| 19:21:35 | mass | the implementation is pretty dirt simple as well |
| 19:22:45 | cezarsa | evan: one subtend question, isn't subtend_wrap_struct() supposed to set obj->obj_type = WrapsStructType? |
| 19:22:57 | evan | i think so |
| 19:23:02 | evan | kevinclark added that |
| 19:23:07 | evan | and it hasn't been touched much since |
| 19:24:17 | cezarsa | hm ok, I'll try adding RDATA and RDATA_PTR, so I'll set the obj_type to know how to copy data back to the object |
| 19:24:44 | evan | k |
| 19:24:55 | evan | that sounds like the right way to do that |
| 19:26:56 | drbrain | http://webkit.org/specs/squirrelfish-bytecode.html |
| 19:27:00 | drbrain | neat |
| 19:27:13 | evan | cool |
| 19:27:19 | evan | yeah, it's all register based |
| 19:27:30 | evan | with auto-windowing |
| 19:27:43 | evan | which means that functions don't have to save and restore registers between function calls |
| 19:27:46 | evan | thats handled for them |
| 19:31:20 | thehcdreamer enters the room. | |
| 19:31:49 | xhanjian enters the room. | |
| 19:33:03 | mass | squirrelfish? |
| 19:33:07 | mass | wtf is a squirrelfish? :) |
| 19:33:32 | JonathanT leaves the room. | |
| 19:33:34 | mass | hmm |
| 19:33:42 | mass | that barely even looks like a fish, let alone a squirrel |
| 19:34:00 | mass | (looking at real squirrelfish picts) |
| 19:34:09 | cezarsa | http://images.google.com/images?q=squirrelfish |
| 19:34:20 | mass | yep :) |
| 19:34:34 | mass | wow thats a big boost |
| 19:34:46 | mass | I didn't know they were working on such a thing |
| 19:37:18 | benstiglitz leaves the room. | |
| 19:38:22 | robin_dewd enters the room. | |
| 19:38:57 | benstiglitz enters the room. | |
| 19:39:44 | drbrain | new JS interpreter for webkit |
| 19:40:00 | drbrain | the name follows Mozilla's SpiderMonkey |
| 19:40:40 | jbarnette | if only it didn't suck so hard for cross-platform embedding -- we really wanted to add it to Johnson |
| 19:41:40 | anonuser | http://webkit.org/blog/ |
| 19:41:49 | anonuser | That gives a lowdown on squirrelfish |
| 19:45:37 | rue | Hello |
| 19:46:07 | evan | rue: allo. |
| 19:47:48 | michalw enters the room. | |
| 19:49:10 | mass | I'm bugging #webkit about it. Apparently they have a P1/Critical bug now regarding the lack of T-shirts |
| 19:52:27 | zenspider | haha |
| 19:54:05 | evan | ha |
| 19:57:01 | gnufied enters the room. | |
| 19:57:05 | cezarsa | wondering how great a rubinius T-shirt would be :) |
| 19:58:01 | jicksta enters the room. | |
| 19:59:24 | nicksieger enters the room. | |
| 20:00:44 | evan | cezarsa_: i think we're going to make some |
| 20:00:48 | evan | we did for railsconf last year |
| 20:01:40 | wycats | is there a way to insert a module between a class and a module that was already included? |
| 20:01:45 | wycats | in the method lookup chain |
| 20:02:07 | evan | you can break the chain and insert it manually, sure. |
| 20:02:40 | wycats | how? |
| 20:03:00 | evan | check out IncludedModule in kernel/bootstrap |
| 20:03:08 | evan | you'll make one |
| 20:03:09 | anonuser | You should put some Rubinius shirts up for sale. |
| 20:03:17 | benny enters the room. | |
| 20:03:17 | evan | and hook it in where you want it manually |
| 20:03:29 | evan | by looking up direct_superclass to where you want it |
| 20:03:36 | evan | then pointing the left to your new object |
| 20:03:39 | wycats | nice |
| 20:03:46 | evan | and the new object's superclass to old super |
| 20:03:53 | evan | basic linked list insertion |
| 20:04:04 | wycats | damn you and your pure-ruby implementation ;) |
| 20:04:10 | anonuser | mmmm basic somewhat fast datastructures. |
| 20:07:35 | krisps leaves the room. | |
| 20:09:14 | mass | I want a rubinius shirt too |
| 20:09:54 | mass | shall I go to lighthouse? :) |
| 20:10:00 | evan | heh |
| 20:10:12 | cezarsa | I would certanly order a rubinius shirt here from Brazil :) |
| 20:10:31 | mass | maybe a [PATCH] with a .eps file |
| 20:10:36 | evan | hah |
| 20:16:09 | trythil enters the room. | |
| 20:16:22 | ShayArnett leaves the room. | |
| 20:19:14 | trythil_ enters the room. | |
| 20:19:14 | trythil leaves the room. | |
| 20:37:29 | yugui leaves the room. | |
| 20:41:09 | krisps enters the room. | |
| 20:43:36 | ezmobius enters the room. | |
| 20:51:32 | nexcastellan | Should bin/mspec ci -B full.mspec be expected to fail with an error about AF_INET6 (full error can be posted) on my OS X 10.5 laptop which does not use IPv6? |
| 20:52:18 | Defiler | It happens, but it shouldn't |
| 20:52:42 | Defiler | On Mac OS you get back the ::1 crap instead of 127.0.0.1 sometimes, but I don't understand the scenario yet well enough to fix the spec |
| 20:52:52 | drbrain | it may be due to the 10.5.3 changes, too |
| 20:55:09 | nexcastellan | ::1 is a reasonable result under IPv6, no? |
| 20:55:41 | drbrain | oh, and I don't think you can turn off IPv6 on lo0 on OS X |
| 20:55:47 | drbrain | only on your real interfaces |
| 20:55:59 | benburkert leaves the room. | |
| 20:56:12 | pauldix_ enters the room. | |
| 20:56:22 | nexcastellan | Probably true, the return value does seem to indicate that IPv6 is active. :) |
| 20:56:23 | drbrain | at least, there's no UI for it I've found in the Network Pref Pane |
| 20:56:23 | pauldix leaves the room. | |
| 20:57:58 | drbrain | yes, you should always receive an IPv6 address on lo0 |
| 20:58:11 | olabini leaves the room. | |
| 20:58:13 | drbrain | (unless you find some utility to disable it) |
| 20:59:57 | TheVoice enters the room. | |
| 21:00:15 | radarek leaves the room. | |
| 21:01:45 | Defiler | We should just change that spec to be 'should be either 127.0.0.1 or ::1' |
| 21:01:46 | Defiler | probably |
| 21:06:00 | be9 leaves the room. | |
| 21:07:52 | krisps_ enters the room. | |
| 21:08:25 | anonuser | Quick question, is rubinius supporting 1.9 at all? |
| 21:08:40 | evan | nah |
| 21:08:45 | evan | we haven't spent any time on it |
| 21:08:56 | nexcastellan | Actually, if I am reading the output properly, the output I am getting is '["AF_INET6", 80, "localhost", "fe80::1%lo0", 30, 2, 17]'. The problem is the fourth param, fe80::1%lo0, while the expected output only includes ::1. |
| 21:08:59 | anonuser | okay just checking, I was wondering about the new 1.8.7 release |
| 21:09:12 | evan | we're not going to touch 1.8.7 for a while |
| 21:09:20 | evan | they introduce all kinds of new APIs and stuff |
| 21:09:26 | anonuser | the enumeration support would be one of those things that crosses 1.8 and 1.9 divides |
| 21:09:31 | anonuser | ahh |
| 21:09:31 | benny leaves the room. | |
| 21:09:52 | Defiler | 1.8.7 is the worst thing since 1.8.3 |
| 21:09:54 | Defiler | =( |
| 21:10:04 | anonuser | why do you say that? |
| 21:10:07 | ezmobius | 1.8.7 is very broken |
| 21:10:07 | evan | wasn't in 1.8.5 that everyone skipped? |
| 21:10:09 | VVSiz | Defiler: how so? |
| 21:10:11 | ezmobius | erb doesnt even work |
| 21:10:14 | evan | s/in/it/ |
| 21:10:17 | Defiler | http://svn.ruby-lang.org/repos/ruby/tags/v1_8_7/NEWS |
| 21:10:20 | Defiler | read that file. *shiver* |
| 21:10:27 | evan | they didn't seem to run the tests before releasing |
| 21:10:35 | evan | so tons of incompatibilities and breakages |
| 21:10:48 | evan | not tons |
| 21:10:54 | anonuser | :( |
| 21:11:01 | evan | but 100% more than their should have been |
| 21:11:49 | anonuser | that is odd, minor releases are usually maintenance releases :-\ |
| 21:11:52 | nexcastellan | Forget what I said earlier, I think I'm looking at the wrong bit... |
| 21:12:12 | headius | 1.8.7 is definitely not as minor as it should have been |