Show enters and exits. Hide enters and exits.
| 00:22:26 | evan | yay. |
| 00:22:35 | evan | fixed the exception bug that my new code fixed. |
| 00:22:46 | evan | now need to validate that it fixes the hang bug still (it should) |
| 00:23:47 | dwaite | IPARSWGD |
| 00:24:13 | dwaite | btw, is my vote |
| 00:24:52 | evan | heh |
| 00:25:21 | dwaite | or, just IPA, so then I can think of beer when I think of ruby syntax |
| 00:26:50 | dwaite | ruby-std (pronounced perhaps "ruby stud") would be a good choice, seeing how it already is in the domain name |
| 00:27:04 | dwaite | but until its a standard it will be a specification, so there will be a naming conflict |
| 00:28:25 | evan | ruby-std is probably the proper name |
| 00:28:27 | evan | you're right |
| 00:28:47 | brixen | yeah, ruby-std sounds good |
| 00:28:53 | brixen | except for the std part haha |
| 00:28:56 | brixen | but yeah |
| 00:28:57 | evan | hah |
| 00:29:01 | evan | yeah, thats a bummer |
| 00:29:03 | evan | but they picked it |
| 00:29:05 | evan | not us. |
| 00:30:44 | brixen | as long as they don't mess up the capitalization I guess |
| 00:30:53 | brixen | ruby-STD heh |
| 00:35:14 | evan | hehe |
| 00:35:25 | dwaite | hopefully there is never anything like a ruby vm definition |
| 00:35:53 | evan | yes, hopefully not. |
| 00:37:08 | dwaite | I'm curious just how far off annex a is |
| 00:37:39 | dwaite | (well, the BNF in general) |
| 00:40:09 | dwaite | I was frustrated enough today that I wrote tools to pull in and convert a wikimedia table into a tab-delimited file to use a real table editor |
| 00:46:28 | evan | man, I really broke exception handling before |
| 00:46:35 | evan | i'm surprised it worked as long as it did. |
| 00:58:25 | boyscout | Rework exception handler discovery in the JIT - cf3cb55 - Evan Phoenix |
| 00:58:27 | evan | huzzah! |
| 01:01:30 | boyscout | CI: cf3cb55 success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 17:25:21 | brixen | morning |
| 17:26:32 | rue | *wave |
| 17:41:10 | evan | allo |
| 17:41:19 | evan | doing some JIT refactoring/cleanup this morning. |
| 17:41:28 | rue | You guys have syncronised alarm clocks, right? |
| 17:41:30 | evan | trying to remove the JITWorkhorse class |
| 17:41:32 | evan | since, well, it's silly. |
| 17:41:37 | evan | name and organizationally. |
| 17:41:41 | rue | Yes, no horsey |
| 17:43:27 | brixen | JITPony... much better |
| 17:43:29 | brixen | hehe |
| 17:43:35 | evan | hehe |
| 17:50:24 | dwaite | good morning |
| 17:51:15 | dwaite | JITWorkhorse -> JITPlethora ? |
| 17:53:08 | rue | Mu |
| 18:02:38 | dbussink | evan: too bad the workhorse is leaving us... |
| 18:03:09 | evan | heh |
| 18:05:17 | dbussink | evan: hmm, does it ring any bell for you that the build in gems can't be found if i try to use them with -S ? |
| 18:05:28 | evan | hm. no. |
| 18:05:38 | evan | maybe the stubs aren't going in the proper place |
| 18:05:45 | evan | are you running installed or out of the source directory? |
| 18:07:23 | dbussink | evan: from the source dir |
| 18:07:29 | evan | hm, check gems/bin |
| 18:07:32 | evan | are the stubs there? |
| 18:08:04 | dbussink | they are in gems/rubinius/bin |
| 18:08:10 | evan | thats wrong. |
| 18:08:25 | evan | either that needs to be fixed |
| 18:08:33 | evan | or kernel/loader.rb needs to check that directory |
| 18:08:35 | dbussink | evan: well, the bin scripts are picked up |
| 18:08:43 | dbussink | the error is "Could not find RubyGem rake (>= 0)" |
| 18:08:52 | evan | is there anything in gems/bin |
| 18:08:52 | evan | ? |
| 18:09:05 | dbussink | hmm, i might have some other stale stuff |
| 18:09:15 | brixen | there's a problem copying the pre-installed gems |
| 18:09:19 | evan | feels like the prefix stuff confused things |
| 18:09:22 | brixen | the rake task checks for gem/rubinius |
| 18:09:26 | brixen | that existed before |
| 18:09:38 | brixen | that task needs to be more robust |
| 18:09:48 | brixen | gems/rubinius rather |
| 18:10:07 | evan | brixen: feels like something changed and thats why rubygems is using gems/rubinius/bin |
| 18:10:11 | evan | it was using gems/bin |
| 18:10:16 | evan | before your install changes |
| 18:10:19 | brixen | I don't thing so |
| 18:10:31 | brixen | dbussink: rm your gems/rubinius dir |
| 18:10:37 | brixen | and run rake gem_bootstrap |
| 18:10:41 | evan | nuke the whole gems dir |
| 18:10:50 | dbussink | brixen: already removed that, but i cleaned out some stuff in bin/ too |
| 18:10:56 | evan | get rid of the whole directory. |
| 18:10:58 | evan | start over. |
| 18:10:59 | dbussink | apparently i still had a rake there, maybe that's it |
| 18:11:02 | dbussink | evan: already tried that |
| 18:11:20 | dbussink | evan: now trying with a nuked bin/ directory and checkout of that dir |
| 18:11:25 | dbussink | clean checkout |
| 18:11:35 | evan | brixen: did you change Rubinius::GEMS_PATH ? |
| 18:11:57 | evan | it appears so. |
| 18:12:05 | rue | Maybe the non-sudo Gem change? |
| 18:12:15 | brixen | evan: it shouldn't be different |
| 18:12:19 | brixen | I added a constant |
| 18:12:26 | brixen | instead of building the same value in 5 places |
| 18:12:26 | evan | dbussink: check your vm/gen/config.h |
| 18:12:33 | evan | what is RBX_GEM_PATH |
| 18:12:51 | brixen | dbussink: ./configure --show |
| 18:12:53 | brixen | paste |
| 18:12:54 | dbussink | RBX_GEMS_PATH "/Users/dirkjan/Documents/projects/rubinius/gems" |
| 18:13:00 | evan | ok, thats right. |
| 18:13:32 | evan | dbussink: after you nuked gems and did build again |
| 18:13:38 | evan | do you have gems/bin now? |
| 18:13:50 | dbussink | evan: nope |
| 18:13:56 | evan | ok, thats the breakage. |
| 18:14:03 | evan | you should |
| 18:14:13 | evan | preinstalled-gems/bin should become gems/bin |
| 18:14:33 | evan | oh |
| 18:14:40 | evan | gem_bootstrap got change.d |
| 18:14:41 | dbussink | evan: ok, so something is probably missing from the build steps i guess? |
| 18:14:42 | evan | incorrectly. |
| 18:14:55 | evan | it's putting preinstalled-gems to gems/rubinius |
| 18:14:58 | evan | thats not correct. |
| 18:15:47 | evan | actually, if that happens |
| 18:15:53 | evan | then preinstalled gems don't work at all |
| 18:15:57 | evan | because then there will be |
| 18:16:02 | evan | gems/rubinius/rubinius/... |
| 18:16:08 | brixen | well, it should copy the bin dir fine, but the rubinius/0.13/ won't be right |
| 18:16:20 | evan | well, the current task is wrong anyway. |
| 18:16:22 | brixen | oh yeah, extra rubinius |
| 18:16:32 | evan | one sec |
| 18:16:34 | evan | let me just fix this. |
| 18:16:42 | evan | because it's laid out wrong anyway |
| 18:16:48 | evan | everyone full stop on this for the next 5 minutes. |
| 18:22:08 | boyscout | Fix preinstalled gems directory layout (version proof) - 264af55 - Evan Phoenix |
| 18:22:13 | evan | ok, there ya go. |
| 18:22:17 | evan | thats also version proof. |
| 18:22:34 | evan | gems/rubinius/preinstalled is where the data for the gems goes now |
| 18:22:41 | evan | gems/bin is where the stubs go (and are found) |
| 18:24:04 | evan | you know |
| 18:24:16 | evan | this is probably why people said that they couldn't run any gem stubs under rubinius in rc1 |
| 18:24:55 | evan | well, actually no. |
| 18:25:22 | boyscout | CI: 264af55 success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 18:26:07 | brixen | the gems worked if you installed |
| 18:26:12 | brixen | I checked that |
| 18:26:14 | evan | right |
| 18:26:19 | evan | i think the preinstalled ones just didn't |
| 18:26:26 | evan | which actually you might not be able to see |
| 18:26:34 | evan | because -S has an interesting property |
| 18:26:39 | evan | most people already have rake installed |
| 18:26:46 | evan | and there is a gem stub for it in /usr/bin/rake |
| 18:26:52 | evan | and -S will pick that up |
| 18:27:02 | brixen | ah yeah |
| 19:13:42 | dbussink | evan: cool, i just built rubinius with itself :) |
| 19:13:53 | evan | AWESOME! |
| 19:14:41 | dbussink | evan: ./bin/rbx -S rake to test whether it worked inside the rbx dir |
| 19:14:49 | dbussink | and it just happely did it's job :) |
| 19:14:56 | evan | rad |
| 19:14:58 | evan | super rad. |
| 19:15:04 | brixen | heh |
| 19:15:16 | brixen | I did that by accident working on rake install |
| 19:15:27 | brixen | but I didn't check everything yet |
| 19:15:32 | brixen | pretty cool though |
| 19:16:37 | Defiler | That is rad |
| 19:16:55 | dbussink | brixen: didn't check everything either, but it completed, so it must have done something right :) |
| 19:17:14 | brixen | dbussink: heh, yeah |
| 19:17:36 | brixen | now we just need binaries for all platforms and bootstrapping on MRI will be history! |
| 19:17:39 | brixen | heh |
| 19:18:01 | dbussink | brixen: maybe we can do fallback on mri for not available binaries ;) |
| 19:18:08 | brixen | dbussink: of course |
| 19:18:15 | brixen | I was just joking |
| 19:18:17 | dbussink | bit like how there are llvm prebuilds |
| 19:18:23 | brixen | yeah |
| 19:18:59 | Defiler | brixen: Dude, just port compiler-ng to make |
| 19:19:18 | Defiler | or m4; autoconf can build the kernel |
| 19:23:25 | rue | Best idea ever |
| 19:25:33 | brixen | Defiler: Dude, I'll come spend a weekend with you and we'll do it! haha |
| 19:25:51 | Defiler | It's on; Let's Software! |
| 19:25:55 | brixen | haha |
| 19:26:26 | brixen | Defiler: I'm hoping to be in nyc for a week in january, you better be there |
| 19:26:35 | dbussink | feels happy he can see long running configure output then |
| 19:26:36 | Defiler | I will be, definitely |
| 19:26:41 | brixen | awesome |
| 19:26:48 | Defiler | Actually, we should just contribute a Makefile back-end for LLVM |
| 19:27:00 | brixen | dbussink: I can give you long running configure output :P |
| 19:27:17 | brixen | Defiler: haha, oh man, stop |
| 19:27:21 | brixen | you are killing me |
| 19:27:29 | Defiler | Dude, you know that would be awesome |
| 19:27:34 | dbussink | brixen: will it also check the size of every available type on my system? |
| 19:27:41 | brixen | why stop with Makefile, we could do QBasic too |
| 19:28:15 | Defiler | I wonder what the most ubiquitous tool is, actually |
| 19:28:29 | Defiler | It would have to be something in common between windows and *nix.. hrm.. |
| 19:28:30 | brixen | dbussink: if you insist... I can grab configure output and just lines.each { |x| sleep 0.3; puts x } |
| 19:29:00 | dbussink | brixen: awesome! |
| 19:29:06 | brixen | hah |
| 19:29:13 | brixen | man, the things ppl wish for |
| 19:29:15 | evan | hm |
| 19:29:20 | evan | a make+shell backend for LLVM IR |
| 19:29:26 | evan | compile your C to shell! |
| 19:29:34 | brixen | indeed |
| 19:30:11 | Defiler | pushd popd |
| 19:30:43 | evan | give it a root directory |
| 19:30:51 | evan | and it creates a directory for every function call |
| 19:31:05 | evan | and uses files to store locals, etc. |
| 19:31:14 | evan | easy to implementation continuations then! |
| 19:32:57 | dbussink | anyone ever seen this? https://gist.github.com/97740af10c3f917ff71b |
| 19:33:31 | evan | nope |
| 19:34:31 | evan | open an issue |
| 19:34:33 | evan | or fix it! |
| 19:34:36 | evan | your choice. |
| 19:35:53 | dbussink | evan: i'm trying to see if i can reproduce it reliably, but doesn't look like it :S |
| 19:36:03 | evan | k |
| 19:36:10 | evan | still open it |
| 19:36:18 | evan | so there is a log of it occuring. |
| 19:39:02 | Defiler | dbussink: put :verbose: really in your .gemrc |
| 19:39:28 | rue | :verbose: no, seriously |
| 19:39:28 | Defiler | and :backtrace: true |
| 19:41:21 | Defiler | :verbose: tell-me-what-you-are-doing-aaaaaah |
| 19:43:05 | evan | :pants_mode: mega |
| 19:43:05 | rue | Hm, is that "function lock()", or "function lock-ed up" ? |
| 19:52:09 | evan | good question. |
| 19:53:27 | boyscout | JIT Refactoring phase 1: No more workhorse - ec65b4b - Evan Phoenix |
| 19:54:19 | boyscout | CI: Build ec65b4b failed. http://ci.rubini.us/rubinius/builds/ec65b4b37ae8f3a3a6e56497fdd1b51095a180fb |
| 19:54:24 | evan | :/ |
| 19:54:51 | evan | ack. |
| 19:59:43 | boyscout | Conditionalize the LLVM .cpp files - d9fc56b - Evan Phoenix |
| 20:02:45 | boyscout | CI: d9fc56b success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 20:05:51 | yipdw | hey evan - I read on ruby-lang that you were thinking about using GPUs to accelerate method dispatch |
| 20:05:59 | yipdw | can you elaborate on that? it seems interesting |
| 20:09:31 | Defiler | That's a pretty old thread as I recall heh |
| 20:09:41 | rue | It seems far-fetched mainly :) |
| 20:09:43 | yipdw | I've been out of the loop :P |
| 20:10:03 | Defiler | It seems to me that the bus bottleneck would be pretty much impossible to overcome |
| 20:10:14 | yipdw | I'm mostly curious about how one would map method dispatch to something suitable for a GPU work unit |
| 20:10:34 | Defiler | well, dispatching methods is basically just looking things up in tables |
| 20:10:46 | Defiler | and you can do a lot of lookups in parallel on a GPU |
| 20:11:00 | slava | evan: I got my literal table removal working, the GC now traces machine code using relocation info |
| 20:11:03 | Defiler | So you could, say, look for a matching symbol in every method table in the lookup chain at once |
| 20:11:09 | yipdw | oh, so it comes down to matrix math |
| 20:11:11 | Defiler | and then pick up the one closest to the call site |
| 20:11:31 | Defiler | it's just that that is such a small unit of work for a GPU |
| 20:11:46 | Defiler | you'd probably spend all your time phrasing those questions to the GPU, rather than waiting for answers |
| 20:11:55 | yipdw | yeah, you'd flood the bus |
| 20:11:57 | yipdw | hmm |
| 20:12:58 | Defiler | I was really disappointed to see how explicit the resource allocation is in OpenCL |
| 20:13:19 | Defiler | It would be fun to be able to rewrite that part and then try it on various kinds of hardware to see where it was worth the trouble |
| 20:13:30 | evan | yipdw: where on ruby-lang |
| 20:13:32 | Defiler | but you have to manually loop over the detected devices and assign them to tasks |
| 20:13:35 | evan | i recall making a passing remark about it |
| 20:13:41 | evan | but it was just that, a passing remark. |
| 20:13:45 | Defiler | http://www.ruby-forum.com/topic/165155 |
| 20:13:53 | yipdw | yeah, that thread |
| 20:14:03 | yipdw | I was looking for CUDA or OpenCL bindings for Ruby, came across that |
| 20:14:07 | Defiler | and I think that refers to an interview with you |
| 20:14:12 | Defiler | maybe on on-ruby? |
| 20:14:17 | evan | ah, via tarcieri. |
| 20:14:28 | evan | yeah, i think i made some funny remark about it in here one day. |
| 20:16:03 | yipdw | well, even if not in method dispatch it seems like it'd be fun to write a numerics library for Rubinius that could make use of that |
| 20:16:23 | Defiler | Yeah, but you might as well write it for all Rubies |
| 20:16:26 | yipdw | right |
| 20:16:45 | yipdw | rubinius seems more...hmm |
| 20:16:45 | Defiler | ruby could definitely use something as nice as numpy |
| 20:16:46 | yipdw | hackable |
| 20:16:47 | yipdw | :P |
| 20:16:56 | evan | with everyone having multiple cores now |
| 20:16:58 | evan | it's less useful |
| 20:17:05 | evan | rubinius makes good multicore usage atm |
| 20:17:13 | evan | because the JIT runs in it's own thread |
| 20:37:36 | boyscout | JIT Refactoring 2: extracted compiler driver - 63d830b - Evan Phoenix |
| 20:41:37 | boyscout | CI: 63d830b success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 22:14:22 | boyscout | Remove MachineMethod - 7de812a - Evan Phoenix |
| 22:21:04 | boyscout | CI: 7de812a success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 22:33:12 | evan | hehe |
| 22:33:28 | evan | BlankSlate = Class.new(nil) |
| 22:33:28 | evan | p BlankSlate.instance_methods # => [] |
| 22:33:44 | brixen | nice |
| 22:34:04 | evan | I wonder if remote alias still works... |
| 22:35:37 | evan | hehe |
| 22:35:39 | evan | one small fix |
| 22:35:46 | evan | and instant awesome: |
| 22:35:56 | evan | BlankSlate = Class.new(nil) |
| 22:35:56 | evan | p BlankSlate.instance_methods # => [] |
| 22:36:18 | evan | BlankSlate.remote_alias :__send__, Kernel, :__send__ |
| 22:36:18 | evan | p BlankSlate.instance_methods # => ["__send__"] |
| 22:39:35 | brixen | sweet |
| 22:43:03 | evan | why are people using erb in yaml |
| 22:43:07 | evan | that seems so silly. |
| 22:44:15 | boyscout | Fix Module#remote_alias - db36a01 - Evan Phoenix |
| 22:44:15 | boyscout | Allow a Class to be created with nil as the superclass - 2da2ea4 - Evan Phoenix |
| 22:44:53 | dgtized | erb in yaml? |
| 22:45:27 | evan | yeah |
| 22:45:37 | evan | people are making config files that use erb in yaml |
| 22:46:09 | dgtized | wait they are using yaml as there config file |
| 22:46:16 | dgtized | but they are generated the yaml using erb? |
| 22:46:34 | evan | no |
| 22:46:37 | evan | the yaml has erb in it |
| 22:46:41 | evan | so they run it through ERB first |
| 22:46:46 | evan | then call YAML.load on the output from ERB |
| 22:47:14 | dgtized | yea that's kinda weird, just process that stuff after they do YAML::load |
| 22:47:23 | dgtized | and not with erb |
| 22:47:29 | evan | or |
| 22:47:29 | yipdw | it's a not-too-uncommon Railsism as far as I can tell |
| 22:47:32 | evan | don't use yaml! |
| 22:47:35 | evan | use a .rb file. |
| 22:47:36 | yipdw | popular in database.yml |
| 22:50:28 | boyscout | CI: 2da2ea4 success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 23:04:29 | weepy | yeah - i could never figure out why people use yaml, when an rb file is easier and more powerful |
| 23:11:41 | evan | MMMMM |
| 23:11:45 | evan | chained exceptions |
| 23:11:52 | evan | o/~ rooooock o/~ |
| 23:12:07 | evan | a perfect way to properly communicate compiler errors. |
| 23:12:24 | weepy | im just compiling now .... |
| 23:12:46 | benschwarz | evan: did you see the donations total? |
| 23:12:51 | evan | nope |
| 23:13:01 | benschwarz | 1395.. |
| 23:13:22 | evan | wow! |
| 23:13:23 | evan | awesome |
| 23:13:31 | benschwarz | not bad :) |
| 23:14:55 | weepy | just compiled - the tests ran ok, then i got a runtime exception: |
| 23:14:57 | weepy | Runtime exception: Unable to open file to run: /Users/jonahfox/src/rubinius/runtime/bootstrap/machine_method.rbc |
| 23:15:14 | weepy | shall i make a ticket ? |
| 23:15:27 | evan | fuck. |
| 23:15:30 | evan | one sec. |
| 23:15:30 | evan | no |
| 23:15:32 | evan | i just did that. |
| 23:15:38 | weepy | ah ok |
| 23:15:42 | weepy | i just cloned |
| 23:15:47 | weepy | must've picked it up |
| 23:16:04 | evan | yeah, it's a trivial fix |
| 23:16:05 | evan | one sec |
| 23:16:31 | boyscout | Remove old .rbc file from being loaded - e131ce9 - Evan Phoenix |
| 23:16:35 | evan | there ya go |
| 23:16:37 | evan | update please |
| 23:16:55 | weepy | git pull |
| 23:16:57 | weepy | ... |
| 23:16:59 | weepy | i did |
| 23:17:00 | weepy | Runtime exception: Unable to open file to run: /Users/jonahfox/src/rubinius/runtime/bootstrap/machine_method.rbc |
| 23:17:02 | weepy | oops |
| 23:17:05 | weepy | sorry i mean i did |
| 23:17:14 | weepy | ./configure --enable-llvm --prefix=/usr/local/bin |
| 23:17:26 | evan | ok... |
| 23:17:30 | weepy | do i have to rebuild from scratch |
| 23:17:34 | evan | i don't know what you're trying to communicate |
| 23:17:37 | evan | no |
| 23:17:41 | evan | just run rake build again |
| 23:17:46 | weepy | ok kewl |
| 23:18:21 | weepy | last line is : Building Melbourne for Rubinius |
| 23:18:33 | evan | ok.. |
| 23:18:33 | evan | ? |
| 23:18:38 | weepy | is that right ? |
| 23:18:39 | brixen | weepy: you need to run rake install |
| 23:18:44 | weepy | ok |
| 23:18:56 | brixen | you can pull into the build dir and run rake to build and run the tests |
| 23:19:06 | brixen | but you have to install if you have configured a prefix |
| 23:19:14 | weepy | i see |
| 23:19:26 | boyscout | CI: e131ce9 success. 3005 files, 11472 examples, 35615 expectations, 0 failures, 0 errors |
| 23:19:27 | brixen | otherwise, how will the files get there? haha |
| 23:20:01 | weepy | omg it appears to work |
| 23:20:33 | brixen | omg haha |
| 23:21:38 | weepy | ok pls excuse my n00bness - how do i install gems |
| 23:21:47 | weepy | is it : sudo rbx gem install XXX ? |
| 23:22:00 | evan | yes. |
| 23:22:46 | weepy | hmm it seems to be super slow, but i think you know that already |
| 23:23:47 | evan | gem installation is slow atm. |
| 23:24:18 | brixen | hmm, gem install doesn't precompile does it? |
| 23:24:50 | brixen | cus that will suck if you install to sudo and rbx can't save rbc files |
| 23:25:00 | brixen | s/to sudo/with sudo/ |
| 23:25:29 | evan | no |
| 23:25:30 | evan | it doesn't |
| 23:25:33 | evan | we'll need to fix that |
| 23:25:35 | brixen | yeah |
| 23:25:36 | evan | adds it to the list |
| 23:26:03 | brixen | no sure if there's a simple way to precompile |
| 23:26:13 | brixen | I guess it can work just like installing lib now |
| 23:30:12 | evan | it won't be too hard |
| 23:30:18 | evan | i'll work on getting the hooks into rubygems for it. |
| 23:30:26 | evan | i've gotten a few patches into rubygems lately |
| 23:30:32 | evan | so should be able to get that in. |
| 23:31:04 | evan | so, wierdly |
| 23:31:04 | evan | https://gist.github.com/2cef54fc10270dfa3565 |
| 23:31:05 | evan | that file |
| 23:31:24 | evan | the rescue is being parsed as having... |
| 23:31:25 | evan | oh nm. |
| 23:36:40 | evan | brixen: poke |
| 23:37:09 | brixen | sup |
| 23:37:24 | evan | line 173 of compiler/ast/exceptions.rb |
| 23:37:37 | evan | actually 172 |
| 23:37:49 | evan | why is it detecting a literal array and extracting from it? |
| 23:38:25 | brixen | because an ArrayLiteral is not an Array |
| 23:38:31 | evan | no no |
| 23:38:33 | evan | why detect at all |
| 23:38:37 | evan | whats that code doing |
| 23:38:46 | brixen | it was a form I saw I suppose |
| 23:38:52 | evan | it blows up |
| 23:38:54 | evan | on |
| 23:38:55 | evan | begin 1 |
| 23:38:57 | evan | begin |
| 23:38:57 | evan | 1 |
| 23:38:59 | evan | rescue |
| 23:39:01 | evan | [2] |
| 23:39:03 | evan | end |
| 23:39:15 | brixen | ahh fun |
| 23:39:26 | brixen | resbody's are teh suck |
| 23:39:36 | evan | i think that condition should go |
| 23:39:39 | dwaite | obviously brixen is trying to discourage pointless examples like that |
| 23:39:41 | evan | i don't see what code form it's supporting |
| 23:39:41 | dwaite | good job. |
| 23:40:00 | dwaite | ;-) |
| 23:40:03 | brixen | evan: whatever works, just be sure to add compiler specs |
| 23:40:08 | dwaite | wasn't to support rescue splats, was it? |
| 23:40:11 | evan | brixen: ok |
| 23:40:21 | brixen | I'm absolutely sure I didn't put it in there for the hell of it |
| 23:40:30 | evan | feels like that! :D |
| 23:40:33 | brixen | heh |
| 23:40:39 | brixen | I guess we'll see when you change it |
| 23:40:56 | evan | oh |
| 23:40:59 | evan | i think it's just a bug |
| 23:41:08 | evan | the assignment is in the condition |
| 23:41:10 | evan | conditional |
| 23:41:12 | evan | not the body |
| 23:41:30 | evan | it's there to support |
| 23:41:32 | evan | rescue A, B => e |
| 23:41:40 | evan | no wait. |
| 23:41:43 | evan | it's not in there. |
| 23:41:50 | evan | gee this is confusing. |
| 23:44:36 | evan | i'm changing the AST printer |
| 23:44:55 | evan | it doesn't say what ivar is being referenced when the ivar points to another node |
| 23:45:00 | evan | so i can't tell whats what. |
| 23:46:22 | brixen | yeah, I was going to do that too |
| 23:46:36 | brixen | at first I thought the nodes would be descriptive enough |
| 23:46:41 | brixen | but obviously they are not |
| 23:47:00 | evan | yeah |
| 23:47:18 | evan | i'm printing |
| 23:47:21 | evan | @body: \ |
| 23:47:24 | evan | Block |
| 23:47:25 | evan | etc. |
| 23:47:30 | brixen | sure |
| 23:48:23 | evan | ok |
| 23:48:26 | evan | no clue what this code does |
| 23:48:30 | evan | going to add a couple specs |
| 23:48:31 | evan | and remove it. |
| 23:49:00 | evan | maybe this code was supposed to be checking for Block |
| 23:49:03 | evan | rather than ArrayLiteral |