Show enters and exits. Hide enters and exits.
| 00:04:10 | haruki_zaemon | Grr. I hate it when MRI does things that aren't in a spec :( |
| 00:06:26 | brixen | haruki_zaemon: you mean some behavior there is no rubyspec for? |
| 00:07:26 | haruki_zaemon | brixen: MRI understands #to_ary on any object, rubinius doesn't. Last time I checked, there was no spec for it. Need to have a look now and see. |
| 00:07:51 | brixen | haruki_zaemon: do you have some code? |
| 00:08:42 | haruki_zaemon | yeah some failing specs |
| 00:16:39 | jvoorhis | what do you mean by 'understands #to_ary on any object'? |
| 00:17:30 | jvoorhis | it's not defined for every object |
| 00:20:06 | haruki_zaemon | jvoorhis: if an object responds to #to_ary, MRI will call it to expand arguments to a block or method call |
| 00:21:47 | evan | haruki_zaemon: we should be calling to_ary in those context |
| 00:21:51 | evan | do you have an example where we don't? |
| 00:22:51 | haruki_zaemon | evan: Yeah, just finding the example... it works _sometimes_ |
| 00:23:11 | evan | until i see otherwise, it works perfectly! |
| 00:23:15 | haruki_zaemon | Hahaha |
| 00:23:17 | haruki_zaemon | Agreed |
| 00:23:18 | haruki_zaemon | :D |
| 00:25:17 | brixen | in the absence of evidence to the contrary, there is no evidence to the contrary :) |
| 00:28:50 | haruki_zaemon | evan: OK, I have an example, albeit obscure: http://gist.github.com/400667 |
| 00:29:18 | evan | thats not very obscure |
| 00:29:27 | evan | we're clearly not calling #to_ary there. |
| 00:29:31 | evan | we'll have to fix that. |
| 00:29:50 | brixen | haruki_zaemon: is there a spec for that? |
| 00:30:10 | haruki_zaemon | brixen: As I said, I couldn't find one last time I looked :) |
| 00:30:15 | brixen | ok |
| 00:30:23 | haruki_zaemon | hence the "I hate it when MRI does stuff that doesn't have a spec" hehee |
| 00:30:39 | brixen | haruki_zaemon: but this is a perfect opportunity to write one! |
| 00:30:55 | brixen | it's like MRI delivered you a little gift in a bento box :) |
| 00:31:00 | haruki_zaemon | Hahaha |
| 00:42:17 | wayneeseguin | brixen: Issue with rvm? |
| 00:42:35 | wayneeseguin | I haven't had any issues reported yet |
| 00:45:25 | haruki_zaemon | brixen: What project should I commit the spec to? |
| 00:45:41 | brixen | wayneeseguin: I don't know of any definitively, just trying to remove moving parts |
| 00:45:51 | brixen | haruki_zaemon: do you have commit rights to rbx? |
| 00:46:10 | haruki_zaemon | no, but happy to fork and submit a patch |
| 00:46:27 | evan | if it's just a spec, a rubyspec patch would be better I think. |
| 00:46:41 | brixen | yeah, rubyspec patch is fine |
| 00:47:54 | haruki_zaemon | ok |
| 00:48:05 | haruki_zaemon | something else to learn :D |
| 00:48:39 | haruki_zaemon | I'll submit a rubyspec ticket |
| 00:49:14 | evan | hrm, ok, nokogiri seems to install fine |
| 00:49:17 | evan | not sure what was up. |
| 00:54:07 | haruki_zaemon | brixen: Where should I add the spec (I've cloned rubyspec) |
| 00:54:26 | haruki_zaemon | brixen: Or should I just submit a ticket with the sample? |
| 00:55:00 | brixen | haruki_zaemon: have a look at the language/yield specs |
| 00:55:20 | brixen | haruki_zaemon: alternatively, you could just file a ticket with the example |
| 00:55:33 | brixen | bbiab... caffeine required |
| 00:56:13 | haruki_zaemon | brixen: Whatever is easiest :) |
| 00:57:28 | haruki_zaemon | ok ticket submitted |
| 00:57:35 | haruki_zaemon | son is awake |
| 01:11:15 | wayneeseguin | brixen: OK, if you identify anything please let me know and I will address it for you. |
| 01:12:03 | evan | wayneeseguin: ok. |
| 01:18:43 | brixen | wayneeseguin: of course :) |
| 01:46:47 | stan | evan: if you're around.. this is what I got yesterday that froze my mac (unicorn/sinatra pbm from before) http://gist.github.com/400709 |
| 01:47:27 | stan | evan: can't reproduce anymore though (plus I dont really look forward to it) |
| 01:48:28 | stan | evan: now when I 'rvm rbx' I get this new problem (works fine with 1.8.7 and 1.9.1) on pid file http://gist.github.com/400694 |
| 01:49:19 | stan | evan: finally, if I remove the need for pid, I get this other error.. http://gist.github.com/400712 |
| 01:49:54 | evan | stan_: ok, you're further along |
| 01:50:01 | evan | i fixed that last error your seeing on master |
| 01:50:09 | evan | if you update, it should work fine. |
| 01:50:15 | stan | evan: all of the above when I run 'unicorn -c unicorn.conf.rb' |
| 01:50:20 | evan | sure |
| 01:53:52 | stan | for the initial issue http://gist.github.com/400021 I'll see with the rvm guys when I have some time, seems more rvm related |
| 02:08:43 | evan | stan_: ok, be sure to bring it up with wayneeseguin |
| 02:28:50 | boyscout | Moved laces tests to spec dir. - 7e9a6e9 - Brian Ford |
| 02:28:51 | boyscout | Removed test dir, use MRI or rubygems tests from the respective repos. - a6ee22c - Brian Ford |
| 02:28:51 | boyscout | Updates for most files under doc directory. - 63553ff - Brian Ford |
| 02:28:59 | brixen | man, we had so much cruft |
| 02:29:16 | brixen | I hope there is nothing terribly misleading under doc now |
| 02:29:25 | brixen | except I did not edit anything in doc/vm yet |
| 02:29:46 | brixen | gotta run... |
| 02:36:50 | boyscout | CI: rubinius: 63553ff successful: 3457 files, 13596 examples, 41216 expectations, 0 failures, 0 errors |
| 03:08:17 | kes | is rubinius support llvm 2.7? |
| 03:32:17 | cremes | kes: no, not until after rubinius 1.0 is released |
| 06:20:26 | brixen | cremes: did you try to build the 0mq C ext with rbx? |
| 06:20:42 | brixen | cremes: also, jruby rsize is 110mb vs 8mb for mri? |
| 06:20:49 | brixen | zoinks |
| 06:42:48 | brixen | cremes: what the eff @ ruby C ext for 2mq? |
| 06:43:03 | brixen | it uses ZMQ_PAIR which is not in 2.0.6 beta |
| 06:59:29 | brixen | cremes: I have the C ext running in rbx |
| 06:59:38 | brixen | cremes: at least until I get to #bind |
| 06:59:56 | brixen | it'd be great to have an actual example of how to use this |
| 07:00:04 | brixen | the wiki is no help :/ |
| 07:21:01 | dbussink | evan: i have a really nice issue for you... |
| 07:21:23 | dbussink | brixen: or you for that matter :) |
| 13:30:16 | cremes | brixen: the jruby rsize is so huge because of its default settings; charlie said i could probably reduce that as low as 20MB and have it work |
| 13:30:20 | cremes | i'll try that this weekend |
| 13:31:04 | cremes | also, i haven't tried building the existing C ext under rbx; i'll give that a go this weekend too |
| 13:31:35 | cremes | and lastly, the docs explaining zmq usage are far from complete or helpful; as usual, code is the best documentation |
| 13:51:32 | lukemelia | new to rubinius. thought I would try out our app. Installed rubinius 1.0.0-rc5 with rvm. But I'm stalled trying to install nokogiri. When I do it, memory consumption shoots to aout 5.5 GB and stays there and the operation doesn't seem to complete. This is on OS X Snow Leopard. Ideas? |
| 14:00:50 | brynary | lukemelia: not a solution, but just a bit of info in case it helps: Nokogiri install worked without issue on my laptop yesterday |
| 14:01:25 | lukemelia | about how long did it take? |
| 14:03:07 | brynary | lukemelia: not long enough for me to notice it during a `bundle install` |
| 14:03:15 | brynary | I'll run it again |
| 14:04:27 | brynary | lukemelia: http://gist.github.com/401179 |
| 14:04:38 | brynary | that's with rbx-head |
| 14:04:41 | cremes | lukemelia: did you use rvm to install rbx or rbx-head? |
| 14:04:42 | brynary | as of yesterday afternoon |
| 14:05:05 | brynary | at this point, rbx-head is only rbx RC + bug fixes right? |
| 14:06:08 | cremes | brynary: as far as i know, that is correct |
| 14:16:58 | lukemelia | cremes: i did rvm install rbx |
| 14:17:10 | lukemelia | and it installed rubinius 1.0.0-rc5 |
| 14:17:39 | cremes | lukemelia: do "rvm install rbx-head" and try to install nokogiri again; head has more fixes than rc5 which is about a week old |
| 14:17:51 | lukemelia | cremes: will do |
| 15:01:47 | lukemelia | cremes: brynary: nokogiri installed fine with rbx-head. thanks |
| 15:05:01 | cremes | you're welcome |
| 15:22:43 | lukemelia | I got a lot farther in setting up our dependencies this time. failures installing the following gems: hpricot, system_timer, curb and raspell. and when I try to load our app, I get a crash from the memcached gem http://gist.github.com/401284 |
| 15:25:01 | kronos_vano | lukemelia, You don't need in system_timer. It is only for Ruby 1.8 |
| 15:25:30 | lukemelia | kronos_vano: cool. scratching that one off the list |
| 15:28:41 | kronos_vano | it is very easy to add rb_big2ull |
| 15:28:51 | kronos_vano | writing the patch |
| 16:03:51 | brixen | cremes: I have the C ext built with rbx and running |
| 16:04:17 | brixen | cremes: I had to change rb_define_alloc_func proto in ruby.h |
| 16:04:45 | brixen | cremes: what I really need is a complete example to test with, could you show me your complete steps you used to run the ffi comparisons? |
| 16:09:05 | evan | morning gents. |
| 16:09:33 | kronos_vano | hi |
| 16:09:35 | Defiler | yarr |
| 16:11:37 | evan | ug. we have a bug in our Numeric tower. |
| 16:11:41 | evan | we define a Numeric#== |
| 16:11:43 | evan | but 1.8 doesn't. |
| 16:11:52 | evan | thats going to have to be fixed post 1.0 |
| 16:12:16 | brixen | :/ |
| 16:12:26 | brixen | we have plenty to fix post 1.0 :) |
| 16:16:08 | cremes | brixen: does your C ext have a perf subdirectory? |
| 16:17:00 | cremes | if so, you need to open 2 terminal windows to run the sample program |
| 16:17:30 | brixen | cremes: doh! it does |
| 16:17:33 | cremes | in one window run "rbx local_lat.rb tcp://127.0.0.1 1024 100"; execute this one first |
| 16:17:38 | brixen | cremes: le'me investigate more |
| 16:17:49 | brixen | cremes: thanks, this is helpful |
| 16:18:06 | cremes | in the second window run "rbx remote_lat.rb tcp://127.0.0.1:5555 1024 100" (add :5555 to the tcp line in the first window) |
| 16:18:09 | kronos_vano | What about rb_big2ull? post 1.0 ? |
| 16:18:14 | brixen | cremes: sweet |
| 16:18:23 | cremes | it should send 100 1024 byte messages between them and print the latency |
| 16:18:30 | evan | kronos_vano: since it's completely missing atm, it can't hurt to add it |
| 16:18:33 | evan | lets see how it's defined... |
| 16:19:16 | kronos_vano | May be this help http://gist.github.com/401339 |
| 16:19:22 | evan | actually, |
| 16:19:29 | evan | big2ull can be an alias for num2ull |
| 16:19:34 | brixen | evan: acceptable? http://gist.github.com/401340 |
| 16:19:35 | kronos_vano | oO |
| 16:19:51 | brixen | evan: I couldn't find any reason it was defined as before, and this fix matches 1.8.7 |
| 16:20:27 | evan | brixen: hrm. please try and build nokogiri, mongrel, and sqlite3 with that change |
| 16:20:39 | evan | as a sanity check. |
| 16:20:53 | brixen | evan: will do |
| 16:21:08 | evan | big2ull is easy |
| 16:21:18 | evan | just call num2ull |
| 16:21:26 | evan | we can do that for 1.0 |
| 16:23:36 | brixen | cremes: woot! http://gist.github.com/401344 |
| 16:23:42 | brixen | cremes: are those good numbers? :) |
| 16:24:41 | cremes | brixen: rerun it and change 100 to 100_000 and repost the results |
| 16:24:50 | cremes | it's too hard to tell on a short run with only 100 msgs |
| 16:25:13 | evan | actually, we've got big2ll |
| 16:25:29 | evan | so i can copy it and change a couple things to add big2ull |
| 16:26:01 | brixen | cremes: ok, will in a sec.. |
| 16:26:06 | cremes | brixen: this next run should be done in under a minute |
| 16:26:38 | brixen | cremes: what happens if I wait longer than a minute to do it? |
| 16:26:42 | brixen | :) |
| 16:27:09 | cremes | kaboom! |
| 16:27:11 | brixen | heh |
| 16:33:09 | evan | T-27 minutes to full code cutoff. |
| 16:33:19 | evan | 10am PDT |
| 16:34:24 | brixen | evan: you install just 'sqlite3'? it's telling me 1.9.1 is required |
| 16:34:39 | brixen | sqlite3-ruby installs |
| 16:34:40 | evan | er. |
| 16:34:41 | evan | yeah |
| 16:34:42 | evan | sqlite3-ruby |
| 16:34:50 | evan | ok, also try 1.3.0.beta.1 |
| 16:35:00 | brixen | k |
| 16:35:05 | evan | you'll need to do --version on the install to get it. |
| 16:35:13 | brixen | mongrel installs |
| 16:36:04 | brixen | 1.3.0beta1 installs |
| 16:36:12 | brixen | is there a nokogiri version I should install? |
| 16:36:34 | evan | latest is fine |
| 16:36:37 | brixen | k |
| 16:36:38 | evan | 1.4.1 I believe. |
| 16:37:13 | brixen | installs |
| 16:38:27 | evan | k |
| 16:38:30 | evan | go ahead and commit it. |
| 16:38:35 | brixen | they all load when I require them |
| 16:38:37 | brixen | ok |
| 16:39:29 | brixen | cremes: when I run this, do I have to worry about activity on the computer? |
| 16:39:46 | brixen | cremes: like, if I'm using flash and 50% of my cpu is burning |
| 16:40:02 | cremes | yes, each instance of ruby will run pretty hot |
| 16:40:15 | cremes | (you must be running flash on OSX) |
| 16:40:17 | cremes | :) |
| 16:40:19 | brixen | cremes: so, I should pretend I'm benchmarking and shut everything down? |
| 16:40:45 | cremes | if you want the numbers to be accurate, yes. otherwise i can give it a shot on my mac pro |
| 16:41:08 | brixen | cremes: well, I'm pushing the fix i needed to install the C ext |
| 16:41:24 | cremes | cool, i can give it a shot a bit later |
| 16:41:25 | brixen | cremes: as soon as the specs finish, so if you wanted to give it a run |
| 16:41:28 | brixen | sweet |
| 16:41:53 | brixen | cremes: as you may guess, I'm feeling competitive with jruby :) |
| 16:42:11 | brixen | cremes: also, really curious about our rsize too |
| 16:43:24 | cremes | of course; competition is good... |
| 16:43:48 | cremes | this weekend i will work up a whole set of latency comparisons between MRI, rbx and jruby for zeromq |
| 16:43:58 | brixen | sweet |
| 16:44:02 | cremes | too bad rbx doesn't have up to date ffi bindings... |
| 16:44:28 | brixen | well, that's a slightly bigger task probably, but I could probably get it working |
| 16:44:38 | brixen | would be interesting to compare our own C ext vs our FFI |
| 16:44:48 | cremes | precisely |
| 16:45:03 | brixen | since we have evan's tomato-based sauce in the FFI callsites :) |
| 16:45:35 | boyscout | Fixed proto for rb_define_alloc_func. - 54dcc04 - Brian Ford |
| 16:46:09 | evan | the ffi api situation sadens me. |
| 16:46:24 | brixen | indeed |
| 16:46:39 | brixen | evan: we should just make our 2.0 api |
| 16:46:49 | brixen | that leaves all existing usage an upgrade path |
| 16:46:56 | evan | well, there are a whole bunch of things that don't work well in the current API |
| 16:46:58 | evan | that I want to fix. |
| 16:47:02 | brixen | right |
| 16:47:12 | brixen | but rather than try to match the divergence |
| 16:47:17 | brixen | just iterate to 2.0 |
| 16:47:24 | brixen | s/match/fix/ |
| 16:47:44 | evan | well, thats pretty harsh for the users |
| 16:47:54 | evan | i'm mainly sad that I didn't have time to help with the MRI port |
| 16:47:55 | brixen | why is that? |
| 16:48:00 | evan | and thusly it went all wild and crazy. |
| 16:48:15 | brixen | users would then have 2 apis and an upgrade path |
| 16:48:30 | brixen | since we don't want to match the divergence as it is |
| 16:49:37 | evan | we don't want to? |
| 16:49:48 | evan | i'm not sure thats true. |
| 16:49:49 | brixen | not all the pointer stuff |
| 16:49:57 | brixen | anyway, just a thought |
| 16:50:02 | evan | i've come around on a few of those things. |
| 16:50:19 | evan | ah crap, that reminds me that I didn't fix finalizers :/ |
| 16:50:22 | evan | oh well, post 1.0 |
| 16:51:24 | boyscout | Add rb_big2ull - 5a658af - Evan Phoenix |
| 16:52:47 | evan | i worked on trying to solve some of the problems I saw in the additions that were made to the FFI API |
| 16:52:59 | evan | and while I can be a stick in the mud about some of them |
| 16:53:11 | evan | users seem to want to use APIs that I think cause problems |
| 16:53:37 | brixen | hmm |
| 16:53:40 | brixen | ok |
| 16:53:57 | brixen | cremes: here's updated numbers http://gist.github.com/401344 |
| 16:54:07 | evan | some of those APIs are definitely more convenient than the alternatives |
| 16:54:13 | evan | so in a way, we should probably support them. |
| 16:54:29 | brixen | of course, there is always a line |
| 16:54:38 | brixen | I'm fine supporting whatever makes good software |
| 16:54:38 | boyscout | CI: rubinius: 54dcc04 successful: 3457 files, 13596 examples, 41216 expectations, 0 failures, 0 errors |
| 16:54:44 | brixen | RHASH() was easy too |
| 16:54:47 | brixen | as a counter argument |
| 16:54:52 | evan | true enough. |
| 16:55:02 | cremes | brixen: very good numbers |
| 16:55:08 | evan | yay! |
| 16:55:13 | brixen | cremes: woot! |
| 16:55:26 | evan | cremes: does the 0mq bindings use a lot of ruby? |
| 16:55:36 | evan | i wondering if the JIT probably kicked in heavy and hard |
| 16:55:46 | cremes | aside from testing the C ext api, that is stressing string creation (and probably the GC too) |
| 16:55:50 | brixen | evan: I'll rerun with -Xint |
| 16:56:01 | evan | ah ok |
| 16:56:04 | evan | so probably not that much ruby |
| 16:56:07 | evan | still good. |
| 16:56:20 | evan | T-4 minutes to code closure. |
| 16:56:28 | cremes | evan: just string creation; it also memcpy's from existing strings to native memory before transmitting |
| 16:56:32 | cremes | so not a lot of ruby |
| 16:56:44 | cremes | and all the ruby is from the C side |
| 16:56:54 | brixen | no appreciable difference, mean latency went to 56.170 |
| 16:56:56 | evan | cremes: using RSTRING()->ptr ? |
| 16:57:02 | cremes | T-3 minutes; history in the making! |
| 16:57:16 | cremes | evan: let me check |
| 16:57:25 | evan | speak now for hold your peace (until 1.0.1) |
| 16:57:29 | evan | er. |
| 16:57:32 | evan | or hold your peace. |
| 16:57:41 | Defiler | so, did I hear that memcache was failing to build? |
| 16:57:47 | Defiler | or was that just a config problem on that system? |
| 16:57:49 | cremes | evan: memcpy (zmq_msg_data (&msg), RSTRING_PTR (msg_), RSTRING_LEN (msg_)); |
| 16:58:06 | evan | gotcha. |
| 16:58:07 | cremes | it's using the macros |
| 16:58:10 | brixen | evan: yeah, it is |
| 16:58:25 | evan | Defiler: it was failing to run because big2ull was missing, I added it. |
| 16:58:29 | brixen | Defiler: failed to resolve a symbol on load, evan's fixed it |
| 16:58:31 | evan | but I'm not going beyond that. |
| 16:58:32 | Defiler | aah, cool |
| 16:58:34 | cremes | on the receive side, it's doing: message = rb_str_new ((char*) zmq_msg_data (&msg), |
| 16:58:34 | cremes | zmq_msg_size (&msg)) |
| 16:58:44 | evan | cremes: ok. |
| 16:58:53 | cremes | so like i said, not a lot of ruby :) |
| 16:58:54 | evan | RSTRING_PTR == RSTRING()->ptr |
| 16:58:56 | evan | really |
| 16:59:09 | evan | since the char* thats returned has to be strongly associated with the string object |
| 17:00:18 | evan | CODE CLOSED |
| 17:00:34 | brixen | extracts fingers just in time |
| 17:01:26 | brixen | unfortunately, we had no sirens and lights and A-team actors to celebrate the occasion |
| 17:01:37 | evan | hah |
| 17:01:40 | brixen | nor any slamming steal doors made of other than steel |
| 17:01:43 | evan | i'm going to run the rails 3 tests again. |
| 17:01:46 | brixen | ok |
| 17:02:29 | cremes | tag it, baby! |
| 17:02:52 | cremes | wonders if this means we can open post 1.0 issues now... |
| 17:03:16 | evan | cremes: once it's really out, then you can. |
| 17:03:27 | evan | OR you could be nice and wait til monday |
| 17:03:31 | evan | and let us bask in the glow all day |
| 17:03:41 | cremes | i'll be extra nice and wait until tuesday |
| 17:03:44 | Defiler | Yeah, way to be a jerk :) |
| 17:04:25 | dbussink | evan: hmm, too bad, just found a tricky one this morning ;) |
| 17:04:33 | evan | dbussink: too late! |
| 17:04:41 | evan | it will have to wait. |
| 17:04:51 | dbussink | evan: but i bet you want to know the details on it ;) |
| 17:04:57 | dbussink | it's probably not an easy fix anyway |
| 17:04:58 | evan | actually, no. |
| 17:05:00 | evan | not really. |
| 17:05:02 | evan | not atm. |
| 17:05:03 | cremes | dbussink: let them bask in the glow!!! |
| 17:05:11 | cremes | can't you feel it? |
| 17:05:15 | brixen | dbussink: you can pm me the issue |
| 17:05:19 | brixen | is a masochist :) |
| 17:05:36 | dbussink | it's the numeric tower btw, just read the back log :0 |
| 17:05:37 | dbussink | :0 |
| 17:05:38 | dbussink | :) |
| 17:05:45 | dbussink | defining Numeric#== |
| 17:05:54 | brixen | dbussink: oh, you're going to be at railsconf right? |
| 17:06:13 | evan | dbussink: yeah, i'm aware of that. |
| 17:06:39 | Defiler | running my rails test suite on this rev myself |
| 17:06:41 | Defiler | almost done |
| 17:06:42 | cremes | it might be fun to produce a bunch of stats concerning the effort to get to rbx 1.0 |
| 17:07:01 | cremes | lines of ruby written, C, C++, prototypes thrown away, rubyspec, etc |
| 17:07:01 | brixen | cremes: you mean, like how many gray hairs I have now? :) |
| 17:07:13 | cremes | brixen: at least you still have hair! |
| 17:07:20 | brixen | cremes: good point! |
| 17:07:22 | cremes | always looking on the bright side |
| 17:07:44 | evan | brixen: also, not fair, but I think I have more than you! |
| 17:07:53 | Defiler | aah, system_timer |
| 17:07:56 | Defiler | that's not supported, right? |
| 17:07:59 | evan | right |
| 17:08:04 | brixen | evan: hah, but yours are hidden in the blond ones |
| 17:08:07 | Defiler | rb_thread_critical aha |
| 17:08:15 | evan | post 1.0 i'm going to work with the system_timer author to make it rbx aware |
| 17:08:22 | evan | basically, it needs to just not do anything on rbx |
| 17:08:24 | evan | since it's not needed |
| 17:08:27 | dbussink | brixen: going to railsconf yeah |
| 17:08:28 | brixen | yes, various gem authors |
| 17:08:33 | brixen | linecache for instance |
| 17:08:35 | evan | if one of you fine contributers want to take point on that |
| 17:08:38 | evan | you're welcome to. |
| 17:08:40 | brixen | dbussink: awesome! |
| 17:09:47 | evan | hehe, got an email via the fonc list for paper submissions for: International Workshop on Smalltalk Technologies |
| 17:09:58 | brixen | nice |
| 17:10:05 | brixen | S3 is in tokyo this year too |
| 17:10:08 | brixen | wants to go |
| 17:11:17 | evan | you should! |
| 17:11:30 | brixen | I'll check into it |
| 17:15:25 | Defiler | man, rbx is amazing now |
| 17:15:33 | evan | ok, rails tests look good. |
| 17:15:58 | evan | oh man, i just got chills editing configure to make the version 1.0.0 |
| 17:16:07 | Defiler | look at this awesomeness: https://gist.github.com/d4c17c10ae8e80ea62fb |
| 17:16:25 | evan | :D |
| 17:16:38 | dbussink | evan: be sure to update the date too :) |
| 17:16:42 | brixen | Defiler: man oh man! :) |
| 17:16:50 | evan | dbussink: I will! |
| 17:17:15 | cremes | somebody ping wayneeseguin about cutting an rvm update! |
| 17:17:27 | brixen | wayneeseguin: ping |
| 17:17:35 | brixen | heh |
| 17:18:20 | Defiler | hrm |
| 17:18:27 | Defiler | when I do script/console, I get unrecognized option --simple-prompt |
| 17:18:54 | evan | Defiler: sounds like it's not starting it right. |
| 17:18:57 | evan | are you using rvm? |
| 17:19:08 | evan | rvm probably needs to use "ruby -S irb" for irb, rather than just "ruby" |
| 17:19:18 | evan | wayneeseguin: poke poke |
| 17:19:22 | dbussink | Defiler: this is probably rails right? |
| 17:19:28 | dbussink | rails passing that option to irb |
| 17:19:35 | dbussink | but ./bin/rbx doesn't accept those options |
| 17:19:39 | Defiler | yeah |
| 17:19:57 | Defiler | evan: yeah, I'm using rvm |
| 17:21:17 | Defiler | so, I've got this initializer that does 'include SomeModule' |
| 17:21:27 | Defiler | expecting include into main to work |
| 17:21:38 | Defiler | but it seems like in rbx, I don't get those constants brought in the same way |
| 17:21:43 | Defiler | working on making sure it isn't me though |
| 17:24:15 | brixen | Defiler: hmm, just toplevel include SomeModule? |
| 17:24:19 | Defiler | yeah |
| 17:24:27 | brixen | a trivial example works |
| 17:24:29 | Defiler | changing it to class Object; include SomeModule; end doesn't change it though |
| 17:24:33 | Defiler | so that's not it |
| 17:24:37 | brixen | codez? |
| 17:24:52 | brixen | any autoloadz in the mix? |
| 17:25:08 | Defiler | no, but let me make you a paste |
| 17:25:12 | brixen | k |
| 17:32:42 | cremes | basking in the glow of helping a new ruby runtime get launched |
| 18:05:10 | boyscout | Update version number for 1.0.0! Break out the champagne! - e6c32af - Evan Phoenix |
| 18:05:17 | evan | website is deploying now. |
| 18:06:50 | brixen | awesome! |
| 18:06:59 | brixen | ^5s all around |
| 18:07:27 | brixen | I actually do have champagne in the fridge, will have to wait till tonight though :) |
| 18:09:59 | evan | who put in an issue right now?! |
| 18:10:02 | evan | come on guys! |
| 18:10:03 | evan | :) |
| 18:10:23 | brixen | haha |
| 18:10:27 | brixen | just saw that too |
| 18:10:34 | evan | it's for some tagged specs. |
| 18:10:35 | evan | no biggy. |
| 18:10:39 | brixen | yeah |
| 18:10:49 | brixen | *obviously* not someone in channel |
| 18:10:54 | brixen | haha |
| 18:12:24 | cremes | whoever opened the issue also included a patch; they have the honor of the first patch to 1.0.1 :P |
| 18:12:35 | dbussink | i wonder how long it will take until someone finds something critical and there will be a 1.0.1 :) |
| 18:12:45 | dbussink | murphy always hits in those cases |
| 18:13:37 | evan | http://skitch.com/evanphx/dd1qw/cam |
| 18:14:21 | boyscout | CI: rubinius: e6c32af successful: 3457 files, 13596 examples, 41216 expectations, 0 failures, 0 errors |
| 18:14:57 | brixen | dbussink: we can't wait for 1.0.1 |
| 18:15:08 | brixen | dbussink: you can't keep the awesome down :) |
| 18:15:38 | cremes | evan: i'm pretty sure i see a grey hair |
| 18:15:50 | evan | cremes: :D |
| 18:15:54 | evan | my beard is turning grey |
| 18:15:59 | evan | but I think thats from leveling up. |
| 18:16:02 | evan | i'm becoming a grey beard. |
| 18:16:03 | cremes | heh |
| 18:16:06 | brixen | haha |
| 18:16:32 | brixen | incidentally, there are lots of graybeards cycling around pdx |
| 18:16:52 | brixen | I'm inclined to think they are either uni lit profs or old unix devs |
| 18:16:59 | brixen | but I haven't dared to ask one yet |
| 18:17:14 | brixen | by cycling, I mean in spandex :) |
| 18:17:30 | evan | you should! |
| 18:17:34 | brixen | I know |
| 18:17:38 | brixen | but they look mean! |
| 18:18:52 | LongLifeRubinius | heh. Now you reopen all tickets marked as post 1.0? |
| 18:20:00 | brixen | LongLifeRubinius: there is a 48 hour moratorium on new tickets after a 1.0 release |
| 18:20:11 | evan | to celebrate! |
| 18:20:13 | tarcieri | OHAI! |
| 18:20:15 | brixen | :) |
| 18:20:21 | tarcieri | congratulations on 1.0! |
| 18:20:24 | LongLifeRubinius | :D |
| 18:20:27 | brixen | tarcieri: ZOMG, thank you! |
| 18:20:40 | jakedouglas | congrats |
| 18:20:45 | brixen | tarcieri: we almost took over the world with Actors, but you abandoned us :P |
| 18:20:52 | brixen | tarcieri: maybe we'll lure you back :) |
| 18:20:55 | tarcieri | does this mean I can completely stop using MRI now and go all Rubinius and JRuby? :) |
| 18:21:02 | cohitre | is the "Announcment" typo on the top link on the rubini.us page intentional? |
| 18:21:03 | tarcieri | brixen: heh, maybe! |
| 18:21:08 | brixen | hahah |
| 18:21:15 | brixen | oh man, did we typo? |
| 18:21:19 | brixen | was the proofreader |
| 18:21:24 | brixen | le sigh :) |
| 18:21:37 | brixen | hah, we did |
| 18:21:39 | brixen | evan! |
| 18:21:56 | brixen | cohitre: that's the evan spelling of Announcement |
| 18:22:06 | brixen | cohitre: it's a dialect of old english :) |
| 18:22:18 | evan | hah |
| 18:22:20 | evan | i'll fix it. |
| 18:22:29 | evan | i'm doing a couple of abby spied typos atm. |
| 18:22:32 | brixen | jakedouglas: thanks man |
| 18:25:28 | tarcieri | Rubinius: Ruby Done Rite Fo Real? |
| 18:25:49 | brixen | heh |
| 18:26:21 | jarib | congratulations guys, awesome work |
| 18:26:25 | evan | thanks! |
| 18:27:12 | evan | so where should I get my rubinius tattoo? |
| 18:27:29 | tarcieri | get a tramp stamp |
| 18:27:39 | cohitre | get a tramp stamp that says "Announcment" |
| 18:28:56 | evan | i'm no tramp! |
| 18:29:39 | Defiler | Just broke out the wine at the office to celebrate the occasion |
| 18:29:43 | vborja | Hey guys, congrats for 1.0 ! |
| 18:29:45 | Defiler | Well done, guys |
| 18:30:00 | brixen | Defiler: many thanks to you as well man |
| 18:30:05 | brixen | vborja: thanks! |
| 18:30:26 | Defiler | You guys did all the hard stuff after I left :) |
| 18:30:35 | brixen | haha, not even |
| 18:31:36 | evan | Defiler: I will never forget when you stood up and said "um, I think that pp just loaded and worked flawlessly..." |
| 18:31:57 | Defiler | That was a fun moment; that was in that Orlando sprint? |
| 18:32:08 | evan | in SF as I recall |
| 18:32:12 | evan | way before the orlando sprint. |
| 18:32:12 | Defiler | oh, right |
| 18:32:53 | evan | ha! and now the issues start showing up. |
| 18:32:55 | evan | oh well! |
| 18:32:57 | evan | thats software for ya. |
| 18:33:02 | brixen | yeah |
| 18:33:05 | Defiler | particularly software ending in .0 |
| 18:33:09 | brixen | a release is just a ticket tease |
| 18:33:13 | brixen | but it works! :) |
| 18:33:22 | dbussink | i still remember Defiler complaining about caller two years ago :) |
| 18:33:30 | wayneeseguin | evan: poke poke, was at lunch |
| 18:33:35 | Defiler | and it still sucks exactly as much :) |
| 18:33:43 | dbussink | but congrats on the release :) |
| 18:33:47 | dbussink | hehe, true :) |
| 18:33:48 | evan | wayneeseguin: could you update rvm to install rbx 1.0? |
| 18:36:41 | wayneeseguin | evan: yeah working on it it's a little trickier than others because of the different 'patchlevel' scheme |
| 18:37:47 | evan | oh? |
| 18:37:50 | evan | sorry about that. |
| 18:39:37 | wayneeseguin | hehe |
| 18:39:47 | wayneeseguin | Biggest 'pain' in RVM is having to accommodate many many url schemes |
| 18:39:51 | wayneeseguin | ree is the worst |
| 18:39:58 | wayneeseguin | because they use rubyforge |
| 18:40:02 | wayneeseguin | and the url is NEVER consistent |
| 18:40:35 | evan | oh, ack, yeah, i removed the -<sub> entirely |
| 18:40:42 | evan | rather than having it be -0 |
| 18:41:33 | evan | well shit. |
| 18:41:36 | evan | what do I do now?! :D |
| 18:41:58 | Defiler | symlink :) |
| 18:42:36 | dbussink | evan: you mean your purpose in life is gone after 1.0? ;) |
| 18:43:28 | malumalu | congratulations for 1.0 :) |
| 18:43:36 | antares | evan: congratulations and thank you for your hard work |
| 18:43:53 | evan | dbussink: i hope not!! |
| 18:43:55 | evan | antares_: thanks! |
| 18:43:58 | evan | malumalu: thanks! |
| 18:52:09 | dbussink | evan: dunno how much people read it, but maybe write something to the google group? |
| 18:52:17 | evan | ah yes |
| 18:52:18 | evan | ok |
| 19:00:26 | brixen | ezmobius is trying to congratulate us, but his IRC messages runneth over :( |
| 19:00:29 | brixen | er :) |
| 19:00:30 | brixen | heh |
| 19:00:44 | LongLifeRubinius | ! |
| 19:01:21 | kronos_vano | ready to work on 1.1 |
| 19:01:30 | brixen | me too |
| 19:01:35 | brixen | also, ready for lunch |
| 19:01:43 | kronos_vano | hah |
| 19:01:54 | lopex | congrats folks! |
| 19:02:01 | brixen | lopex: thank you! |
| 19:02:41 | kronos_vano | brixen, "Приятного аппетита" as Russian talk before eating |
| 19:03:45 | brixen | kronos_vano: ahh cool! |
| 19:05:36 | kronos_vano | 14 May should be "Rubinius hack day". |
| 19:06:00 | brixen | good idea! |
| 19:12:14 | asarih | someone needs to update Wikipedia to commemorate the 1.0.0 release. http://en.wikipedia.org/wiki/Rubinius |
| 19:12:36 | asarih | as you know, until Wikipedia says so, it's not official. |
| 19:12:56 | evan | :D |
| 19:13:41 | asarih | ;-) |
| 19:13:55 | evan | updated! |
| 19:14:19 | asarih | w00t! |
| 19:21:07 | dbussink | evan: you should add datamapper to the supported list :) |
| 19:21:44 | dbussink | evan: running rspec and bundler etc, the whole shebang :) |
| 19:22:05 | evan | ya! |
| 19:25:56 | earcar | YAY! |
| 19:26:58 | evan | :D |
| 19:27:03 | brixen | heh |
| 19:27:09 | brixen | fireworks all around! |
| 19:27:12 | earcar | super awesome! |
| 19:27:17 | earcar | :D |
| 19:37:32 | earcar | 1 question: where are gem binaries on osx by default? |
| 19:38:32 | evan | earcar: use -S <bin> to access them |
| 19:38:46 | evan | we don't put them in a normal dir in your PATH because it's too easy to make a mess. |
| 19:38:59 | earcar | good idea |
| 19:40:52 | dwaite | brixen: poke |
| 19:42:01 | dbussink | evan: just 10000+ datamapper rspec examples through the postgres backend :) |
| 19:42:13 | evan | woo! |
| 19:47:34 | brixen | dwaite: ouch! |
| 19:47:53 | brixen | |Blaze||: thanks! |
| 19:51:05 | dwaite | so happy about this :) |
| 19:56:05 | dbussink | evan: btw, http://rubini.us/about/changelog isn't updated yet either |
| 19:56:17 | dbussink | sorry if i'm spoiling the fun btw :P |
| 20:00:26 | earcar | you are on rvm right now ;) |
| 20:24:25 | jacius | Hi all, congrats on the 1.0 release. :) |
| 20:25:49 | brixen | thanks jacius! |
| 20:30:12 | jacius | I'm hoping to get Rubygame running on Rubinius (using FFI) :D |
| 21:04:31 | jacius | Having trouble compiling 1.0. rbx-build segfaults whenever I run it. :\ https://gist.github.com/1a81976e84bca47cb9ad |
| 21:04:43 | stephenjudkins | how much work would it take to get Rubinius to target the JVM instead of of LLVM? |
| 21:04:57 | dwaite | you mean jruby? |
| 21:05:04 | stephenjudkins | (clearly a lot, but what would have to be done?) |
| 21:06:01 | stephenjudkins | dwaite: jruby's great! i'm curious about rubinius though, since its design seems like it could accommodate multiple backends |
| 21:06:04 | evan | stephenjudkins: lots and lots and lots and lots. |
| 21:06:14 | evan | we only use LLVM for the JIT |
| 21:06:19 | evan | the VM and GC, etc are in C++ |
| 21:06:35 | evan | for the JVM you wouldn't need the GC, but you still need an interpreter |
| 21:06:39 | evan | jruby is pretty much on this track |
| 21:06:47 | evan | they're just not implementing things in ruby |
| 21:06:49 | stephenjudkins | evan: i take it the mapping between rubinius bytecode and JVM bytecode isn't particularly clear either? |
| 21:07:06 | evan | jacius: hm... |
| 21:07:25 | evan | not, not at all. |
| 21:08:13 | stephenjudkins | where can I find a high-level summary of the rubinius VM's design and features? is it register- or stack-based? |
| 21:08:29 | evan | jacius: did you already try and it build it? it appears that libtommath didn't build... |
| 21:08:44 | evan | stephenjudkins: it's stack based |
| 21:09:03 | evan | i don't think i've written a good single summary of the VM in a while |
| 21:09:05 | evan | probably should do that soon |
| 21:09:12 | evan | i'm happy to answer any questions you have though |
| 21:09:17 | evan | i'll incorporate the answers into the summar. |
| 21:09:19 | evan | summary. |
| 21:12:26 | jacius | evan: When I do "rake" again, it gets the same spot, fails when using rbx-build to run extconf.rb in lib/ext/melbourne |
| 21:12:34 | stephenjudkins | i don't have a particularly deep knowledge of VM design or implementation, so forgive my questions |
| 21:12:49 | stephenjudkins | what are the biggest differences between the rubinius VM and the JVM? |
| 21:12:50 | evan | jacius: could you do 'rake distclean; rake' |
| 21:13:14 | evan | stephenjudkins: all the instruction in the rubinius VM are designed for running ruby code |
| 21:13:26 | evan | so, for instance, there is a send instruction, that does a ruby method call |
| 21:14:11 | evan | the JVM, for instance, has a number of invoke instructions, like invokevirtual, which does the java virtual method logic and invocation |
| 21:14:25 | evan | so the instructions are designed for the target language |
| 21:16:14 | stephenjudkins | evan: how realistic would it be for someone not experienced in this stuff to write a very slow, naive implementation of the rubinius VM? |
| 21:16:38 | Defiler | evan: That question is so awesome, ironic, appropriate, and perfect |
| 21:16:40 | evan | probably pretty easy. |
| 21:16:48 | evan | Defiler: :D |
| 21:17:01 | Defiler | because all he has to do is check out 2006 version from the repo |
| 21:17:04 | Defiler | and there you go :) |
| 21:17:04 | evan | stephenjudkins: if you had experience with a VM, then it would be pretty easy probably. |
| 21:17:10 | evan | yep. |
| 21:17:30 | evan | the instructions that require knowledge of object setup, like send, etc are the most complicated |
| 21:17:43 | evan | mainly because they require that you've got stuff like objects, classes, method tables, etc. |
| 21:18:02 | dbussink | the core of it is just a giant case statement ;) |
| 21:18:22 | dbussink | evan: how well are the instructions documented actually? |
| 21:18:43 | stephenjudkins | evan: so the bytecode generator is written in ruby. how does your bootstrapping work? do you use another ruby implementation? |
| 21:19:00 | evan | dbussink: decently, some are missing docs. |
| 21:19:03 | brixen | stephenjudkins: doc/bootstrapping.txt |
| 21:19:20 | brixen | dbussink: most have docs, some don't |
| 21:19:22 | stephenjudkins | brixen: thanks! |
| 21:19:31 | brixen | vm/instructions.def |
| 21:20:16 | brixen | stephenjudkins: there are also some rubinius posts on engine yard's blog that give a high level overview |
| 21:20:52 | brixen | stephenjudkins: if you want to play with a basic ruby vm, there is also tinyrb |
| 21:21:08 | brixen | stephenjudkins: but really, you should play with rubinius :) |
| 21:21:23 | stephenjudkins | brixen: it's a damn cool project. |
| 21:21:30 | Defiler | rbx is definitely a project where starting from an older revision can help you understand it |
| 21:22:01 | stephenjudkins | i've been following the PyPy guys but jesus, their stuff relies on some incredibly sophisticated ideas. |
| 21:25:00 | jacius | evan: "rake distclean" helped, thanks! Looks like it was probably just some cruft from a very old compile. |
| 21:25:18 | evan | jacius: oh good! |
| 21:25:22 | evan | i was hoping so |
| 21:26:54 | kronos_vano | evan, Is method inlining in rubinius something like inline directive in C++? I read article on EY blog but don't understand inlining yet :( |
| 21:27:10 | evan | kronos_vano: yes, it's the same |
| 21:27:19 | kronos_vano | oh. good. |
| 21:27:35 | dbussink | kronos_vano: it's not explicit like the inline directive though |
| 21:27:45 | evan | yes, it's much better than C++'s inline actually |
| 21:27:51 | evan | because it's based on profiled results |
| 21:28:04 | evan | so it can inline methods that are being heavily used now |
| 21:28:08 | evan | rather than the programmer guessing |
| 21:39:59 | dohzya | Hi |
| 21:40:09 | evan | hello. |
| 21:40:48 | dohzya | congratulation ! :-) |
| 21:41:01 | rue | Nicely done |
| 21:41:31 | dohzya | (ok, I have nothing else to say, just I'm happy :p) |
| 21:41:40 | mutle | congrats, rubinius team! |
| 21:41:55 | brixen | thanks folks! |
| 21:42:10 | evan | dohzya: thanks! |
| 21:45:51 | jacius | evan: Just tried a fresh clone (instead of updating my old one), it worked fine. It was definitely just some cruft in my old clone, nothing your fault :) |
| 21:46:21 | evan | ah, wonderful you got it working well. |
| 21:46:58 | evan | it must be morning in japan |
| 21:47:13 | evan | matz and Psych just tweeted about 1.0 |
| 21:47:48 | toulmean | evan: hey, I'm Antoine, just chatted about RJB with you over github messages |
| 21:48:02 | evan | toulmean: ah hello! |
| 21:48:07 | evan | this is a bit easier to chat :) |
| 21:48:13 | brixen | heh, matz double tweeted it, he must be excited :) |
| 21:48:15 | toulmean | sorry again for the misread at first |
| 21:48:16 | toulmean | oh yes |
| 21:48:24 | evan | toulmean: oh, no prob. |
| 21:48:44 | toulmean | evan: ok forking RJB now - how would you identify that it is Rubinius in C code |
| 21:49:06 | brixen | we have a define |
| 21:49:12 | toulmean | apparently I need to change the line #if RJB_RUBY_VERSION_CODE < 190 |
| 21:49:26 | toulmean | to say #if RJB_RUBY_VERSION_CODE < 190 || IS_RUBINIUS |
| 21:49:51 | evan | toulmean: there is a #ifdef you can use directly. |
| 21:49:52 | brixen | #ifdef RUBINIUS |
| 21:50:06 | evan | yep. |
| 21:50:11 | evan | toulmean: you can do |
| 21:50:12 | toulmean | brixen: so || ifdef RUBINIUS ? |
| 21:50:18 | evan | #if .... || defined(RUBINIUS) |
| 21:50:23 | toulmean | ah ok |
| 21:50:28 | toulmean | ok thanks guys. |
| 21:50:30 | toulmean | awesome |
| 21:50:57 | evan | toulmean: as for replacing rjb, we can certainly discuss that |
| 21:51:11 | brixen | is rjb ruby java bridge? |
| 21:51:15 | evan | brixen: yeah. |
| 21:51:19 | brixen | ahh ok |
| 21:51:37 | toulmean | evan: ok. |
| 21:51:56 | toulmean | RJB is a pain in the back to install. |
| 21:52:05 | brixen | toulmean: I want to just run jvm bytecode on the rbx vm :) |
| 21:52:14 | evan | toulmean: jruby is certainly going to have the best story for java integration |
| 21:52:15 | toulmean | I am actually thinking of making buildr completely ruby, and stop doing fancy stuff that requires native libs |
| 21:52:17 | evan | since there is no bridge. |
| 21:52:19 | brixen | but I haven't gotten very far on that project yet |
| 21:52:44 | toulmean | brixen: well you are almost there. With RJB it's possible |
| 21:57:48 | dbussink | nice interface on top of github issues: http://githubissues.heroku.com/#evanphx/rubinius |
| 21:59:19 | JamesKilton | Curious. I'm trying to build a C-ext library of mine that uses st.h with Rbx 1.0, but st.h itself isn't compiling. |
| 21:59:31 | dbussink | evan: btw, that's the plan with stuff like #284, is that tracked somewhere else? so it's not forgotten? |
| 21:59:55 | evan | JamesKilton: hm. we've got a bit of a strange st.h right now |
| 21:59:58 | evan | what issue are you having? |
| 22:00:42 | JamesKilton | i'll gist the compiler output, one sec |
| 22:00:56 | evan | JamesKilton: ok. |
| 22:01:30 | JamesKilton | http://gist.github.com/401724 |
| 22:02:46 | brixen | dbussink: nice? not nice :( terrible |
| 22:03:12 | dohzya | not mac fanboy ? |
| 22:03:34 | brixen | it's a bunch of candy and doesn't even look that good |
| 22:03:36 | dbussink | brixen: my biggest issues with the github interface itself it that it's navigation always borks on various cases for me |
| 22:03:37 | evan | eh? |
| 22:03:42 | evan | what did i miss in that 20 seconds |
| 22:03:44 | dbussink | here it works better imho |
| 22:04:03 | brixen | over 1/2 my screen has nothing to do with the issue txt |
| 22:04:11 | brixen | which is the most important thing |
| 22:04:33 | brixen | anyone who thinks this ui is nice should *not* be writing software that humans use |
| 22:04:36 | brixen | sorry :) |
| 22:04:54 | JamesKilton | you talking about the new Cappucino-built issues interface? |
| 22:05:00 | brixen | yes |
| 22:05:18 | brixen | if that's what http://githubissues.heroku.com/#evanphx/rubinius is |
| 22:05:24 | JamesKilton | yes |
| 22:05:32 | brixen | not a fan |
| 22:05:51 | JamesKilton | i think it's pretty awesome, but I understand your concerns |
| 22:06:07 | dbussink | haven't actually used it, so in that regard i don't know if it works nice :) |
| 22:06:10 | brixen | does no one read alan cooper? |
| 22:06:12 | dohzya | brixen: which is really nice is the techno used. The UI is a question of taste |
| 22:06:22 | toulmean | evan:brixen: http://gist.github.com/401735 |
| 22:06:30 | dbussink | but when clicking through it i had less navigation issues than the github issues pages themselves |
| 22:06:35 | toulmean | got past the first exception, hit the second wave |
| 22:07:03 | dbussink | hmm, found the first issue there too |
| 22:08:03 | toulmean | evan: brixen: pushed the first fix here: http://github.com/atoulme/rjb |
| 22:08:19 | toulmean | I have to step away from kb in 10, will resume hacking at some point. |
| 22:08:24 | evan | toulmean: we don't support RBASIC |
| 22:08:34 | evan | which is what IS_RJB_OBJECT is using |
| 22:08:40 | jacius | Hm, I thought if I did "configure --prefix=/usr/local/", it would install things into /usr/local/bin/, /usr/local/lib/, etc. But it made /usr/local/rubinius/1.0/bin/, etc. |
| 22:08:46 | evan | using RBASIC()->klass is always a bug. |
| 22:08:54 | evan | that code should use rb_obj_class() instead |
| 22:09:03 | toulmean | evan: ok |
| 22:09:11 | toulmean | so if I do a massive replace it will work ? |
| 22:09:12 | brixen | jacius: you have to specify dirs individually, it does not splat stuff in multiple dirs with --prefix |
| 22:09:21 | evan | toulmean: just change the IS_RJB_OBJECT macro |
| 22:09:26 | jacius | Okay |
| 22:09:27 | toulmean | s/RBASIC/rb_obj_class ? |
| 22:09:30 | evan | but anywhere else RBASIC is changed should be used too |
| 22:09:31 | toulmean | lemme see |
| 22:09:32 | brixen | jacius: we've considered adding that, but it depends on the fs layout |
| 22:09:37 | toulmean | ok thx evan |
| 22:09:43 | brixen | jacius: so, we just give you the individual options |
| 22:09:51 | evan | toulmean: ah yeah, i see a bunch of places |
| 22:09:56 | evan | every single one is a bug |
| 22:10:01 | toulmean | evan: this code is old |
| 22:10:03 | evan | 100% of RBASIC()->klass is a bug |
| 22:10:13 | evan | in all extension code. |
| 22:10:35 | toulmean | evan: so how do you replace ? |
| 22:10:39 | toulmean | oh ok |
| 22:10:41 | toulmean | nm |
| 22:11:01 | toulmean | I just apply s/RBASIC->klass/rb_obj_class() |
| 22:11:04 | evan | RBASIC(expr)->klass becomes rb_obj_class(expr) |
| 22:11:05 | toulmean | evan: ^^ correct ? |
| 22:11:10 | toulmean | ok cool |
| 22:11:27 | evan | don't let anyone tell you "no, RBASIC()->klass is fine" |
| 22:11:28 | evan | they're wrong. |
| 22:11:38 | evan | send them to talk to me if they don't believe you. |
| 22:12:02 | evan | oh man |
| 22:12:04 | dbussink | evan: write a faq entry for it ;) |
| 22:12:04 | evan | hold on |
| 22:12:10 | evan | toulmean: hold on |
| 22:12:14 | evan | i think this code is being extra clever. |
| 22:12:46 | toulmean | evan: this code was not written by Chuck Norris. This is impossible. |
| 22:12:58 | evan | heh |
| 22:13:26 | evan | the code on line 1738 is, i think, trying to add methods to class's singleton class, ie, class methods |
| 22:15:07 | toulmean | evan: got this: |
| 22:15:08 | toulmean | rjb.c: In function ‘rjb_s_unload’: |
| 22:15:08 | toulmean | rjb.c:1783: error: called object ‘1’ is not a function |
| 22:15:08 | toulmean | rjb.c: In function ‘register_class’: |
| 22:15:09 | toulmean | rjb.c:2296: error: called object ‘1’ is not a function |
| 22:15:18 | toulmean | after replacing the RBASIC goop |
| 22:16:06 | evan | what does line 1738 look like? |
| 22:16:20 | toulmean | evan: 1738: rb_define_method(rb_obj_class(jklass), "forName", rjb_class_forname, -1); |
| 22:16:21 | evan | those lines need to use rb_singleton_class rather than rb_obj_class |
| 22:16:28 | toulmean | ooh |
| 22:16:36 | evan | because i think thats the intent |
| 22:16:57 | toulmean | so like that rb_define_method(rb_singleton_class(jklass), "forName", rjb_class_forname, -1); |
| 22:17:10 | evan | yeah |
| 22:17:22 | toulmean | ok - still hitting the same compile errors as stated earlier |
| 22:17:37 | toulmean | 1783 is st_foreach(RHASH_TBL(rjb_loaded_classes), clear_classes, 0); |
| 22:17:55 | JamesKilton | evan: should i open a ticket about st.h for a record of the problem? |
| 22:18:17 | evan | toulmean: oh damn |
| 22:18:19 | evan | it uses RHASH |
| 22:18:32 | evan | we'll have to figure out how to recode that. |
| 22:18:38 | evan | we don't support RHASH |
| 22:18:44 | evan | JamesKilton: sure. |
| 22:19:46 | toulmean | evan: pushing latest changes and running to appointment |
| 22:20:39 | toulmean | k, pushed |
| 22:20:43 | toulmean | thx for all the help |
| 22:21:06 | toulmean | evan: don't worry I'll read about RHASH and will come back to you |
| 22:21:47 | evan | toulmean: no prob. |
| 22:22:02 | evan | toulmean: ok |
| 22:22:45 | dohzya | weird : I've installed rbx 1.0 using rvm (with success) but I couldn't compile it from source (using ruby 1.9.1) "no such file to load -- ext/digest/sha1/sha1"... I tried using rbx 1.0 (which I installed using rvm) : it is running... |
| 22:23:12 | evan | dohzya: yes, you can't use 1.9 to build it currently. |
| 22:23:22 | evan | thats something we'll address soon. |
| 22:23:48 | dohzya | ok, no problem, just I now I'm not too bad for rake :p |
| 22:24:41 | dohzya | now I know* |
| 22:35:59 | dohzya | hehe, one failure ! |
| 22:36:07 | dohzya | (in test suite) |
| 22:36:11 | evan | which? |
| 22:36:35 | dohzya | UDPSocket.bind receives a hostname and a port FAILED (Expected "0.0.0.0" to equal "127.0.0.1") |
| 22:36:50 | dohzya | (I'm on an ubuntu 10.04 x64) |
| 22:37:26 | dohzya | ok, it's special, maybe a conf problem |
| 22:37:31 | slava | congratulations on 1.0! |
| 22:37:48 | evan | slava: THANKKSS |
| 22:37:57 | evan | dohzya: ah yeah, that was reported |
| 22:38:01 | evan | seems to be something about linux |
| 22:38:02 | evan | it's harmless |
| 22:45:00 | dohzya | and 1.9.1 returns the same result |
| 22:50:16 | evan | dohzya: oh good. |
| 22:50:20 | evan | it's probably a bad spec then. |
| 22:50:40 | evan | or, rather, not bad, but needs to deal with platforms somehow. |
| 22:51:18 | dohzya | yes |
| 22:54:19 | slava | man, the algorithm for interference testing on SSA is so elegant |
| 22:54:43 | slava | evan: I'm looking forward to hearing about further JIT work now that 1.0 is out :) |
| 23:04:27 | evan | slava: yeah! me too! |
| 23:16:27 | dwaite | having a problem downloading 1.0.0 |
| 23:17:15 | evan | dwaite: what kind of "problem" ? |
| 23:17:23 | evan | is it exciting you too much? |
| 23:24:17 | dohzya | evan: in the evan.taskpaper "what is the pragma comment" ? |
| 23:24:18 | dohzya | the @comment form ? |
| 23:25:49 | evan | dohzya: thats a comment in the form |
| 23:25:53 | evan | # *-* thing *-* |
| 23:25:57 | evan | or is it -*- |
| 23:26:02 | evan | one of those |
| 23:26:06 | evan | anyway, I added it |
| 23:26:14 | evan | you can activate compiler plugins using it. |
| 23:26:46 | evan | -*- is it |
| 23:27:21 | dohzya | I don't know at all : is there an explanation somewhere ? (except if you want to explain it now :p) |
| 23:27:32 | evan | yeah, thats fine |
| 23:27:34 | evan | you don't need to |
| 23:27:45 | dohzya | haha ok |
| 23:27:54 | evan | it's a way of communicating information out of band to the parser and compiler |
| 23:29:14 | dohzya | oh nice :-) have you a use case in example ? |
| 23:29:15 | brixen | dohzya: git show d0f736008 |
| 23:35:32 | dohzya | ok (I didn't understood all the code, but I suppose the big picture is ok). Have you a typical example of use ? |
| 23:35:59 | dohzya | (just because it's a kind of feature I love :p) |
| 23:41:01 | brixen | dohzya: evan has an example somewhere |
| 23:41:13 | brixen | the point is really that you can do some powerful stuff with it |
| 23:41:21 | brixen | and the basic machinery is in place |
| 23:41:32 | evan | http://gist.github.com/401839 |
| 23:41:37 | evan | thats a simple example |
| 23:41:38 | brixen | I'm off to see some folks about some beers |
| 23:41:49 | brixen | evan: cherio mate! and congrats |
| 23:41:50 | evan | the -*- array_zen -*- activates the array zen compiler plugin |
| 23:42:17 | evan | cherio and congrats to you too! |
| 23:42:28 | brixen | heh, thanks :) |
| 23:44:26 | dohzya | array zen is a form of list comprehension ? |
| 23:53:10 | kronos_vano | +[ x+y , x.in([1,2,3]), y.in([5,6,7])] doesn't work :( :) |
| 23:53:51 | dohzya | (good night) |