Show enters and exits. Hide enters and exits.
| 00:04:19 | headius leaves the room. | |
| 00:04:26 | headius enters the room. | |
| 00:05:38 | drbrain | brixen: how many tests did you run |
| 00:06:53 | imajes enters the room. | |
| 00:07:25 | bricolage leaves the room. | |
| 00:09:36 | imajes leaves the room. | |
| 00:09:52 | imajes enters the room. | |
| 00:14:37 | brixen | drbrain: 409 |
| 00:14:45 | drbrain | ok |
| 00:15:05 | drbrain | you didn't run the same test set as I did |
| 00:15:41 | drbrain | the Rakefile doesn't handle vm/test/test_instructions.hpp (a generated file) correctly right now |
| 00:20:37 | brixen | yeah |
| 00:20:47 | qrush enters the room. | |
| 00:20:49 | brixen | make senese |
| 00:20:54 | brixen | sense even |
| 00:25:59 | gramos leaves the room. | |
| 00:30:53 | headius | hey I noticed a lot of commits just renaming primitives |
| 00:31:13 | headius | is that to protect them? |
| 00:31:55 | brixen | mostly to make them orderly |
| 00:32:00 | nari leaves the room. | |
| 00:32:04 | brixen | not sure what "protect" them means |
| 00:33:15 | tarcieri | to keep them out of the toplevel namespace? |
| 00:33:44 | pauldix enters the room. | |
| 00:33:57 | brixen | that'd be a class or something |
| 00:33:59 | headius | to avoid the likelihood of other libraries monkey-wrapping them and destroying core |
| 00:34:03 | headius | like rational |
| 00:34:17 | brixen | not really any effort to do that atm |
| 00:34:44 | headius | seems like there would also be an optimization path possible too |
| 00:35:32 | headius | I was just curious because we've talked about the method obliteration issue previously |
| 00:36:21 | ezmobius leaves the room. | |
| 00:36:41 | ezmobius enters the room. | |
| 00:37:12 | tarcieri | headius: like method inlining? |
| 00:37:31 | headius | yes, that's one example |
| 00:37:56 | headius | or making methods with those names "intrinsics" and having the VM call them directly rather than go through a dispatch |
| 00:38:32 | headius | so Fixnum#+ would be implemented in terms of fixnum_plus but would incur no additional dispatch cost from the extra call |
| 00:38:48 | headius | and other calls that need to always call "our" + would also use fixnum_plus |
| 00:40:22 | botanicus leaves the room. | |
| 00:40:47 | aotearoa leaves the room. | |
| 00:41:26 | jbarnette enters the room. | |
| 00:46:02 | binary42 enters the room. | |
| 00:47:32 | jayWHY_ enters the room. | |
| 00:48:15 | binary42 leaves the room. | |
| 00:50:29 | evan | headius: not sure what ya mean |
| 00:50:57 | headius | do sendsites patch the caller to call primitives directly? |
| 00:51:08 | drbrain | hrm, vm/gen/typechecks.gen.cpp is nearly empty again |
| 00:54:00 | evan | drbrain: then field_extract can't read the headers |
| 00:54:35 | drbrain | ok |
| 00:54:35 | evan | headius: the sendsite is patched with the primitive function |
| 00:57:17 | nari enters the room. | |
| 00:59:40 | headius | evan: so it knows this by inspecting the method on first lookup I presume? |
| 01:00:01 | evan | nah |
| 01:01:00 | evan | an empty sendsite is actually a call to a version taht uses the global cache, then populates the sendsite and changes the sendsite operation |
| 01:01:09 | ezmobius_ enters the room. | |
| 01:01:26 | evan | in shotgun, there is also a special primitive version of a sendsite |
| 01:01:38 | evan | thats consolidated in C++ using a virtual method |
| 01:01:53 | jayWHY leaves the room. | |
| 01:01:59 | headius | how much overhead is there in calling through a patched sendsite to the target primitive |
| 01:02:13 | evan | overhead between what? |
| 01:02:16 | headius | and I assume once patched the primitive can't be overridden |
| 01:02:25 | evan | sure it can |
| 01:02:30 | headius | or at least the site won't see that |
| 01:02:33 | evan | the sendsite is still verified to be correct |
| 01:03:08 | evan | all assumptions are verified |
| 01:03:26 | headius | ok, then that's what I mean...for intrinsic primitives you could skip that verification entirely |
| 01:03:38 | headius | probably not even do the send |
| 01:03:52 | evan | could be done |
| 01:03:53 | evan | sure. |
| 01:04:11 | evan | the primitives would be marked as intrinsic in some way |
| 01:04:34 | evan | so that they patch the sendsite to be a version that doesn't check |
| 01:04:45 | headius | right |
| 01:04:46 | evan | i've never measured the overhead of the check |
| 01:04:50 | evan | so i'd do that first. |
| 01:04:55 | evan | dunno if it would pay off. |
| 01:05:08 | twbray enters the room. | |
| 01:05:23 | headius | if you get to a point of jitting it would also be possible to tell llvm certain calls are intrinsics and inlinable |
| 01:05:52 | evan | yeah |
| 01:05:57 | evan | i've thought about that |
| 01:06:04 | headius | then there's not even dispatch cost of any kind |
| 01:06:05 | evan | inlining of primitives |
| 01:06:12 | jayWHY_ leaves the room. | |
| 01:06:16 | evan | well |
| 01:06:22 | evan | you still have to check that the receiver is correct |
| 01:06:32 | binary011010 enters the room. | |
| 01:06:42 | headius | sure, but that would just be a jump over the inlined code |
| 01:06:48 | evan | yeah |
| 01:07:10 | headius | but yes, most of hotspot's intrinsics are static methods, so there is no receiver |
| 01:07:22 | headius | arraycopy, math functions, so on |
| 01:07:40 | headius | there's still checks for the types of args, which is similar to a receiver check |
| 01:08:10 | evan | yeah, thats the same check. |
| 01:11:57 | benburkert leaves the room. | |
| 01:12:20 | headius | anyway, just a thought I had what with the primitive renaming going on |
| 01:13:40 | evan | nope |
| 01:13:43 | evan | just cleanup |
| 01:14:44 | headius | ok then |
| 01:15:36 | trythil enters the room. | |
| 01:28:04 | eventualbuddha enters the room. | |
| 01:28:27 | benburkert enters the room. | |
| 01:29:50 | lopex leaves the room. | |
| 01:30:24 | ezmobius_ leaves the room. | |
| 01:30:57 | twbray leaves the room. | |
| 01:32:20 | benburkert leaves the room. | |
| 01:33:08 | benburkert enters the room. | |
| 01:39:50 | brapse leaves the room. | |
| 01:40:33 | edwardam enters the room. | |
| 01:43:11 | brapse enters the room. | |
| 01:47:09 | ezmobius leaves the room. | |
| 01:48:51 | shame enters the room. | |
| 01:56:54 | jbarnette leaves the room. | |
| 01:57:22 | stepheneb_ enters the room. | |
| 02:01:40 | aotearoa enters the room. | |
| 02:11:27 | jtoy enters the room. | |
| 02:11:31 | tarcieri | *headgib* @ RubyGems on ruby 1.9 |
| 02:11:42 | tarcieri | WARNING: RubyGems 1.2+ index not found |
| 02:11:49 | tarcieri | gem1.9 --version |
| 02:11:49 | tarcieri | 1.1.1 |
| 02:11:58 | tarcieri | what? |
| 02:13:18 | brapse leaves the room. | |
| 02:17:22 | stepheneb leaves the room. | |
| 02:22:02 | eventualbuddha leaves the room. | |
| 02:22:54 | aotearoa leaves the room. | |
| 02:27:34 | qrush leaves the room. | |
| 02:34:36 | benburkert leaves the room. | |
| 02:34:40 | lchin enters the room. | |
| 02:36:18 | octopod leaves the room. | |
| 02:36:18 | brapse enters the room. | |
| 02:38:08 | lstoll leaves the room. | |
| 02:39:13 | nicksieger leaves the room. | |
| 02:41:57 | dfg59 leaves the room. | |
| 02:46:38 | drbrain | tarcieri: gem1.9 sources --list |
| 02:46:42 | drbrain | ?? |
| 02:47:02 | drbrain | tarcieri: note that your ruby 1.9 may have a pre-1.2.0 release |
| 02:47:06 | drbrain | have -> be |
| 02:48:20 | pauldix leaves the room. | |
| 02:48:40 | drbrain | I guess have was right |
| 02:54:00 | xhanjian_ enters the room. | |
| 02:55:23 | xhanjian_ leaves the room. | |
| 02:55:52 | aotearoa enters the room. | |
| 02:55:55 | drbrain | tarcieri: also, 1.9.0-3+ has rubygems 1.2.0.1824 |
| 03:10:57 | benburkert enters the room. | |
| 03:13:44 | trythil leaves the room. | |
| 03:19:25 | AndrewO enters the room. | |
| 03:22:53 | binary011010 leaves the room. | |
| 03:38:29 | lstoll enters the room. | |
| 03:43:11 | ijcd leaves the room. | |
| 03:49:46 | brapse leaves the room. | |
| 03:53:27 | imajes leaves the room. | |
| 03:56:10 | imajes enters the room. | |
| 03:57:31 | lstoll_ enters the room. | |
| 04:02:55 | shayarnett enters the room. | |
| 04:04:58 | imajes leaves the room. | |
| 04:06:27 | shayarnett leaves the room. | |
| 04:06:31 | lstoll leaves the room. | |
| 04:40:21 | twbray enters the room. | |
| 04:46:16 | brapse enters the room. | |
| 04:47:05 | moofbong enters the room. | |
| 04:50:32 | jazen3 enters the room. | |
| 04:55:48 | twbray leaves the room. | |
| 05:02:32 | enebo leaves the room. | |
| 05:05:31 | mernen leaves the room. | |
| 05:07:47 | jazen leaves the room. | |
| 05:13:40 | ezmobius_ enters the room. | |
| 05:20:03 | moofbong leaves the room. | |
| 05:20:24 | AndrewO leaves the room. | |
| 05:29:29 | atmos_ enters the room. | |
| 05:31:14 | atmos_ leaves the room. | |
| 05:36:57 | michaellatta enters the room. | |
| 05:39:46 | RyanTM leaves the room. | |
| 06:02:36 | twbray enters the room. | |
| 06:11:22 | ijcd enters the room. | |
| 06:12:20 | ijcd_ enters the room. | |
| 06:13:24 | ijcd leaves the room. | |
| 06:13:35 | benburkert leaves the room. | |
| 06:19:17 | antares enters the room. | |
| 06:24:35 | michalw enters the room. | |
| 06:32:49 | srbaker enters the room. | |
| 06:34:53 | thehcdreamer enters the room. | |
| 06:38:47 | aotearoa leaves the room. | |
| 06:58:58 | antares leaves the room. | |
| 07:00:31 | ijcd_ leaves the room. | |
| 07:02:25 | sudoer enters the room. | |
| 07:03:04 | mitchellvriley enters the room. | |
| 07:05:36 | thehcdreamer leaves the room. | |
| 07:12:48 | jtoy leaves the room. | |
| 07:26:52 | edwardam leaves the room. | |
| 07:28:24 | edwardam enters the room. | |
| 07:44:22 | BlackEdder enters the room. | |
| 07:56:56 | jgre_ enters the room. | |
| 08:05:09 | thehcdreamer enters the room. | |
| 08:06:59 | twbray leaves the room. | |
| 08:08:40 | mitchellvriley leaves the room. | |
| 08:12:45 | nicksieger enters the room. | |
| 08:13:21 | trythil enters the room. | |
| 08:26:02 | trythil leaves the room. | |
| 08:26:40 | trythil enters the room. | |
| 08:29:00 | trythil leaves the room. | |
| 08:54:00 | botanicus enters the room. | |
| 08:59:14 | octopod enters the room. | |
| 09:05:29 | Fullmoon enters the room. | |
| 09:28:10 | Fullmoon leaves the room. | |
| 09:34:40 | stepheneb_ leaves the room. | |
| 09:34:51 | krsh enters the room. | |
| 09:41:49 | Fullmoon enters the room. | |
| 09:47:26 | headius leaves the room. | |
| 09:48:10 | headius enters the room. | |
| 09:50:34 | Fullmoon leaves the room. | |
| 09:50:41 | headius leaves the room. | |
| 09:50:44 | Fullmoon enters the room. | |
| 09:51:10 | headius enters the room. | |
| 09:51:39 | ezmobius leaves the room. | |
| 09:53:53 | Fullmoon leaves the room. | |
| 09:58:34 | edwardam leaves the room. | |
| 10:03:46 | Fullmoon enters the room. | |
| 10:11:33 | Fullmoon leaves the room. | |
| 10:20:49 | Fullmoon enters the room. | |
| 10:23:18 | headius leaves the room. | |
| 10:26:22 | lstoll_ leaves the room. | |
| 10:29:25 | Maledictus enters the room. | |
| 10:36:51 | yugui enters the room. | |
| 10:45:05 | nari leaves the room. | |
| 10:47:28 | inspired enters the room. | |
| 11:08:16 | chris2 enters the room. | |
| 11:09:32 | sudoer leaves the room. | |
| 11:11:09 | CIA-20 | * Removed some BigDecimal tags; 64e7e51 - Gianluigi |
| 11:18:38 | nari enters the room. | |
| 11:24:43 | rubuildius_amd64 | Gianluigi: 64e7e5155; bin/ci failed! http://rafb.net/p/Q9AwMz83.html |
| 11:25:40 | mutle_ enters the room. | |
| 11:33:40 | Fullmoon leaves the room. | |
| 11:38:55 | rubuildius_ey64 | Gianluigi: 64e7e5155; 2629 files, 8609 examples, 28695 expectations, 0 failures, 0 errors |
| 11:39:50 | Fullmoon enters the room. | |
| 11:42:26 | mutle leaves the room. | |
| 11:59:35 | minciue enters the room. | |
| 12:12:17 | krsh leaves the room. | |
| 12:23:34 | lstoll enters the room. | |
| 12:26:33 | lstoll_ enters the room. | |
| 12:28:07 | joachimm leaves the room. | |
| 12:37:22 | aotearoa enters the room. | |
| 12:50:29 | lstoll leaves the room. | |
| 12:50:59 | inspired leaves the room. | |
| 13:09:46 | lstoll_ leaves the room. | |
| 13:10:53 | Fullmoon leaves the room. | |
| 13:31:14 | cremes enters the room. | |
| 13:35:24 | hemulen leaves the room. | |
| 13:36:04 | hemulen enters the room. | |
| 13:37:47 | imajes enters the room. | |
| 13:38:40 | binary011010 enters the room. | |
| 13:54:12 | thehcdreamer leaves the room. | |
| 13:57:16 | thehcdreamer enters the room. | |
| 14:02:06 | AndrewO enters the room. | |
| 14:02:32 | w1rele55 enters the room. | |
| 14:07:47 | BobFunkasdas leaves the room. | |
| 14:08:32 | srbaker_ enters the room. | |
| 14:08:35 | srbaker leaves the room. | |
| 14:09:14 | joachimm enters the room. | |
| 14:09:46 | krsh enters the room. | |
| 14:14:33 | yugui leaves the room. | |
| 14:15:57 | binary011010 leaves the room. | |
| 14:16:30 | lchin leaves the room. | |
| 14:18:17 | imajes leaves the room. | |
| 14:19:50 | michalw leaves the room. | |
| 14:25:40 | aotearoa leaves the room. | |
| 14:34:20 | benburkert enters the room. | |
| 14:35:30 | keisukefukuda enters the room. | |
| 14:40:26 | RyanTM enters the room. | |
| 14:49:19 | srbaker leaves the room. | |
| 14:54:30 | pauldix enters the room. | |
| 15:00:50 | NoKarma enters the room. | |
| 15:04:55 | moofbong enters the room. | |
| 15:05:59 | krsh leaves the room. | |
| 15:08:39 | keisukefukuda leaves the room. | |
| 15:09:04 | benburkert leaves the room. | |
| 15:09:19 | pauldix leaves the room. | |
| 15:12:54 | pauldix enters the room. | |
| 15:13:02 | keisukefukuda enters the room. | |
| 15:19:43 | fbuilesv leaves the room. | |
| 15:22:57 | keisukefukuda leaves the room. | |
| 15:34:41 | w1rele55 leaves the room. | |
| 15:34:41 | ko1_away leaves the room. | |
| 15:34:41 | jero5 leaves the room. | |
| 15:34:41 | zf leaves the room. | |
| 15:34:41 | loop leaves the room. | |
| 15:34:41 | rudebwoy leaves the room. | |
| 15:34:41 | maharg leaves the room. | |
| 15:34:41 | rue leaves the room. | |
| 15:34:41 | fearoffish leaves the room. | |
| 15:39:32 | w1rele55 enters the room. | |
| 15:39:32 | ko1_away enters the room. | |
| 15:39:32 | loop enters the room. | |
| 15:39:32 | maharg enters the room. | |
| 15:39:32 | jero5 enters the room. | |
| 15:39:32 | rudebwoy enters the room. | |
| 15:39:32 | rue enters the room. | |
| 15:39:32 | fearoffish enters the room. | |
| 15:39:32 | zf enters the room. | |
| 15:51:28 | pauldix leaves the room. | |
| 15:51:42 | pauldix enters the room. | |
| 15:54:40 | krsh enters the room. | |
| 16:03:22 | krsh_ enters the room. | |
| 16:08:46 | binary42 enters the room. | |
| 16:09:27 | michalw enters the room. | |
| 16:13:10 | enebo enters the room. | |
| 16:22:12 | krsh leaves the room. | |
| 16:24:59 | joachimm leaves the room. | |
| 16:26:08 | twbray enters the room. | |
| 16:27:19 | michaellatta leaves the room. | |
| 16:45:13 | bricolage enters the room. | |
| 16:45:47 | lopex enters the room. | |
| 16:47:09 | dfg59 enters the room. | |
| 16:48:29 | jgre_ leaves the room. | |
| 16:54:15 | michaellatta enters the room. | |
| 16:56:48 | benburkert enters the room. | |
| 17:07:48 | jgre_ enters the room. | |
| 17:09:10 | jgre__ enters the room. | |
| 17:17:53 | michaellatta_ enters the room. | |
| 17:19:40 | michaellatta_ leaves the room. | |
| 17:25:05 | lopex leaves the room. | |
| 17:25:21 | jgre_ leaves the room. | |
| 17:28:45 | ijcd enters the room. | |
| 17:29:09 | ijcd leaves the room. | |
| 17:29:51 | nari_ enters the room. | |
| 17:30:18 | nari leaves the room. | |
| 17:30:19 | twbray leaves the room. | |
| 17:30:53 | brapse leaves the room. | |
| 17:34:30 | michaellatta leaves the room. | |
| 17:35:04 | headius enters the room. | |
| 17:38:58 | michalw leaves the room. | |
| 17:40:32 | benny enters the room. | |
| 17:42:00 | dfg59 leaves the room. | |
| 17:42:08 | dfg59 enters the room. | |
| 17:43:00 | nicksieger leaves the room. | |
| 17:45:44 | blakewatters enters the room. | |
| 17:49:16 | Fullmoon enters the room. | |
| 17:53:05 | blakewatters leaves the room. | |
| 17:54:19 | thehcdreamer leaves the room. | |
| 17:55:23 | blakewatters enters the room. | |
| 17:58:38 | krsh leaves the room. | |
| 18:00:09 | joachimm enters the room. | |
| 18:00:10 | twbray enters the room. | |
| 18:04:41 | shayarnett enters the room. | |
| 18:05:48 | nicksieger enters the room. | |
| 18:10:00 | twbray leaves the room. | |
| 18:11:20 | edwardam enters the room. | |
| 18:19:32 | yipstar enters the room. | |
| 18:22:26 | keisukefukuda enters the room. | |
| 18:22:59 | brapse enters the room. | |
| 18:27:39 | octopod leaves the room. | |
| 18:27:51 | Fullmoon leaves the room. | |
| 18:34:24 | NoKarma leaves the room. | |
| 18:35:21 | headius leaves the room. | |
| 18:36:14 | brapse_ enters the room. | |
| 18:48:09 | antares enters the room. | |
| 18:53:04 | brapse leaves the room. | |
| 18:54:02 | gramos enters the room. | |
| 18:54:11 | shayarnett leaves the room. | |
| 18:55:31 | nakajima enters the room. | |
| 18:56:59 | enebo leaves the room. | |
| 19:00:22 | NoKarma enters the room. | |
| 19:03:43 | ijcd enters the room. | |
| 19:06:12 | bricolage leaves the room. | |
| 19:06:28 | robin_dewd leaves the room. | |
| 19:07:45 | bricolage enters the room. | |
| 19:07:45 | benburkert leaves the room. | |
| 19:08:01 | benburkert enters the room. | |
| 19:14:09 | octopod enters the room. | |
| 19:18:54 | keisukefukuda leaves the room. | |
| 19:19:15 | thehcdreamer enters the room. | |
| 19:23:20 | dgtized leaves the room. | |
| 19:24:47 | dgtized enters the room. | |
| 19:24:53 | headius enters the room. | |
| 19:29:43 | enebo enters the room. | |
| 19:53:31 | antares leaves the room. | |
| 19:54:16 | drbrain | where does opcode (not Opcode) come from? |
| 19:55:25 | drbrain | specifically, vm/builtin/task.hpp line 46 |
| 19:57:29 | chris2 leaves the room. | |
| 20:00:25 | drbrain | it's just an unsigned int? |
| 20:01:11 | drbrain | yeah, opcode blockargs seems wrong, instructions.rb does a comparison: |
| 20:01:17 | drbrain | (unsigned int)count == task->blockargs) |
| 20:01:22 | drbrain | for passed_blockarg |
| 20:05:52 | drbrain | ah, here it is, vmmethod.hpp |
| 20:05:58 | BobFunkmm enters the room. | |
| 20:06:56 | botanicus leaves the room. | |
| 20:07:49 | benburkert leaves the room. | |
| 20:07:57 | drbrain | oh, crap, cycle |
| 20:09:08 | gramos | I'm making a binary debian package for rubinius, and I need build it and copy to a target folder like debian/rubinius/ |
| 20:09:43 | shayarnett enters the room. | |
| 20:10:10 | gramos | I'm trying this: PREFIX=debian/rubinius rake build |
| 20:11:29 | gramos | the building process works fine, but when I install the package I get this error: |
| 20:11:49 | gramos | gramos@macross:~$ rbx -v |
| 20:11:49 | gramos | ruby: No such file or directory -- /home/cadorcha/rubinius-debian/rubinius/shotgun/run-dev.rb (LoadError) |
| 20:11:56 | ezmobius enters the room. | |
| 20:12:27 | drbrain | I bet PREFIX is broken again |
| 20:12:39 | drbrain | what's in run-dev.rb? |
| 20:12:47 | drbrain | or, did it even install it right? |
| 20:13:33 | drbrain | or, did it even install it right? |
| 20:13:37 | drbrain | crap |
| 20:13:48 | gramos | I need build it in a target directory like: ~/rubinius-deb/debian/ |
| 20:14:15 | drbrain | you'll probably need to do some fixing then |
| 20:14:27 | gramos | but wiht a reference to /urs/local for ex. |
| 20:15:15 | drbrain | also, I don't think rake build should be used with PREFIX |
| 20:17:01 | gramos | I read it in the INSTALL file |
| 20:17:07 | gramos | == Prefix installs |
| 20:17:21 | drbrain | well, then it's probably broken |
| 20:17:28 | drbrain | or, isn't built to do what you want |
| 20:17:30 | gramos | ok |
| 20:17:32 | gramos | :/ |
| 20:17:55 | drbrain | it's ok, it's just a rakefile, shouldn't be too hard for you to fix :) |
| 20:18:05 | gramos | :) |
| 20:18:42 | gramos | thanks, I'm going to try to fix later. |
| 20:21:02 | nicksieger leaves the room. | |
| 20:30:01 | dfg59 leaves the room. | |
| 20:37:06 | michalw enters the room. | |
| 20:40:05 | BobFunkmm leaves the room. | |
| 20:42:56 | spaceG enters the room. | |
| 20:44:12 | hemulen leaves the room. | |
| 20:52:20 | Arjen_ enters the room. | |
| 20:56:59 | lopex enters the room. | |
| 20:58:21 | drfreeze | 5 more days for early registration at Lone Star Ruby Conference http://LoneStarRubyconf.com |
| 21:01:00 | gramos | drbrain: I lost my commit bit with the repo migration |
| 21:01:18 | gramos | can you give me the commit bit again? |
| 21:01:31 | brixen | gramos: evan can, what's your github user? |
| 21:01:41 | gramos | gramos |
| 21:01:47 | brixen | heh, k |
| 21:01:59 | gramos | http://github.com/gramos/ |
| 21:02:28 | brixen | gramos: I'll remind evan when he's back |
| 21:02:29 | gramos | I sended an email to evan but didn't asnwer me |
| 21:02:41 | gramos | brixen: thanks |
| 21:02:46 | brixen | n/p |
| 21:04:09 | benburkert enters the room. | |
| 21:06:05 | evan | gramos: ok, added back in. |
| 21:09:18 | gramos | evan: thanks! |
| 21:12:54 | octopod leaves the room. | |
| 21:13:12 | octopod enters the room. | |
| 21:20:27 | shayarnett leaves the room. | |
| 21:22:04 | c0sin enters the room. | |
| 21:25:24 | ezmobius_ enters the room. | |
| 21:28:28 | ezmobius leaves the room. | |
| 21:35:22 | tarcieri | hey ezmobius |
| 21:35:29 | ezmobius | heya |
| 21:35:45 | tarcieri | did you see you can declare modules from Reia's REPL now? |
| 21:35:57 | ezmobius | nah i didnt |
| 21:36:02 | tarcieri | like... real BEAM modules loaded into the code server |
| 21:36:05 | ezmobius | got a link? |
| 21:36:11 | ezmobius | oh sounds interesting |
| 21:36:27 | tarcieri | http://tonyarcieri.org/articles/2008/08/05/reia-now-creating-modules-on-the-fly |
| 21:36:35 | ezmobius | so you can load standard erlang modules dynamically and call them from reia? |
| 21:37:06 | tarcieri | well, it's been able to call out to Erlang modules for awhile |
| 21:37:11 | tarcieri | this is more the other way around |
| 21:37:13 | ezmobius | oh I see |
| 21:37:25 | ezmobius | making reia modules in the shell and dynamically loadin gthem |
| 21:37:28 | ezmobius | coolness |
| 21:37:38 | tarcieri | yeah |
| 21:38:00 | dgtized | is ryan davis in the channel? |
| 21:38:22 | tarcieri | ezmobius: but yeah, those Reia modules get loaded into Erlang's code server and can be called directly from Erlang |
| 21:38:23 | brixen | dgtized: he's zenspider, and normally here, yes, but not today afaik |
| 21:38:45 | dgtized | oh right, sometimes I forget name -> handle mapping |
| 21:38:53 | dgtized | cpp branch is still broken for gcc 4.2.3 |
| 21:39:02 | brixen | dgtized: ah yeah |
| 21:39:02 | dgtized | since his changes last saturday |
| 21:39:02 | evan | what error are you getting? |
| 21:39:07 | evan | oh, right |
| 21:39:08 | evan | the deps. |
| 21:39:20 | ezmobius | tarcieri: wild stuff |
| 21:39:20 | dgtized | yea vm compiles, but none of the unit tests will compile |
| 21:39:52 | dgtized | evan: http://gist.github.com/3971 - that's the first page of like 20 errors |
| 21:39:59 | dgtized | 20 pages, not errors |
| 21:40:08 | brixen | tarcieri: if we could get actors reasonably close to as good as erlang, would you use ruby or reia? out of curiosity |
| 21:40:18 | tarcieri | ezmobius: yeah check out Smerl... it's pretty cool in general |
| 21:40:25 | dbussink | dgtized: where does the weird &* come from? |
| 21:40:29 | evan | dgtized: it's only in the tests, right? |
| 21:41:18 | ezmobius | tarcieri: we're going to release our 'eye' tool soon. its a nw build/deploy system for erlang. allows to build OTP apps and packeg them as ebuilds or tarballs and also autyo deploys and handles hot code loading etc.. 'eye' == engineyard erlang |
| 21:41:19 | tarcieri | brixen: I don't think it's possible for a shared state language to provide the same concurrency / distribution benefits as Erlang |
| 21:41:40 | tarcieri | ezmobius: have you looked at ear at all? |
| 21:42:57 | tarcieri | brixen: Erlang uses a thread pool to dynamically load balance "processes" across CPUs with relatively little locking |
| 21:42:58 | dgtized | dbussink: I don't know where the weird &* comes from, I have had to fix that before, but that's not really the source of the vast majority of errors |
| 21:43:28 | dgtized | dbussink: everyone fixates on that first error, when I'm pretty sure it's the other ones that are more important |
| 21:43:31 | evan | the &* thing isn't in the .cpp files, it seems to just be the way that g++ reports stuff |
| 21:43:47 | dbussink | dgtized: hehe, yeah, you're right |
| 21:43:51 | tarcieri | brixen: but umm, the real answer quite clearly is that I'm going to use both and I'll probably burn out and give up on Reia at some point... don't really see that happening with Rubinius |
| 21:44:25 | evan | dgtized: that first error is just that that function seems to be missing |
| 21:44:26 | brixen | tarcieri: ah ok. just curious |
| 21:44:32 | Defiler | evan: Are there any differences in ByteArray between cpp and shotgun that I should keep in mind? |
| 21:44:47 | evan | Defiler: not that I can think off hand |
| 21:44:49 | brixen | tarcieri: I thought reia had mutable state, or you were thinking about that? |
| 21:45:15 | Defiler | evan: I like it when my opinion of something after reading the code matches the one on the top of your head. |
| 21:45:25 | evan | :) |
| 21:45:44 | tarcieri | brixen: It supports rebinding. State is still immutable. |
| 21:45:55 | brixen | tarcieri: ahh gotcha |
| 21:46:19 | tarcieri | brixen: and actually it doesn't support rebinding yet... but I have a branch where I'm working on a pass of the compiler to convert code with multiple assignment to SSA form |
| 21:46:33 | tarcieri | brixen: in SSA form the code is still functionally "pure" |
| 21:46:41 | brixen | makes sense |
| 21:47:58 | dgtized | evan: but that function is there, it's just complaining about the signature |
| 21:48:27 | ezmobius leaves the room. | |
| 21:49:41 | evan | dgtized: hm. |
| 21:51:21 | dgtized | again, I don't think the first error is the issue, because it's not even like it's bleeding into other files, every single test is unable to load some of it's dependencies |
| 21:51:31 | dgtized | and complains bitterly about all the missing ones |
| 21:52:00 | dgtized | if it's just the first error then I can just poke around to find that, but the catastrophic dependency problems otherwise are what concern me |
| 21:53:05 | ezmobius enters the room. | |
| 21:56:09 | dgtized | - TS_ASSERT(om.valid_object_p(obj->klass)); |
| 21:56:09 | dgtized | + TS_ASSERT(om.valid_object_p(obj)); |
| 21:56:13 | dgtized | I swapped that out |
| 21:56:22 | dgtized | in test_objectmemory.hpp |
| 21:56:33 | dgtized | and that fixed the one error that everyone seems to focus on |
| 21:56:55 | dgtized | it's not complaining that valid_object_p is being passed a Class instead of an Object |
| 21:57:20 | dgtized | once I add that fix anyway |
| 21:58:45 | Defiler | The test does a cast to (Class*) that seems sketchy to me |
| 21:59:51 | evan | Defiler: thats not the test though |
| 21:59:57 | evan | the test is checking that obj's class is valid. |
| 22:00:34 | Defiler | Yeah I know |
| 22:00:39 | dgtized | anyway, none of that really matters, the real issue is there are another 2410 lines of errors that appear to be caused purely due to zenspider ripping out the wrong set of dependencies for a stricter compiler |
| 22:00:57 | Defiler | but when that wacky Class*&&&*** thing was appearing, it was accessing the variable that was cast to (Class*) |
| 22:00:59 | drbrain | I'm working on the dependency problems introduced in field_extract.rb |
| 22:01:28 | dgtized | Defiler: it's complaining that Class *& is being used when it has an Object * |
| 22:02:20 | dgtized | the *& is a misnomer, that doesn't really matter it's mostly just that it's being passed a Class instead of an Object |
| 22:04:08 | Defiler | Right |
| 22:04:18 | pastie enters the room. | |
| 22:04:21 | Defiler | What I'm saying is that if that cast wasn't there, it would be happy |
| 22:04:24 | Defiler | It seems to me |
| 22:04:41 | dgtized | what would be happy the test, or everything else? |
| 22:05:03 | evan | what cast? |
| 22:05:04 | Defiler | The test. I think this is a test error, not a code-under-test error |
| 22:05:24 | dgtized | I switched it from doing that assert on obj->klass to obj and that made that part happy, but I still got 2400 lines of errors from all the forward declaration problems |
| 22:05:37 | evan | dgtized: thats wrong |
| 22:05:41 | Defiler | line 304 in test_objectmemory.hpp |
| 22:05:44 | Defiler | is the cast in question |
| 22:05:48 | evan | all you've done is make the test wrong |
| 22:06:01 | evan | Defiler: thats technically fine for the test (the cast) |
| 22:06:04 | evan | try doing |
| 22:06:05 | dgtized | evan: ok, so here, I will just delete that test, to make sure it's not that test effecting things |
| 22:06:12 | evan | Class* real_class = obj->klass; |
| 22:06:22 | evan | om.valid_object_p(real_class) |
| 22:06:25 | evan | dgtized: hell no you won't. |
| 22:06:33 | evan | oh just ther. |
| 22:06:42 | evan | well, that doesn't really solve anything |
| 22:06:45 | dgtized | evan: I'm not going to permently delete, just comment out to make sure it's not bleeding |
| 22:06:50 | evan | ok |
| 22:07:15 | dgtized | right, I just did that, and I still get 2412 lines of errors from forward declaration problems and the like |
| 22:07:15 | Defiler | Yeah. Class* should be totally fine given the OBJECT signature of valid_object_p |
| 22:07:19 | Defiler | weird error |
| 22:08:04 | dgtized | so that test has NOTHING to do with the rest of the errors, so please can we ignore that one and look at the problems after that? |
| 22:10:06 | evan | what does gcc --version report for you? |
| 22:10:18 | dgtized | gcc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7) |
| 22:10:25 | evan | k |
| 22:10:34 | evan | cause I don't get that class thing here I don't think |
| 22:10:42 | evan | debian, 4.2.4 |
| 22:11:16 | dgtized | so you don't get any forward declaration problems with 4.2.4 at all? |
| 22:11:21 | BobFunkmm enters the room. | |
| 22:11:25 | evan | dgtized: no, i do |
| 22:11:33 | evan | but I don't get the Class*& error. |
| 22:11:40 | dgtized | oh |
| 22:12:23 | evan | huh |
| 22:12:33 | evan | looks like zenspider didn't add any deps to the tests |
| 22:12:38 | evan | not sure why the work at all on darwin. |
| 22:12:46 | Defiler | I'm running gcc version 4.3.1 20080626 on one of my boxes. Is that one that we would expect to see these failures under? |
| 22:12:58 | evan | like test_float.hpp doesn't include builtin/float.hpp |
| 22:13:15 | drbrain | why didn't it in the first place? |
| 22:13:31 | evan | whats it? |
| 22:13:34 | dgtized | prolly cause it was in object.hpp or something |
| 22:13:49 | evan | dgtized: because it was included in objects.hpp |
| 22:13:55 | evan | er. drbrain: ^^ |
| 22:14:11 | drbrain | vm/test/test_float.hpp should have had an include for float.hpp from the beginning |
| 22:14:34 | evan | drbrain: ok, but that doesn't help us right now. |
| 22:14:54 | evan | cause they did work |
| 22:14:56 | evan | and now they don't. |
| 22:15:05 | jgre__ leaves the room. | |
| 22:16:03 | dgtized | in builtin/float.hpp he also migrated the include for builtin/object.hpp and type_info.hpp from inside of namespace rubinius to outside of it |
| 22:16:55 | evan | dgtized: that's fine. |
| 22:17:04 | evan | those header files declare the namespace anyway |
| 22:18:17 | dgtized | k |
| 22:18:40 | dgtized | I just wondered if some of the forward decl problems were from delcaring some thing inside the rubinius namespace, and other things not? |
| 22:19:20 | evan | huh. something else is up. |
| 22:19:22 | evan | on linux |
| 22:19:25 | evan | because it's not allowing |
| 22:19:26 | evan | OBJECT o = Object::i2n(3) |
| 22:19:39 | evan | dgtized: it would |
| 22:19:45 | evan | where do you see forward decl's outside the namespace? |
| 22:20:13 | dgtized | evan: I'm not sure, I haven't seen it explicitely it just seemed like something to look for |
| 22:20:50 | dgtized | /vm/test/test_regexp.hpp:27: error: incomplete type ‘rubinius::String’ used in nested name specifier |
| 22:21:00 | dgtized | isn't nested name specifier a complaint about that? |
| 22:21:03 | dgtized | or am I misinterpreting? |
| 22:21:07 | evan | hm. |
| 22:21:08 | evan | dunno. |
| 22:21:35 | Defiler | Which rev of gcc do you have again, dg? |
| 22:22:31 | evan | oh |
| 22:22:33 | dgtized | gcc 4.2.3 |
| 22:22:36 | evan | hm, in the regexp case |
| 22:22:47 | evan | it seems like it's complaining because rubinius::String is only a forward decl |
| 22:22:53 | evan | the header file is never included for string |
| 22:23:11 | evan | we never call methods on a String* though |
| 22:23:23 | evan | but i guess darwin is smarter/looser about that than linux |
| 22:23:24 | evan | i'm guessing |
| 22:23:54 | dgtized | the header for for string is never included where? |
| 22:24:03 | evan | in test_regexp.hpp |
| 22:24:14 | evan | or in any headers it includes |
| 22:24:22 | evan | it was included via builtins.hpp before |
| 22:24:28 | evan | but builtins.hpp is gone |
| 22:25:09 | evan | ok |
| 22:25:11 | evan | thats the problem |
| 22:25:19 | dgtized | ah -- when i added #include "builtin/string.hpp" just below builtin/regexp include on test_regexp that fixed the regexp forward decl errors |
| 22:25:41 | evan | darwin lets you use an type that is forward decl'd anywhere, so long as you don't deref it |
| 22:25:44 | evan | linux doesn't |
| 22:25:54 | evan | so on darwin |
| 22:26:03 | evan | String* str = blah(); |
| 22:26:10 | evan | works fine if String is just a fwd decl |
| 22:26:13 | evan | but blows up on linux |
| 22:26:33 | dgtized | ah |
| 22:26:43 | dbussink | well, more like blows up on a more recent and stricter gcc ;) |
| 22:26:50 | evan | right. |
| 22:26:55 | Defiler | man LLVM takes a while to compile |
| 22:27:10 | evan | another problem with fwd decl's of classes is that they don't include their inheritance info |
| 22:27:14 | Defiler | even on my beloved Linux archive 2.6.25-ARCH #1 SMP PREEMPT Mon Jul 14 14:56:27 UTC 2008 x86_64 Intel(R) Core(TM)2 Duo CPU E7200 @ 2.53GHz GenuineIntel GNU/Linux |
| 22:27:41 | evan | so darwin lets you use them softly, but linux gets really confused using a type that is only fwd decl'd |
| 22:27:44 | evan | ie |
| 22:27:47 | evan | class Fixnum; |
| 22:27:56 | evan | OBJECT o = Object::i2n(3); |
| 22:28:03 | evan | Object::i2n returns a Fixnum* type |
| 22:28:10 | Defiler | What's the point of supporting forward decls if they don't work? That seems odd |
| 22:28:13 | evan | but the compiler doesn't know that Fixnum is a subclass of Object |
| 22:28:16 | evan | and thus it complains. |
| 22:28:31 | evan | Defiler: they work in the simplest capacity only |
| 22:28:37 | Defiler | Shouldn't type analysis happen after all the files and whatnot have been preprocessed? |
| 22:28:55 | evan | that is in the signature of a method |
| 22:29:05 | evan | attempting to do anything else seems to confuse the hell out of g++ |
| 22:29:11 | Defiler | Aah |
| 22:29:17 | AndrewO leaves the room. | |
| 22:29:44 | dgtized | there are also some complaints about using rubinius::String in some cases that demand a const char * |
| 22:29:45 | evan | i'm still not sure why darwin lets ya get away with the using just fwd decls |
| 22:29:49 | evan | but anyways. |
| 22:30:01 | evan | the tests just need to have the actual headers for the types they use included in them. |
| 22:30:07 | dgtized | evan: I've added two includes and fixed some errors, working my way back up the list |
| 22:30:21 | evan | dgtized: ok, you'll need to just continue to do that |
| 22:30:25 | evan | eventually you'll get to the top |
| 22:31:01 | Defiler | aha -Wold-style-declaration |
| 22:31:24 | benburkert leaves the room. | |
| 22:31:35 | bricolage leaves the room. | |
| 22:34:17 | drbrain | in field_extract, should it skip generate_mark if generate_sets is empty? |
| 22:34:19 | bricolage enters the room. | |
| 22:34:22 | drbrain | that doesn't seem to make sense |
| 22:34:28 | Defiler | aha |
| 22:35:15 | Defiler | evan: http://gist.github.com/4282 |
| 22:35:35 | Defiler | Is that likely to be the source of the trouble, or just another symptom? |
| 22:36:22 | Defiler | http://gcc.gnu.org/gcc-4.3/porting_to.html |
| 22:36:43 | evan | drbrain: looking |
| 22:38:06 | dgtized | ugh -- I think that's only part of the problem maybe each of the tests really just need to include every builtin? |
| 22:38:07 | evan | drbrain: hm |
| 22:38:22 | evan | drbrain: I think I did that as just a brain dead way to know if marks would generate any data |
| 22:38:26 | evan | drbrain: it's fine to remove it |
| 22:39:20 | evan | dgtized: they don't need to include all of them |
| 22:39:43 | evan | Defiler: looks like just more fun. |
| 22:42:29 | Defiler | I just removed 'static' from all the partial specializations and I no longer get that error |
| 22:42:58 | Defiler | which gets me through to this: http://pastie.org/248808 |
| 22:43:44 | w1rele55 leaves the room. | |
| 22:45:43 | evan | which error? |
| 22:46:14 | Defiler | The one I pasted at gist (4282) |
| 22:46:14 | BobFunkmm leaves the room. | |
| 22:46:30 | evan | oh rawr. |
| 22:46:32 | evan | stupid gcc |
| 22:46:52 | Defiler | Well it builds now after these changes |
| 22:47:07 | evan | ok |
| 22:49:05 | aotearoa enters the room. | |
| 22:49:07 | evan | i pretty well get template specialization |
| 22:49:21 | evan | but I must not understand at all how g++ wants to store them |
| 22:49:53 | drbrain | ha, found an awesome bug in field_extract.rb |
| 22:50:38 | Defiler | evan: I think what is going on is that they wanted to ban changing the storage class in a specialization |
| 22:50:43 | Defiler | and in so doing, they banned repeating yourself |
| 22:51:01 | evan | Defiler: ok, I can certainly understand that |
| 22:51:05 | evan | drbrain: oh? |
| 22:51:54 | drbrain | in the parser there was if mapped = @type_map[type] then type = mapped else type = type end; ...; add_field ..., mapped, ... |
| 22:52:08 | drbrain | so if @type_map hadn't filled in yet, it would be nil |
| 22:52:13 | drbrain | or, didn't have a mapping |
| 22:52:17 | Defiler | I get this now: http://gist.github.com/4286 |
| 22:53:12 | Defiler | with this diff: http://gist.github.com/4287 |
| 22:53:37 | lorenzod8n enters the room. | |
| 22:54:22 | moofbong leaves the room. | |
| 22:54:34 | evan | Defiler: you're doig this on 4.3 i'm assuming? |
| 22:54:41 | Defiler | Yes |
| 22:55:03 | evan | ok, you're not at the point where the proper headers aren't included |
| 22:55:08 | evan | drbrain: hm. |
| 22:55:13 | Defiler | http://pastie.org/248816.txt |
| 22:55:22 | Defiler | is my gcc -v |
| 22:55:57 | evan | drbrain: that seems like the correct behavior |
| 22:56:33 | drbrain | on line 356ish? |
| 22:56:36 | drfreeze | Anyone here have a link to the 1 line wiki written in ruby? |
| 22:56:59 | drbrain | you wouldn't have the else there if you really wanted to use mapped |
| 22:57:35 | benburkert enters the room. | |
| 22:57:59 | drbrain | also, I don't understand what the name[0] == ?* is about |
| 22:58:05 | drbrain | the regexp can't match that |
| 22:58:10 | evan | checking if it's a pointer |
| 22:58:24 | evan | so it can strip the * |
| 22:58:27 | drbrain | * isn't in \d\w_ |
| 22:58:40 | evan | someone changed the regexp then |
| 22:58:42 | evan | and not that code. |
| 22:59:26 | evan | drbrain: ok, i see on mapped |
| 22:59:34 | evan | if @type_map[type] is nil |
| 22:59:40 | evan | we still pass that nil through to add_field |
| 22:59:43 | evan | which is probably wrong. |
| 22:59:48 | drbrain | yeah |
| 22:59:52 | drbrain | I switched it to type |
| 22:59:56 | drbrain | which is correct |
| 23:00:00 | evan | k |
| 23:00:08 | edwardam_ enters the room. | |
| 23:00:19 | dgtized | evan: ok I fixed everything except that first *& error |
| 23:00:32 | edwardam leaves the room. | |
| 23:00:38 | evan | dgtized: does pull it out as a seperate declaration fix it? |
| 23:00:38 | dgtized | I still find it weird that every other instance of valid_object_p is testing obj and not obj->klass |
| 23:00:53 | evan | dgtized: read the name of the test. |
| 23:01:07 | dgtized | Maybe if I just type cast it back? |
| 23:01:20 | evan | did you try what I said earlier? |
| 23:01:27 | evan | Class* real = obj->klass; |
| 23:01:33 | evan | valid_object_p(real) |
| 23:01:36 | evan | try that. |
| 23:02:07 | dgtized | but valid_object_p takes an Object, not a Class |
| 23:02:13 | evan | Class < Object |
| 23:02:16 | evan | so thats fine. |
| 23:02:24 | evan | oh ya know what |
| 23:02:25 | evan | crap. |
| 23:02:26 | evan | i know |
| 23:02:27 | evan | put |
| 23:02:32 | evan | #include "builtin/class.hpp" |
| 23:02:33 | evan | at the top |
| 23:02:36 | evan | i'll bet that fixes it |
| 23:02:39 | evan | this is the same thing |
| 23:02:46 | evan | g++ doesn't realize that Class is a subclass of Object |
| 23:03:10 | AndrewO enters the room. | |
| 23:03:20 | dgtized | yup that fixed it |
| 23:03:38 | dgtized | the weird thing is, the dependencies still aren't clean |
| 23:03:59 | dgtized | because test_task.hpp uses Array but doesn't need to include it but it's happy about that |
| 23:04:11 | evan | hrm. |
| 23:06:09 | wmoxam enters the room. | |
| 23:06:42 | dgtized | we should probably graph the dependencies and remove uneeded links |
| 23:06:58 | evan | sure |
| 23:07:26 | drbrain | dgtized: rake debug:graph |
| 23:07:49 | gramos | Guys, Where are you documenting the libs required to _run _ rubinius? |
| 23:07:58 | dgtized | zenhacks? |
| 23:08:11 | drbrain | to get graph.rb |
| 23:08:31 | thehcdreamer leaves the room. | |
| 23:08:51 | Defiler | gramos: README should have that info. The answer is 'not much, assuming it builds on your platform' |
| 23:09:02 | dgtized | ugh my gem installed is messed up since I added gems.datamapper.org as a repo and now it's missing |
| 23:09:03 | Defiler | Which, as we are seeing, is not guaranteed ha ha |
| 23:09:08 | gramos | :) |
| 23:09:21 | Defiler | dgtized: do you have a ~/.gemrc ? |
| 23:09:21 | drbrain | gem sources -r gems.datamapper.org |
| 23:09:29 | dgtized | yea just did that |
| 23:09:36 | headius | shouldn't zenspider clean up the broken deps stuff? |
| 23:09:49 | evan | nah |
| 23:09:50 | Defiler | headius: He's on jury duty, so his availablity is intermittent |
| 23:09:53 | evan | it just needs to be cleaned. |
| 23:10:01 | evan | knowledge specialization == bad. |
| 23:10:03 | Defiler | Also, we act with one will in here |
| 23:10:03 | gramos | I going to add LIBC6 >= 2.4 |
| 23:10:14 | headius | generally if someone breaks something we make them fix it |
| 23:10:20 | drbrain | I'm getting a new failure in TestObject::test_clone |
| 23:10:27 | evan | headius: he didn't really break it |
| 23:10:28 | dgtized | headius: but it was holding up enough people it just needed to be fixed |
| 23:10:32 | evan | g++ did. |
| 23:10:35 | headius | avoiding knowledge specialization doesn't mean cleaning up other people's wreckage usually |
| 23:10:41 | dgtized | evan: he did, because he didn't check enough platforms |
| 23:10:42 | Defiler | Yeah, this is gcc 4.3 spreading its dark wings |
| 23:11:03 | evan | dgtized: we have to be careful where we cut that line though |
| 23:11:05 | drbrain | I'm still saying it was broken to begin with |
| 23:11:14 | evan | dgtized: i'm not testing every commit on multiple platforms |
| 23:11:18 | evan | and silly too |
| 23:11:31 | gramos | We should have a section "requirements for _run_ rubinius" |
| 23:11:31 | drbrain | but, it may be cxxtest's fault for not having independent compilation of suites |
| 23:11:31 | evan | drbrain: probably, but that position still doesn't help. |
| 23:11:34 | headius | just curious |
| 23:11:36 | dgtized | yea, but a big compiler order change like that should be more cautiously applied I should think |
| 23:11:42 | headius | seems like a lot of hassle |
| 23:12:06 | dgtized | anyway, I installed ZenHacks, and rake debug:graph still is looking for it |
| 23:12:09 | evan | drbrain: if you're trying to rub my nose in it, I got it. |
| 23:12:22 | fbuilesv enters the room. | |
| 23:12:26 | imajes enters the room. | |
| 23:12:46 | dgtized | evan: on a seperate note, I still can't run all of the vm tests once they compile |
| 23:12:56 | dgtized | evan: since it still can't recognize the particular function name |
| 23:13:01 | evan | hrm. |
| 23:13:01 | evan | ok. |
| 23:13:18 | dgtized | so the linking is still wrong as well somewhere |
| 23:15:02 | dgtized | http://gist.github.com/4290 |
| 23:18:28 | anonuser leaves the room. | |
| 23:18:54 | dgtized | ugh -- alright so I added all these includes, but now as I go back and remove some of them it works fine |
| 23:18:54 | qrush enters the room. | |
| 23:19:16 | dgtized | so something got added somewhere that was necessary, and was bleeding |
| 23:19:31 | dgtized | some of them are necessary though |
| 23:23:53 | bricolage leaves the room. | |
| 23:24:31 | keisukefukuda enters the room. | |
| 23:29:25 | headius leaves the room. | |
| 23:32:00 | evan | arg. |
| 23:32:02 | evan | wtf. |
| 23:32:15 | evan | type_info isn't being generated correctly again. |
| 23:32:47 | drbrain | evan: wait about 1 minute |
| 23:32:52 | evan | ok. |
| 23:33:39 | evan | oh, I should find an Ical calendar with all the olympics event TV times |
| 23:34:26 | wmoxam leaves the room. | |
| 23:34:28 | robin_dewd enters the room. | |
| 23:35:25 | anonuser enters the room. | |
| 23:36:01 | CIA-20 | * Wire up thread_new primitive; 2ce7ba9 - Eric Hodel |
| 23:36:01 | CIA-20 | * Implement Thread#run and hook up thread_run primitive.; 656a4b0 - Eric Hodel |
| 23:36:02 | CIA-20 | * Ensure that test_instructions.hpp is included in runner.cpp generation. Fix generation of various bits from field_extract.rb Improve readability of ...; ecc013d - Eric Hodel |
| 23:36:21 | evan | drbrain: sweet. |
| 23:36:27 | evan | updating |
| 23:36:46 | drbrain | that fixes the phantom tests, too |
| 23:36:53 | evan | sweet. |
| 23:36:54 | drbrain | the 60-odd that disappear and reappear |
| 23:37:02 | evan | yeah, mine reappeared |
| 23:37:04 | evan | what was up? |
| 23:37:12 | drbrain | I picked up an extra failure in object_clone |
| 23:37:27 | drbrain | vm/test/test_instructions.hpp is generated |
| 23:37:49 | evan | yep |
| 23:37:51 | drbrain | so if you ran `rake clean; rake` it would not have appeared when the glob was resolved |
| 23:37:52 | evan | and it wasn't being? |
| 23:38:00 | evan | hm. |
| 23:38:26 | evan | whats gen/includes.hpp? |
| 23:38:33 | drbrain | the dependency that created it was invoked after FileList[] was expanded |
| 23:38:41 | drbrain | it replaces your order stuff |
| 23:38:53 | evan | zenspider nuke that |
| 23:38:55 | evan | I thought |
| 23:39:12 | drbrain | there's a list of stuff headers that field_extract.rb needs to read in now |
| 23:39:15 | drbrain | -stuff |
| 23:39:23 | evan | where is that list? |
| 23:39:32 | drbrain | I don't like it, but next time I meet up with zenspider we'll figure out how to do it right |
| 23:39:37 | drbrain | in the rakefile |
| 23:39:40 | drbrain | vm.rake |
| 23:39:47 | evan | oh, it's embedded in there. |
| 23:39:53 | evan | ok. |
| 23:40:00 | drbrain | yeah, and field_extract.rb now generates it |
| 23:40:08 | evan | why do we need gen/includes.hpp? |
| 23:40:17 | evan | i thought we had everything cleaned up with the real deps |
| 23:40:45 | drbrain | yes, but makedepend only spits out information on .o files |
| 23:40:59 | evan | i still don't get why we need gen/includes.hpp |
| 23:41:15 | drbrain | so I'm not sure if there's a way to say "compiledmethod.hpp depends on executable.hpp" |
| 23:41:30 | drbrain | I'm hoping it is only temporary |
| 23:41:34 | evan | o |
| 23:41:35 | evan | k |
| 23:41:58 | drbrain | makedepend can say "compiledmethod.o depends on executable.hpp" |
| 23:42:03 | drbrain | but not .hpp => .hpp |
| 23:42:08 | evan | yep |
| 23:42:24 | evan | i still don't see how thats related to gen/includes |
| 23:42:46 | evan | course, i only see gen/includes.hpp used 2 places |
| 23:42:52 | evan | primitives.cpp and type_info.cpp |
| 23:43:13 | drbrain | those files use just about every built-in object |
| 23:43:42 | drbrain | so either we embed this list of every builtin in three places (vm.rake, type_info.cpp, primitives.cpp) |
| 23:43:49 | drbrain | or have it in one and spit out the others |
| 23:43:53 | evan | ah, gotcha. |
| 23:43:55 | drbrain | so that they both occur in the right order |
| 23:44:06 | evan | you're trying trying to DRY up having to include every builtin header |
| 23:44:08 | drbrain | those two files depend on all the builtins |
| 23:44:14 | evan | s/trying trying/just trying/ |
| 23:44:15 | drbrain | yes |
| 23:44:54 | drbrain | I think with some cleverness field_extract_headers in the rakefile could be automatically filled in |
| 23:45:02 | drbrain | but I don't know how much cleverness is required |
| 23:45:14 | evan | sure |
| 23:45:29 | evan | thats why field_extract used that stupid regexp against a header file |
| 23:45:32 | drbrain | previously objects.hpp was included in type_info.cpp and the other |
| 23:45:37 | drbrain | this is an equivalent |
| 23:45:46 | drbrain | yep |
| 23:45:49 | evan | did objects.hpp get deletede? |
| 23:45:58 | drbrain | same concept, differently actuallised |
| 23:46:03 | drbrain | actualized |
| 23:46:07 | drbrain | no, it got gutted |
| 23:46:08 | evan | ok |
| 23:46:12 | evan | we should rename it |
| 23:46:19 | evan | or finish moving everything out of it |
| 23:46:26 | drbrain | yeah |
| 23:52:01 | enebo leaves the room. | |
| 23:56:21 | dgtized | ok there is definitely bleed through of dependencies between each test in the test directory |
| 23:56:25 | moofbong enters the room. | |
| 23:56:44 | dgtized | some of them I can strip it down to just the test file include thing and it's happy, and others I have to include specific files |
| 23:56:56 | drbrain | yes, since they all end up in one big C file |
| 23:57:10 | evan | yep |
| 23:57:22 | evan | oh, that reminds me |
| 23:57:24 | dgtized | well then why do we have individual file includes on the tests at all? |
| 23:57:28 | evan | we should check the order that they're included |
| 23:57:36 | evan | if it's using the filesystem order |
| 23:57:38 | evan | thats the problem |
| 23:57:45 | evan | darwin == alphabetical |
| 23:57:48 | evan | linux == random |
| 23:57:57 | dgtized | why not just have one single include file at the top of all the tests? |
| 23:57:58 | evan | well, thats probably part of the problem |
| 23:58:05 | dgtized | for just the tests |
| 23:58:12 | evan | cause thats not how cxxtest works. |
| 23:58:45 | dgtized | but it's slowly including each of those files anyway |
| 23:58:56 | dgtized | so the later the test, the more of those files ahve already been included |
| 23:59:38 | evan | right |
| 23:59:47 | evan | which is why we should check the order that they're included in runner |
| 23:59:54 | evan | so that it's stable |
| 23:59:59 | dgtized | oh |