Show enters and exits. Hide enters and exits.
| 00:01:44 | antares | agardiner: and I found present bits of object memory and gc code much easier to understand now |
| 00:02:17 | agardiner | yeah, writing object stuff in cpp is definitely a better fir! |
| 00:02:23 | agardiner | er, fit |
| 00:02:40 | evan | agardiner: you'll be able to reuse all your knowledge :) |
| 00:02:59 | agardiner | hehe, yeah, just have to figure out where things have moved |
| 00:02:59 | antares | evan: is there a chance for a bit better docs on cpp branch? is it a good idea to contribute them as you go with this grand rewrite? |
| 00:03:15 | evan | tarcieri: the cpp branch is mainly about 2 things: moving the logic to c++ and fixing eval order |
| 00:03:19 | agardiner | so, since this is effectively a rewrite of the VM, we need a new name... |
| 00:03:23 | evan | antares: PLEASE |
| 00:03:26 | evan | antares: yes! |
| 00:03:28 | evan | i love that idea |
| 00:03:42 | evan | i was talking with Dave Thomas last week also about rdoc in kernel/ |
| 00:03:56 | smparke1 enters the room. | |
| 00:03:59 | evan | and we need to go back in and fully bacfill all rdoc into there |
| 00:04:04 | evan | backfill |
| 00:04:07 | agardiner | agreed! |
| 00:04:16 | antares | evan: ok I'll try to catch up and contribute docs as things push forward. |
| 00:05:59 | dgtized | I wish we could keep the actual rdoc text seperate from the codebase |
| 00:06:14 | agardiner | can i also make a suggestion regading kernel doc? i think we should tag any method's that are not part of the MRI-defined interface in some way |
| 00:06:28 | dgtized | I know it's supposed to be intelligent comments, but it makes it harder to read the code in my opinion |
| 00:06:30 | evan | dgtized: i don't think thats in the cards for now |
| 00:06:55 | evan | i want to keep the kernel/ like most of the rest of the ruby code in existance |
| 00:06:58 | drbrain | dgtized: you can use -- to turn off RDoc |
| 00:07:01 | evan | and that is using rdoc via inline comments |
| 00:07:09 | rue | dgtized: You could define the comments to be the same colour as your background ;) |
| 00:07:15 | evan | plus, i've yet to see a good counter to inline docs |
| 00:07:31 | evan | agardiner: yes, sounds good. drbrain talked about being able to add new rdoc template tags |
| 00:07:42 | rue | Or we could start folding |
| 00:08:01 | dgtized | evan: code per screen page, you can only fit so much and big comments like that just eat that like crazy |
| 00:08:04 | evan | agardiner: perhaps we need one where we can apply text tags to methods, or just a rdoc template tag for mri |
| 00:08:19 | evan | dgtized: use folding |
| 00:08:21 | evan | or tags |
| 00:08:28 | evan | ctags that is |
| 00:08:32 | dgtized | anyway, I know my opinion on this is generally in the minority so I will shut up now -- I just wish there was a cleaner way |
| 00:08:56 | evan | dgtized: i'm willing to entertain a new way, but it needs to be proven |
| 00:09:09 | evan | i don't feel like using rubinius as a test bed for that kind of thing atm |
| 00:09:20 | dgtized | I mean if we just had a .rdoc file for every .rb file |
| 00:09:30 | dgtized | but I understand how that can desynchronize easily |
| 00:09:46 | djwhitt | dgtized: can't you just configure your editor to fold the comments by default? |
| 00:09:54 | agardiner | yeah, its the synchronicity that kills having the doc elsewhere in my view |
| 00:09:57 | djwhitt | vim and emacs could both be setup to do that |
| 00:10:08 | drbrain | http://rafb.net/p/dJqUtc32.html |
| 00:10:15 | dgtized | djwhitt: because I don't want it to fold all comments, just the ones that are huge and distracting |
| 00:10:44 | lorenzod8n enters the room. | |
| 00:11:02 | djwhitt | dgtized: what editor do you use? |
| 00:11:06 | dgtized | djwhitt: emacs |
| 00:11:26 | agardiner | drbrain: i notice your style is to leave a blank line between the comment and the method name... |
| 00:11:44 | agardiner | whereas i normally put the comment directly above |
| 00:11:44 | drbrain | agardiner: it is, as much of the original RDoc is that way |
| 00:11:48 | evan | agardiner: mine too |
| 00:11:57 | evan | i think thats more visually pleasing |
| 00:12:03 | agardiner | does it matter? |
| 00:12:11 | drbrain | to RDoc, no |
| 00:12:21 | agardiner | i.e. should we agree a standard approach to all follow? |
| 00:12:33 | agardiner | or use it like a signature :-) |
| 00:13:26 | djwhitt | dgtized: eh, never mind then. no idea how that stuff works in emacs (I use vim) |
| 00:14:32 | dgtized | djwhitt: there are a couple of folding modes for emacs, I've never been too happy with them though -- but either way, there is a set of code comments that I want, which are the ones pertinent to the code at hand, and there is a set that I want seperate, which is the interface documentation level |
| 00:14:57 | dgtized | djwhitt: and I definitely have never seen folding that is smart about those two types of comments |
| 00:16:05 | drbrain | (in my past above, the stuff between -- and ++ doesn't go into ri/rdoc) |
| 00:16:06 | djwhitt | dgtized: well, I'm pretty sure I could whip up something in vim that relies on the length of the comment, but I won't bother since you're using emacs |
| 00:16:06 | rue | Split the difference: put an empty comment line there rather than no line or an empty line |
| 00:16:08 | drbrain | paste |
| 00:16:47 | dgtized | anyway, as I said, I understand the advantage of having them side by side for ensuring the documentation matches the code, I just wish it didn't interfere with the code so much |
| 00:16:49 | evan | i like the empty line because visually, it makes the definition line 'pop' |
| 00:17:22 | Arjen_ leaves the room. | |
| 00:17:24 | evan | dgtized: one day, we'll have an object editor |
| 00:17:38 | evan | dgtized: and be able to model it any number of ways |
| 00:17:48 | agardiner | ok, i'm happy to conform - an empty line it is |
| 00:17:48 | drbrain | evan: I agree with that statement |
| 00:18:32 | dgtized | it's too bad there is no wiki like code editor -- with some type of parallel annotation track |
| 00:19:34 | dgtized | either way it would be too slow to edit anyway because I'm sure the annotation part would be fancier then the actual editing which is sort of the more important part |
| 00:19:50 | dgtized | anyway -- I guess I'm just grouching about something that prolly has no good solution yet, some day though |
| 00:19:59 | rubuildius_ppc enters the room. | |
| 00:20:12 | evan | dgtized: it's ok, i bitch in here too |
| 00:20:49 | Defiler | dgtized: http://www.litterary.com/ |
| 00:21:15 | Defiler | dgtized: They have a really cool UI that seems like it would be pretty easy to use for code |
| 00:21:54 | evan | dgtized: perhaps if you're interested |
| 00:22:21 | evan | dgtized: writing an rdoc output engine that formatted things the way you like would be useful |
| 00:22:37 | evan | dgtized: then you could just read the code in that format mainly |
| 00:22:47 | evan | if it's the reading of the code you're most concerned with |
| 00:23:02 | dgtized | evan: no it's more the writing/editing of the code with the comments in the way that concerns me |
| 00:23:36 | imajes_ leaves the room. | |
| 00:24:11 | imajes_ enters the room. | |
| 00:24:39 | dgtized | evan: though on the flip side, I will say I've never really found rdoc output to be an exceptionally useful way to learn how to use a library -- it's really useful for looking up some specific function and how to use it, but it's not good for higher level documentation about how things fit together -- it suffers from the man page problem of being really accurate reference on code so long as you know the name in the first place |
| 00:25:25 | evan | dgtized: you should try doing up a rdoc output engine that you like |
| 00:25:30 | evan | i'm sure it would be useful |
| 00:25:46 | evan | code (as data) modelling isn't something that we do enough of |
| 00:26:10 | dgtized | evan: but the problem is not just how it's formatted when it's coming out, I just feel like the documentation that is provided is useful only if you know what you are looking for -- it's poor at teaching you the library as a whole |
| 00:26:14 | evan | ah |
| 00:26:16 | evan | gotcha |
| 00:26:25 | evan | well, thats a plain old documentation problem |
| 00:26:40 | imajes_ leaves the room. | |
| 00:27:15 | dgtized | I do have an idea of what ruby needs for this type of thing though -- it probably needs a smalltalk style editor |
| 00:28:01 | drbrain | I try to put the how-to documentation in the appropriate class' documentation, |
| 00:28:20 | drbrain | with a synopsis in the README.txt to get you started |
| 00:28:37 | dgtized | drbrain: yea -- some libraries do a good job of that, but it's quite frequent that people decide they documented there code just because they put rdoc comments on each method |
| 00:29:01 | imajes__ enters the room. | |
| 00:29:43 | dgtized | the thing with the smalltalk style editor is you only edit a single function at a time anyway, so it's fine to have the documentation next to it in the file, and you can switch to/from documentation and code view rapidly |
| 00:30:20 | evan | dgtized: thats what i mean by an object editor |
| 00:30:31 | dgtized | evan: ok, that's kind of what I thought but I wasn't certain |
| 00:31:15 | dgtized | does that work properly if you aren't dealing with a live system though? |
| 00:31:21 | rubuildius_ppc | Brian Ford: ddf72d434; 1855 files, 6390 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/176897 |
| 00:31:46 | dgtized | as in does that require everything to be live and running in order to see every single piece of code attached to an object? |
| 00:33:12 | evan | dgtized: the smalltalk version does |
| 00:33:29 | evan | but since we're talking about a hypothetical piece of software, it doesn't have to! |
| 00:33:31 | evan | :) |
| 00:33:59 | djwhitt | Factor has a really interesting take on the whole thing |
| 00:34:26 | djwhitt | it's image based with a code browser, but saves code in files |
| 00:34:39 | djwhitt | and ties into whatever editor you already use (emacs, vim, etc.) |
| 00:35:08 | agardiner | so, what are we calling this shiny new VM... shotgun2? machinegun? "laser" (with Dr Evil finger quotes)? |
| 00:35:25 | djwhitt | I haven't done much with it, but it seems to have some really interesting ideas (Factor that is) |
| 00:35:44 | drbrain | Remmington |
| 00:35:57 | agardiner | Winchester? |
| 00:36:08 | rm enters the room. | |
| 00:36:18 | drbrain | Buck |
| 00:36:22 | dgtized | glock? |
| 00:36:44 | agardiner | VerMillion? |
| 00:36:44 | drbrain | I hate glocks, they twist in my hand too much |
| 00:37:00 | drbrain | like they're trying to escape |
| 00:37:08 | fbuilesv leaves the room. | |
| 00:37:09 | federico_ enters the room. | |
| 00:38:06 | therealadam leaves the room. | |
| 00:38:09 | dgtized | evan: wait, I just thought of something -- Rubinius does actually have the associated code for each method stored in the method right? |
| 00:38:24 | evan | dgtized: the original text? |
| 00:38:32 | dgtized | evan: yea |
| 00:38:36 | evan | not currently |
| 00:38:43 | evan | but some people asked about it at rubyfools |
| 00:38:51 | evan | we could add it pretty easily |
| 00:38:59 | evan | we could add the sexp even easier |
| 00:39:07 | agardiner | i vote for the sexp |
| 00:39:11 | agardiner | much more useful |
| 00:39:24 | dgtized | evan: could save/compile back to that slot without reloading the whole file? |
| 00:39:58 | headius | what about SCRIPT_LINES__ |
| 00:40:10 | dgtized | headius: SCRIPT_LINES doesn't give you the context |
| 00:40:21 | rue | evan: Sidenote, if you add the github repo as a remote, you can set it as an automatic push |
| 00:40:34 | rue | I have been trying to keep mine up to date |
| 00:40:37 | evan | oh, thanks for reminding me |
| 00:40:40 | evan | i'll do that now |
| 00:40:55 | evan | i have to add it to the post-push hook on hoshi |
| 00:41:25 | dgtized | if we have the raw text in the slot, shouldn't recalculating the sexp for the method be trivial? |
| 00:42:07 | dgtized | and if we never save the code as a sexp then it doesn't really make sense to consider that the raw form, not to say we shouldn't munge the hell out of the sexp, but it's not what one would save afterwards |
| 00:42:39 | trythil leaves the room. | |
| 00:42:41 | agardiner | the sexp is much easier to manipulate via code though |
| 00:43:09 | dgtized | I guess I'm just thinking it would be awesome if you were in irb, and you could type edit Compile.compile |
| 00:43:34 | dgtized | and it would drop you into an editor with just that method, and it's documentation, nothing else from that class |
| 00:43:51 | dgtized | and when you save and exit from the editor it dynamically reloads that method |
| 00:43:56 | fbuilesv | rue: how? I'm about to fork off you since evan's repository was pretty old last time I checked |
| 00:44:03 | dgtized | now obviously some things require a more high level reload |
| 00:44:25 | AndrewO enters the room. | |
| 00:44:30 | halorgiu1_ enters the room. | |
| 00:44:32 | dgtized | but I'm talking about lisp/smalltalk style editing of a running instance |
| 00:44:42 | rue | evan: Also, would it be time to re-baptise the VM? Shotgun is the C version of the original, after all :) |
| 00:44:43 | halorgium leaves the room. | |
| 00:45:09 | rue | "BFG" maybe? |
| 00:45:34 | evan | dgtized: it would work for some things, but it breaks done in same cases |
| 00:45:35 | agardiner | dgtized: i dislike the idea of having source code you manipulate on a method rather than in the file... how do you ensure the two are kept in sych? |
| 00:45:46 | evan | rue: heh |
| 00:46:38 | dgtized | agardiner: if we dump out the rba image when the application "quits" |
| 00:46:57 | dgtized | agardiner: you wouldn't ever see the raw text files |
| 00:47:02 | rue | Cxxtest uses a forking model, right? |
| 00:47:07 | evan | no |
| 00:47:12 | evan | it just crashes |
| 00:47:17 | evan | if the test crashes |
| 00:47:17 | djwhitt | hah! |
| 00:48:01 | agardiner | dgtized: well, i think a sexp is a more compact representation, and also one that could probably be used to generate source code easily enough |
| 00:48:33 | dgtized | agardiner: so you include the comments in the parsed sexp? |
| 00:48:52 | agardiner | not yet we don't, but i imagine it could be done |
| 00:49:20 | agardiner | perhaps we are thinking about different problems though... |
| 00:49:21 | dgtized | has anyone seen the in browser code editor for smalltalk seaside? |
| 00:49:29 | dgtized | agardiner: I think so |
| 00:49:58 | dgtized | agardiner: though I definitely see the advantage for sexp if you wanted to run macro's on it |
| 00:50:08 | agardiner | yeah, that's what i'm thinking of |
| 00:50:09 | halorgium | dgtized: yip |
| 00:50:31 | dgtized | agardiner: however, it still seems like you want a ground truth layer that you always presume the code comes in prior to operating a bunch of macro's on it |
| 00:50:53 | dgtized | agardiner: I guess that's why I thought text would be most appropriate and not the sexp |
| 00:51:13 | dgtized | agardiner: because the sexp of the method as it finally runs is not necessarily easily readable |
| 00:51:24 | dgtized | agardiner: or human editable |
| 00:52:10 | agardiner | yeah, i don't see it being edited by hand |
| 00:52:54 | agardiner | but i also figure the source .rb is normally available... |
| 00:53:44 | agardiner | and having the source be able to get out of synch with whats in the machine troubles me... |
| 00:53:52 | reima leaves the room. | |
| 00:54:28 | dgtized | agardiner: I guess I'm talking about using raw source to bootstrap a machine image and then just running a live machine from then on out |
| 00:54:48 | agardiner | ok, so you want a smalltalk image type thing |
| 00:54:48 | dgtized | that's what a smalltalk image does |
| 00:54:51 | dgtized | yea |
| 00:55:03 | agardiner | i get that, but it seems like a big departure from standard Ruby |
| 00:55:24 | dgtized | I'm not saying that we would always do that, but I think it would be a really interesting thing to support |
| 00:55:26 | evan | plus, which is one thing that seemed to hamper smalltalk, you can't keep your code in source control then |
| 00:55:39 | dgtized | evan: they have source control built into there image format |
| 00:55:42 | evan | or rather, it's much harder to keep it in source control |
| 00:55:52 | evan | dgtized: yeah, and it sucks ass from what i've heard |
| 00:56:13 | dgtized | evan: ok, I haven't played with it that much so I'm less aware of how that worked |
| 00:56:25 | agardiner | i like the idea of supporting an image format for quick startup, pause/suspend, etc |
| 00:56:52 | agardiner | but i would want the source kept in text files, personally |
| 00:56:56 | dgtized | it seems like it would be a nice way to deal with crap like rubygems taking forever on your load time |
| 00:56:59 | stepheneb enters the room. | |
| 00:57:26 | dgtized | dgtized: as in you just load in an image and then run your program, so you only need two fstat calls |
| 00:57:27 | agardiner | yeah, definitely dig the idea of just dumping an image file |
| 00:58:01 | agardiner | but that doesn't have to mandate keeping the source in the image |
| 00:58:07 | djwhitt | agardiner: Factor does exactly what you suggest |
| 00:58:49 | agardiner | provided you have nice reload/unload capabilities, you should still be able to modify your image after its loaded |
| 00:59:23 | agardiner | djwhitt: cool! isn't factor the thing zed is into now? |
| 00:59:50 | djwhitt | agardiner: yeah, I haven't dug into it too deeply, but I loaded it up and played with it a bit |
| 01:00:14 | agardiner | yeah, i think i glanced at the website once... |
| 01:00:18 | djwhitt | agardiner: http://factorcode.org/ |
| 01:00:23 | djwhitt | it's super easy to get it running |
| 01:00:27 | djwhitt | at least on my Linux box |
| 01:01:05 | djwhitt | I'm not sure I'm into actually learning the language, but it is a really interesting system |
| 01:01:24 | djwhitt | a lot of good/unique ideas |
| 01:01:34 | dgtized | hey has anyone tried running strace on bin/mspec ci |
| 01:01:59 | headius leaves the room. | |
| 01:02:03 | dgtized | and compare to MRI |
| 01:02:10 | headius enters the room. | |
| 01:03:10 | headius leaves the room. | |
| 01:03:21 | headius enters the room. | |
| 01:04:29 | dgtized | also for that matter, why does bin/mspec ci -tr have so much problems? |
| 01:07:08 | rue | It runs !spec/ruby also |
| 01:07:09 | kamal_fariz | i believe brixen says that ci is for rbx, not mri |
| 01:07:24 | kamal_fariz | he removed the ability to do -tr for ci, but drbrain put it back in |
| 01:07:54 | drbrain | only for easier command-line editing |
| 01:08:39 | evan | it should go back in as refusing to run |
| 01:08:45 | evan | drbrain: you should use mspec run for that |
| 01:08:47 | evan | not mspec ci |
| 01:09:09 | drbrain | yes, I think I have cured myself of my evil ways |
| 01:09:23 | dgtized | ah |
| 01:10:36 | dgtized | why is it rubinius makes like 15 stat calls for timer.rb/timer.rbc? |
| 01:10:47 | dgtized | that all fail each time? |
| 01:11:04 | evan | it's looking for it |
| 01:11:08 | evan | notice that the path is changing |
| 01:11:20 | dgtized | right, and then it's changing from .rb, .rbc, .so |
| 01:11:25 | agile enters the room. | |
| 01:11:36 | dgtized | is there anyway to make that faster, or cached? |
| 01:11:40 | evan | nope |
| 01:11:59 | evan | it by definition needs to ask the OS everytime |
| 01:13:23 | rue | Unless you can decree it is in a certain location always |
| 01:13:24 | dgtized | oh the next weapon in quack after shotgun is nailgun so you could use that as the vm name |
| 01:13:32 | dgtized | quake not quack |
| 01:13:48 | dgtized | I don't remember what it was in doom |
| 01:16:24 | dgtized | chaingun maybe? |
| 01:16:56 | evan | perhaps we should go with something less violent |
| 01:17:09 | evan | it was actually shotgun because of an initial naming theme i had |
| 01:17:12 | drbrain | Rabbit |
| 01:17:16 | evan | codenames of agents from Alias |
| 01:17:36 | dgtized | fair enough, I was just extrapolating from the instance of it being a gun |
| 01:17:37 | drbrain | shotgun -> rabbit -> stew pot |
| 01:17:48 | rue | Hrm |
| 01:18:03 | rue | scraps "eyeball gouging spoon" |
| 01:18:18 | dgtized | shotgun++? |
| 01:20:08 | rue | REFERENCE2_P? |
| 01:20:26 | evan | what about it? |
| 01:21:07 | agardiner | scarlet? vermillion? |
| 01:21:08 | rue | Slightly ambiguous :) |
| 01:22:06 | kw enters the room. | |
| 01:22:30 | rue | Naming convention in general, UpperCase for classes and structs, snake_case for methods? Underscores for instance variables? |
| 01:23:07 | dgtized | evan: after the stat's that fail there are 2 more stats each to the succeeding .rb and .rbc files, and one to /etc/localtime |
| 01:23:15 | rue | Cannot remember which lib it was but it was funny, they used at_varname for instance variables :P |
| 01:23:44 | jlindley enters the room. | |
| 01:24:05 | cored enters the room. | |
| 01:24:28 | dgtized | evan: http://www.pastie.org/176927 |
| 01:24:50 | evan | dgtized: ok, so what? |
| 01:24:54 | evan | what are you debugging? |
| 01:25:06 | dgtized | evan: I'm thinking that our code for checking the timestamp in order to recompile |
| 01:25:35 | dgtized | evan: is making more stat calls then necessary -- I'm just wondering about things that are probably slowing down rbx load times |
| 01:25:35 | rue | Is open() calling that fstat()? |
| 01:26:19 | evan | dgtized: it's possible |
| 01:26:29 | evan | checking at the strace level is only one tool though |
| 01:26:36 | evan | since a lot of libc functions use stat internally |
| 01:26:51 | evan | so it's hard to know sometimes if it's us doing it directly or something like fopen |
| 01:26:59 | evan | which is used internally |
| 01:27:07 | dgtized | evan: shouldn't that show up as an fopen in the strace though? |
| 01:27:14 | tarcieri | thought strace traced system calls, not libc calls |
| 01:27:37 | rue | Yay bitfields |
| 01:27:38 | dgtized | oh, I forgot about that -- fair enough |
| 01:28:26 | headius | drbrain: I don't know what susan potter is talking about, but we'd *really* like that fix made |
| 01:28:46 | headius | we've been shipping with rubygems in JRuby for over a year with the script as 'gem' and it was changed in RubyGems without anyone asking us |
| 01:28:52 | trythil enters the room. | |
| 01:35:37 | dgtized | I really like gem as a subcommand of rbx, it's too bad it isn't the solution for jruby, ruby1.9, and ruby1.8 |
| 01:36:39 | rue | Oh, and get_foo()/set_foo() vs. overloaded foo([arg]) ? |
| 01:37:14 | binary42 enters the room. | |
| 01:37:43 | headius | dgtized: jruby -S gem |
| 01:37:51 | headius | I'm not sure why rbx didn't just use the same form |
| 01:37:54 | headius | since it's a standard ruby flag |
| 01:38:04 | evan | what is? |
| 01:38:06 | headius | -S |
| 01:38:09 | evan | it is? |
| 01:38:11 | headius | yep |
| 01:38:18 | evan | huh |
| 01:38:20 | evan | so it is. |
| 01:38:28 | evan | because it's uglier |
| 01:38:29 | evan | :) |
| 01:38:33 | headius | the behavior is to run the script in PATH, but we modified it slightly to check JRuby's bin dir first |
| 01:38:38 | headius | evan: like eval order, eh? |
| 01:39:03 | evan | takes headius's shit stiring spoon away |
| 01:39:06 | dodecaphonic_ enters the room. | |
| 01:39:23 | headius | you walked right into that one |
| 01:39:26 | fbuilesv | hha |
| 01:39:27 | evan | not really |
| 01:39:36 | evan | since i'm changing all the eval order stuff |
| 01:39:44 | headius | fwiw I like rbx way better too |
| 01:39:54 | dodecaphonic leaves the room. | |
| 01:39:57 | evan | so do it |
| 01:40:05 | headius | though it's a little odd to have special behavior for what comes there |
| 01:40:10 | headius | without a - or something |
| 01:40:10 | evan | nah |
| 01:40:14 | evan | people are used to sub commands now |
| 01:40:29 | evan | it's hip to have sub commands |
| 01:40:53 | headius | rbx -gem install whatever would be unambiguous |
| 01:40:58 | headius | --gem maybe |
| 01:41:04 | evan | rbx gem is unambigious too |
| 01:41:14 | headius | unless there's a gem script in the current dir |
| 01:41:26 | evan | then it's doing what you asked it to! |
| 01:41:26 | evan | :D |
| 01:41:55 | headius | yes yes |
| 01:42:02 | evan | hrm |
| 01:42:04 | evan | what did i do... |
| 01:42:17 | stepheneb | brixen: you around? |
| 01:43:10 | boyscout | 1 commit by Evan Phoenix |
| 01:43:11 | boyscout | * Fix some deps in INSTALL, and include github url; 1162da3 |
| 01:43:15 | evan | sweetness |
| 01:44:03 | evan | ok, github is automatically updated now |
| 01:45:03 | imajes_ leaves the room. | |
| 01:45:56 | wycats enters the room. | |
| 01:46:12 | wycats___ enters the room. | |
| 01:48:44 | fbuilesv | evan: how's it done, post commit to push to GH? |
| 01:48:59 | stepheneb | with a patch to common.mk I've got installation to a custom dir (instead of /usr/local) working ... |
| 01:49:03 | stepheneb | but I'm getting some strange errors running bin/mspec ci -trbx that don't show up in the summary |
| 01:49:36 | evan | fbuilesv: yep |
| 01:49:45 | evan | echo "Updating github.." |
| 01:49:45 | evan | git push --all github > ~/github.log 2>&1 |
| 01:49:50 | stepheneb | 855 files, 6334 examples, 22388 expectations, 0 failures, 0 errors |
| 01:50:04 | evan | github is setup as a remote in config |
| 01:50:24 | fbuilesv | evan: gonna steal that, using github as remote too here |
| 01:50:30 | evan | go for it |
| 01:50:44 | rubuildius_amd64 | Evan Phoenix: 1162da3cc; 1855 files, 6387 examples, 22451 expectations, 0 failures, 0 errors; http://rafb.net/p/G1aO3B79.html |
| 01:50:45 | evan | lets people track and view the source on github |
| 01:50:51 | evan | and fork and such |
| 01:50:58 | stepheneb | none of the specs in spec/subtend/*_spec.rb run |
| 01:51:50 | stepheneb | the errors are prefixed with: /lib/rbconfig.rb:7: looks like you loaded rubinius' rbconfig from ruby |
| 01:51:56 | headius | fork!!! |
| 01:53:00 | headius | sapphinius! |
| 01:53:10 | evan | um. |
| 01:53:11 | evan | yeah. |
| 01:53:24 | drbrain | Rubinius for Lesbians? |
| 01:53:43 | headius | Lesbinius? |
| 01:53:49 | crafterm enters the room. | |
| 01:53:58 | drbrain | "sapphic" |
| 01:54:23 | evan | sparticus? |
| 01:54:34 | headius | ahh yes |
| 01:54:37 | headius | sappho |
| 01:55:19 | rubuildius_ppc | Evan Phoenix: 1162da3cc; 1855 files, 6390 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/176937 |
| 01:55:44 | kevinclark | stepheneb: they used to |
| 01:55:48 | kevinclark | fix em ;) |
| 01:56:05 | stepheneb | the subtend specs are the only place that compile_extension occurs |
| 01:56:16 | stepheneb | compile_extension('subtend_array') |
| 01:56:24 | kevinclark | it was a helper someone rolled up |
| 01:56:45 | fbuilesv | stepheneb: they're failing and they're tagged as failings, that's why they don't appear in CI |
| 01:57:05 | Fullmoon enters the room. | |
| 01:57:20 | stepheneb | ahh ... so they don't work for you either? |
| 01:57:23 | fbuilesv | that phrase just showed my poor english :S |
| 01:57:34 | fbuilesv | stepheneb: no, check spec/tags/subtend, you can see what's failing in there |
| 01:58:24 | rubuildius_amd64 leaves the room. | |
| 01:58:50 | stepheneb | my errors are very different and I think are caused by the fact that I am running the tests on an rbx installed in a custom dir |
| 01:58:54 | Packet_Monkey leaves the room. | |
| 01:59:04 | stepheneb | see: http://pastie.org/176931 for the errors and how to reproduce |
| 01:59:15 | fbuilesv | stepheneb: if you get failures outside the specs tagged as failing then yes, it's the custom location |
| 01:59:20 | stepheneb | my errors don't even show up in the smmary |
| 01:59:43 | stepheneb | 0 failures, 0 errors |
| 02:00:32 | rubuildius_amd64 enters the room. | |
| 02:00:33 | stepheneb | where is compile_extension defined? |
| 02:00:46 | kevinclark | it used to be defined in the helpers with subtend's specs |
| 02:00:52 | kevinclark | I don't know where it is now, if anywhere |
| 02:01:00 | kevinclark | git grep compile_extension |
| 02:01:01 | rubuildius_amd64 leaves the room. | |
| 02:01:28 | rubuildius_amd64 enters the room. | |
| 02:01:35 | djwhitt | there's going to be a repeat build |
| 02:01:37 | wycats__ leaves the room. | |
| 02:01:38 | djwhitt | ignore it |
| 02:01:51 | wycats_ leaves the room. | |
| 02:02:05 | djwhitt | I accidentally cleared out the session thus negating the nice session saving I hacked in :( |
| 02:02:45 | fbuilesv | stepheneb: subtend_helper and somehow I can't run ci -trbx |
| 02:03:05 | Packet_Monkey enters the room. | |
| 02:03:29 | fbuilesv | stepheneb: you had the same problem with pretty_inspect earlier, right? |
| 02:07:00 | stepheneb | fbuilesv: don't think so ... hmm ... the story is all in the http://pastie.org/176931 |
| 02:07:22 | stepheneb | I just instrumented subtend_helper.rb -- I'll see what it tells me |
| 02:07:55 | fbuilesv | someone complained about that earlier, think evan said something about it |
| 02:08:13 | fbuilesv | I thought ci was the same as running -trbx but apparently not |
| 02:09:32 | djwhitt | stepheneb: do you have something in the RUBYOPT environment variable? |
| 02:10:21 | stepheneb | djwhitt: yes: RUBYOPT=rubygems |
| 02:10:25 | stepheneb | should I unset it |
| 02:10:28 | djwhitt | yep |
| 02:10:33 | djwhitt | that should fix it I think |
| 02:11:16 | rubuildius_amd64 | Evan Phoenix: 1162da3cc; 1855 files, 6387 examples, 22451 expectations, 0 failures, 0 errors; http://rafb.net/p/BmOFAL74.html |
| 02:11:44 | jlindley leaves the room. | |
| 02:12:03 | fbuilesv | is there a difference between mspec ci -tx and mspec ci -trbx? |
| 02:12:27 | stepheneb | djwhitt: thanks -- that fixed the problem |
| 02:13:21 | stepheneb | all the tests pass running rbx installed in a custom location |
| 02:15:30 | Packet_Monkey leaves the room. | |
| 02:17:43 | Packet_Monkey enters the room. | |
| 02:18:31 | nicksieger leaves the room. | |
| 02:24:58 | VVSiz_ enters the room. | |
| 02:31:50 | MenTaLguY enters the room. | |
| 02:35:28 | Packet_Monkey leaves the room. | |
| 02:35:52 | tarcieri | sup MenTaLguY |
| 02:36:22 | tarcieri | someone on rubinius-dev seems pretty interested in contributing to the Actor code |
| 02:37:32 | MenTaLguY | cool |
| 02:37:38 | MenTaLguY | we have a mailing list now? |
| 02:37:41 | brixen | fbuilesv: yes, bin/mspec ci -h |
| 02:37:51 | brixen | fbuilesv: er bin/mspec -h |
| 02:38:04 | tarcieri | MenTaLguY: http://groups.google.com/group/rubinius-dev |
| 02:38:51 | brixen | fbuilesv: actually, I'll update that, but 'x' or 'rubinius' runs shotgun/rubinius; 'X' or 'rbx' runs rbx found in PATH |
| 02:39:54 | MenTaLguY | tarcieri: ah. well, you can tell him that I'm planning on working on 1, 2, and 3 very soon |
| 02:40:22 | tarcieri | heh, or you can :) |
| 02:40:28 | tarcieri | is going to go grab some dinner |
| 02:40:30 | fbuilesv | brixen: that makes sense, I was wondering why was one failing while the other one just worked, ty |
| 02:40:40 | MenTaLguY | well, dunno about the flush thing, but the other two |
| 02:40:48 | tarcieri | screw the flush thing |
| 02:40:48 | tarcieri | heh |
| 02:40:55 | brixen | fbuilesv: yeah, brand new change as of this morning :) |
| 02:41:29 | tarcieri | flush is a great way to compensate for "message leaks" rather than fixing them |
| 02:42:09 | fbuilesv | brixen: if I do a rake rebuild and install, shouldn't rbx and rubinius give me the same output? |
| 02:42:24 | brixen | fbuilesv: one would hope so, yes |
| 02:42:40 | fbuilesv | brixen: weird, let me rebuild and see if I still get the early failures |
| 02:43:06 | VVSiz leaves the room. | |
| 02:43:10 | brixen | fbuilesv: installing isn't well tested, so errors are certainly possible |
| 02:44:02 | cremes | tarcieri, MenTaLguY: i've been corresponding with a guy who has written another actor library called dramatis |
| 02:44:28 | cremes | tarcieri, MenTaLguY: he plans to unveil it in a week or so; i have suggested he contact both of you to pool resources |
| 02:44:43 | MenTaLguY | cool |
| 02:45:47 | fbuilesv | pastie: hola |
| 02:46:09 | pastie | http://pastie.org/176958 by fbuilesv. |
| 02:46:24 | fbuilesv | brixen: check that pastie please |
| 02:46:44 | fbuilesv | brixen: that's after a rebuild + install, with -tx it works fine though |
| 02:48:50 | nicksieger enters the room. | |
| 02:53:20 | stepheneb | brixen: fyi, got the rbx custom install working and all the tests passed |
| 02:56:05 | mutle enters the room. | |
| 02:56:22 | mutle leaves the room. | |
| 02:57:22 | mutle enters the room. | |
| 02:57:34 | mutle leaves the room. | |
| 03:00:26 | cored leaves the room. | |
| 03:01:16 | brixen | stepheneb: awesome, I committed your patch so you should ask evan for a bit |
| 03:01:48 | stepheneb | I've got another one coming -- a bit of what ;-) |
| 03:02:01 | brixen | stepheneb: commit bit |
| 03:02:21 | brixen | fbuilesv: hmm, that's because pp is in stdlib and not lib |
| 03:02:34 | brixen | I thought evan pushed that, but I can do it in a sec |
| 03:04:42 | fbuilesv | brixen: cool, thanks |
| 03:06:35 | boyscout | 1 commit by Brian Ford |
| 03:06:36 | boyscout | * Move pp.rb to lib so it is installed.; 5e58b39 |
| 03:11:30 | fbuilesv | brixen: http://pastie.caboo.se/176970 another unrelated issue with mspec |
| 03:11:44 | fbuilesv | brixen: anything else I should know changed this morning? :) |
| 03:12:41 | brixen | fbuilesv: ahh, I'll fix those warnings |
| 03:12:42 | rue | The official colour is now Goldenrod |
| 03:13:07 | brixen | fbuilesv: anything significant is in the commits. if it wasn't significant, I left it out :) |
| 03:13:13 | brixen | rue: nice |
| 03:13:21 | fbuilesv | brixen: ty :) |
| 03:13:27 | stepheneb | I've got a patch for the Rakefile that adds a clean:config task to clean:all that deletes config.h and config.mk -- are there specs for the Rakefile tasks? |
| 03:13:51 | brixen | fbuilesv: np |
| 03:14:01 | brixen | stepheneb: no specs for Rakefile |
| 03:14:11 | KirinDave leaves the room. | |
| 03:14:26 | MenTaLguY | tarcieri: did we ever write down that actor object protocol we worked out somewhere, btw? |
| 03:14:30 | stepheneb | ok, so this patch won't come with a spec |
| 03:14:34 | MenTaLguY | tarcieri: I meant to blog it, and never did |
| 03:15:01 | jtoy enters the room. | |
| 03:16:10 | rubuildius_amd64 | Brian Ford: 5e58b391f; 1855 files, 6387 examples, 22451 expectations, 0 failures, 0 errors; http://rafb.net/p/QBMRJh62.html |
| 03:19:54 | rubuildius_ppc | Brian Ford: 5e58b391f; 1855 files, 6390 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/176973 |
| 03:21:38 | rares enters the room. | |
| 03:22:27 | headius_ enters the room. | |
| 03:22:29 | kli leaves the room. | |
| 03:22:42 | headius leaves the room. | |
| 03:28:23 | rares leaves the room. | |
| 03:29:44 | brixen | fbuilesv: is your build from current 1.8 branch? I'm not able to repro those warnings on p111 |
| 03:29:52 | brixen | s/current/latest/ |
| 03:30:21 | fbuilesv | $ ruby -v => ruby 1.8.6 (2008-02-14 patchlevel 5000) [i686-linux] |
| 03:30:34 | brixen | what os? |
| 03:30:45 | fbuilesv | brixen: Ubuntu 7.10 32 bits |
| 03:30:54 | brixen | cool, thanks |
| 03:31:08 | fbuilesv | brixen: let me update my build and reinstall to try it again |
| 03:31:56 | brixen | fbuilesv: actually, just pastie me your elements_to_a_spec.rb |
| 03:32:24 | fbuilesv | pastie: give me some luv |
| 03:32:45 | pastie | brixen: http://pastie.org/176974 by fbuilesv. |
| 03:34:08 | brixen | thanks |
| 03:34:22 | fbuilesv | brixen: let me know if I can do anything |
| 03:34:45 | brixen | k |
| 03:35:10 | rue | Backrubs! |
| 03:35:13 | seydar enters the room. | |
| 03:35:25 | brixen | one minor point, by convention it is shared/to_a.rb vs elements_to_a_spec.rb, since the files containing shared ... are not supposed to be run directly |
| 03:35:30 | brixen | like a regular _spec.rb file |
| 03:35:46 | rue | (I use to_a_shared.rb.) |
| 03:35:58 | seydar | headius_: idling or stealthing around? |
| 03:35:59 | rue | Cause I like redundancy which I appreciate |
| 03:36:07 | headius | always |
| 03:36:14 | brixen | rue: :P |
| 03:36:19 | kw enters the room. | |
| 03:36:26 | headius | trying to stay awake a bit longer to defeat my lag |
| 03:36:35 | seydar | headius: i'd like to take you way back when.... to dec 27 2006 |
| 03:36:40 | rue | Incidentally, I taught my kittens to do backrubs! And then I clipped their claws. But they are getting good at it |
| 03:36:42 | brixen | headius: quit idling, we won't count you in our meteorically rising channel count if you idle |
| 03:36:47 | fbuilesv | brixen: there are more to_a's with different behavior, should I just pop them all in the same file and describe different methods? |
| 03:36:57 | headius | every man idles...not every man truly chats |
| 03:37:12 | seydar | headius: focus! in your method invocation theory |
| 03:37:31 | brixen | fbuilesv: different classes should get their own subdir, so class1/shared/to_a.rb and class2/shared/to_a.rb |
| 03:37:32 | seydar | is the matrix of just method _names_? or is it of method code? |
| 03:37:40 | headius | sherman, set the way-back machine for dec 2006 |
| 03:38:15 | fbuilesv | brixen: as you can see the behavior's ahred between Element and Elements, that's why I put it top level, should I just pop it into elements/shared then? |
| 03:38:15 | headius | depends on the implementation, but in JRuby the matrix was of class id X method id = switch value |
| 03:38:28 | fbuilesv | s/ahred/shared/ |
| 03:39:12 | seydar | headius: no comprendo |
| 03:39:31 | seydar | i saw it as a matrix for a moment, but then lost it to the hash tables |
| 03:39:40 | brixen | fbuilesv: ahh, ok, so it's more like spec/ruby/1.8/shared (i.e. shared across classes) ? |
| 03:39:41 | mernen enters the room. | |
| 03:39:45 | headius | the elements of the matrix are switch values |
| 03:39:54 | fbuilesv | brixen: shared across classes from the same package (REXML) |
| 03:39:56 | headius | the x and y to index into the matrix are class and method id |
| 03:40:02 | rue | The switch values have hydroponic squids |
| 03:40:24 | brixen | fbuilesv: ok, yeah, then rexml/shared is fine. |
| 03:40:30 | headius | the idea being that indexing is fast and switches are fast, so given a target class id and requested method id, you could find a switch value to quickly select the correct method body |
| 03:40:45 | brixen | fbuilesv: I still wouldn't name any shared/** file with _spec.rb |
| 03:40:53 | headius | the entries in the matrix could also have been actual method objects or pointers to code (e.g. in C) but the principal is still the same |
| 03:40:56 | seydar | headius: from an array of method bodies belonging to that method name? |
| 03:41:01 | fbuilesv | brixen: elements_to_a.rb sounds fine then? |
| 03:41:10 | brixen | fbuilesv: sure |
| 03:41:17 | headius | every unique method name in the system would be given a unique id, to some reasonable limit |
| 03:41:47 | headius | (i.e. 100 classes * 100 methods in the system produces a mostly empty 10k element matrix, which is wasteful) |
| 03:41:56 | wmoxam enters the room. | |
| 03:42:06 | headius | that's where the sparse matrix thoughts started to come into it |
| 03:42:15 | seydar | awesome |
| 03:42:27 | seydar | jruby does that now, right? |
| 03:44:25 | seydar | headius: and does rubinius do that as well? |
| 03:44:26 | headius | only a little bit...it was useful for a time, but other changes and optimizations have made it the slower way now |
| 03:44:38 | headius | no, I don't believe rubinius does it, though evan considered it at one point |
| 03:44:50 | headius | it's not a new idea, except for maybe the sparse array stuff |
| 03:45:03 | seydar | so is it worth attempting to implement? |
| 03:45:05 | headius | if you had a heavily polymorphic system for which caching wasn't practical, it would probably be a lot more useful |
| 03:45:14 | headius | most ruby code isn't very polymorphic though |
| 03:46:01 | seydar | what timezone are you in? |
| 03:46:05 | sudoer enters the room. | |
| 03:46:19 | headius | US central |
| 03:46:31 | headius | it's almost 22:00 |
| 03:46:33 | seydar | ok. good enough |
| 03:46:37 | seydar | EST, for me |
| 03:46:47 | boyscout | 1 commit by Federico Builes |
| 03:46:48 | seydar | get some sleep. I'm going to fry your brain on wednesday |
| 03:46:48 | boyscout | * More specs for REXML; 1b91113 |
| 03:46:48 | nicksieger leaves the room. | |
| 03:47:04 | seydar | i intend to pick everything you know... please |
| 03:48:41 | brixen | fbuilesv: mri warnings are maddening because there is no way to tell them that you know what you're doing. |
| 03:49:03 | brixen | fbuilesv: @vars are nil by default, which is very useful for tracking initialized state, I'll have to think about this a bit |
| 03:49:10 | headius | I shall soon |
| 03:49:16 | fbuilesv | brixen: it's a warning so it's ok :) |
| 03:49:20 | headius | perhaps lull myself to sleep with more performance work |
| 03:49:26 | headius | sweet, sweet performance lullaby |
| 03:49:36 | seydar | sing yourself some method-dispatch blues |
| 03:49:47 | seydar | and muse a little bit of method compilation |
| 03:49:56 | headius | http://twitter.com/schleyfox/statuses/784723757 |
| 03:50:01 | seydar | for instance, precomiling the core methods |
| 03:50:08 | headius | gotta get a benchmark for that and see what's up |
| 03:50:46 | seydar | i'm going to interview some dartmouth professors before wednesday, so i can come prepared |
| 03:50:54 | seydar | what time will you be on wed? |
| 03:51:18 | headius | be? |
| 03:51:22 | headius | I always am |
| 03:51:40 | seydar | good |
| 03:51:43 | brixen | fbuilesv: it is possible to use a class var instead, but it took us quite a while to get class vars working, and I don't want that to be a requirement to run mspec |
| 03:52:01 | seydar | i swear i will come to your house and interview you if you're not on |
| 03:52:18 | seydar leaves the room. | |
| 03:52:57 | fbuilesv | brixen: for exit or for tally? |
| 03:53:22 | stepheneb | brixen: new patch submitted: http://rubinius.lighthouseapp.com/projects/5089-rubinius/tickets/481 |
| 03:53:43 | jtoy leaves the room. | |
| 03:53:54 | headius | I feel like there's some interview event I'm supposed to remember |
| 03:56:10 | rubuildius_amd64 | Federico Builes: 1b91113c3; 1855 files, 6385 examples, 22451 expectations, 0 failures, 0 errors; http://rafb.net/p/qP6gjN96.html |
| 03:59:33 | rue | MTV's Cribs? |
| 03:59:43 | rubuildius_ppc | Federico Builes: 1b91113c3; 1855 files, 6388 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/176985 |
| 04:00:18 | rue | "Tonight we are at the home of the hardcore Ruby Hacker better-known under his street name 'headius'" |
| 04:02:45 | headius | nice way to wake up on a chilly wednesday morning |
| 04:03:36 | brixen | fbuilesv: for holding the init'ed state of SpecGuard. the class holds the full run state for each instance of a guard |
| 04:03:59 | fbuilesv | Speaking of hardcore, MntWestRubyConf, the only place where the guy in front gets to rick roll the whole audience: http://mtnwestrubyconf2008.confreaks.com/07mcanally.html |
| 04:04:55 | brixen | stepheneb: cool. there's a couple typos in your commit message, if you want to fix them before you make history :) |
| 04:05:20 | rue | When I find whoever started calling it "rick rolling" I will beat them silly with printed-out copies of false links from newsgroups from the last two decades |
| 04:05:35 | brixen | stepheneb: also, by popular demand, we try to put a summary line < 73 chars and the rest of the msg in a block separated by a newline |
| 04:05:49 | stepheneb | hmm .. I can't do that with svn ;) |
| 04:05:53 | fbuilesv | rue: did those false links two decades ago had rick astley's video? |
| 04:05:54 | fbuilesv | :P |
| 04:06:08 | brixen | stepheneb: hah, yeah git uses your editor to make that easy |
| 04:06:11 | rue | brixen, fbuilesv: To be more precise, it took us some time to get class variables working *the way we implemented them.* It would have been far simpler to follow MatzRuby closer |
| 04:06:11 | stepheneb | I'll figure out how |
| 04:06:31 | rue | Just set EDITOR=vim :) |
| 04:07:05 | brixen | or EDITOR="/usr/bin/mate -w" :) |
| 04:07:42 | fbuilesv | brixen: would a singleton class with the state work instead of using the global var then? |
| 04:07:48 | ezmobius leaves the room. | |
| 04:08:07 | stepheneb | ;-) right it's just a patch -- of course it's actually a commit in my local git |
| 04:08:09 | brixen | fbuilesv: well, the class is a singleton in a sense, so it's used instead of a global var |
| 04:08:13 | rue | fbuilesv: Well, multimedia was expensive so usually it was Rick Astley lyrics |
| 04:08:21 | rue | Stop out-welling me, brixen |
| 04:08:46 | brixen | rue: well, aren't we piss and vinegar today :) |
| 04:09:07 | rue | I AM ALL OUT OF VINEGAR!!! |
| 04:09:25 | fbuilesv | rue: As you can see in the video, the "rick roll" without video and music's not a real rick roll, it's just...weird |
| 04:09:30 | rue | /end silly -- taking some time off from unit testing |
| 04:10:04 | hoopy | fbuilesv: are you saying the blind cannot be rickrolled? |
| 04:10:10 | fbuilesv | brixen: you're right, I was looking at methods in the bottom |
| 04:10:28 | fbuilesv | hoopy: a rick roll without a gay dance would only be one annoying song |
| 04:10:50 | fbuilesv | hoopy: as far as the blind people, they'd just think that your weird linking them a cute boy dancing |
| 04:11:20 | jtoy enters the room. | |
| 04:12:21 | fbuilesv | s/bind/deaf/ |
| 04:14:38 | hoopy | i was wondering |
| 04:15:27 | lorenzod8n leaves the room. | |
| 04:16:01 | rubuildius_amd64 leaves the room. | |
| 04:22:16 | mernen leaves the room. | |
| 04:23:41 | stepheneb | brixen: ok -- see how it looks now -- the first line in my local commit is 63 chars git-format-patch ... |
| 04:23:42 | stepheneb | constructed the patch like an email and put this line in the subject |
| 04:24:01 | stepheneb | there was a blank line following this in the commit' |
| 04:24:08 | stepheneb | and hen more description |
| 04:24:36 | rue | Yep. It is actually specifically because of e-mail; the first line would be the subject |
| 04:24:46 | brixen | stepheneb: yeah, looks good! |
| 04:25:00 | brixen | damn, meant to say yep |
| 04:25:34 | stepheneb | so if you commit it I send the sha1 commit id and ticket # to even? |
| 04:25:54 | brixen | yep |
| 04:26:11 | brixen | I'll do it just as soon as I finish wrestling with optionparser |
| 04:26:45 | sudoer leaves the room. | |
| 04:28:55 | rue | Tickle it beneath the #parse, it is a sucker for that |
| 04:30:50 | fbuilesv | I'm out, have a good night |
| 04:30:54 | fbuilesv leaves the room. | |
| 04:35:37 | boyscout | 1 commit by Brian Ford |
| 04:35:38 | boyscout | * Make mspec help more explicit about target options.; 36f5a59 |
| 04:36:55 | rubuildius_amd64 enters the room. | |
| 04:40:09 | rubuildius_amd64 leaves the room. | |
| 04:41:01 | rubuildius_amd64 enters the room. | |
| 04:41:40 | AndrewO leaves the room. | |
| 04:42:36 | boyscout | 1 commit by Stephen Bannasch |
| 04:42:37 | boyscout | * Add a clean:config task to clean:all so changes in PREFIX work; 9d1378b |
| 04:42:45 | rubuildius_amd64 leaves the room. | |
| 04:43:28 | eventualbuddha enters the room. | |
| 04:43:28 | rue | Huzzah! |
| 04:44:03 | brixen | stepheneb: there ya go |
| 04:44:10 | brixen | grabbing food, bbiab.. |
| 04:44:22 | stepheneb | cool ;) |
| 04:47:45 | stepheneb | evan: can I get a commit bit? http://github.com/evanphx/rubinius/commit/9d1378bf05abfcd4e6c5f2162ab9a2b2e651d3e0 |
| 04:48:17 | stepheneb | which goes with this ticket: http://rubinius.lighthouseapp.com/projects/5089-rubinius/tickets/481 |
| 04:52:15 | rubuildius_amd64 enters the room. | |
| 04:52:19 | rue | stepheneb: Pastie your public SSH key somewhere too, so he can add you when he gets back |
| 04:52:45 | stepheneb | rue: can it be a DSA key? |
| 04:54:48 | stepheneb | evan: public key here: http://pastie.org/177010 |
| 04:55:07 | rue | I would strongly recommend generating an RSA key because of the security problems with DSA; that said, a DSA key should function fine |
| 04:55:45 | Yurik leaves the room. | |
| 04:59:43 | rubuildius_ppc | Stephen Bannasch: 9d1378bf0; 1855 files, 6388 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/177015 |
| 04:59:44 | rubuildius_ppc | Brian Ford: 36f5a592f; 1855 files, 6388 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/177012 |
| 05:04:17 | rubuildius_amd64 leaves the room. | |
| 05:06:15 | nicksieger enters the room. | |
| 05:10:54 | rubuildius_amd64 enters the room. | |
| 05:13:53 | rubuildius_amd64 leaves the room. | |
| 05:14:19 | dysinger enters the room. | |
| 05:19:04 | RyanTM leaves the room. | |
| 05:20:53 | headius leaves the room. | |
| 05:21:22 | mutle enters the room. | |
| 05:21:23 | headius enters the room. | |
| 05:21:45 | mutle leaves the room. | |
| 05:22:35 | eventualbuddha leaves the room. | |
| 05:22:40 | headius_ enters the room. | |
| 05:23:04 | headius_ leaves the room. | |
| 05:23:20 | headius_ enters the room. | |
| 05:23:41 | headius_ leaves the room. | |
| 05:24:00 | headius leaves the room. | |
| 05:24:08 | headius enters the room. | |
| 05:42:40 | benburkert leaves the room. | |
| 05:58:02 | rue | Huh, Rational and Complex are in Core now. I am out of it again |
| 06:08:38 | headius leaves the room. | |
| 06:15:05 | brixen | rue: not just in core, but in C as well |
| 06:18:21 | dewd enters the room. | |
| 06:21:11 | ciscbrain enters the room. | |
| 06:36:18 | ezmobius enters the room. | |
| 06:42:32 | stepheneb leaves the room. | |
| 06:44:51 | hassox_ enters the room. | |
| 06:48:12 | hassox__ enters the room. | |
| 06:51:13 | zenspider | rawr |
| 06:51:53 | zenspider | man the specs have gotten slow. :/ |
| 06:52:12 | evan | yeah, how did the get up to 60s? |
| 06:52:19 | evan | the were at like 30s not long ago |
| 06:52:32 | zenspider | damnit... I screwed something else up.... stoopid bootstrap |
| 06:52:34 | brixen | a lot more files |
| 06:52:38 | zenspider | I'm WAY above 60s |
| 06:52:49 | zenspider | 161.74 seconds |
| 06:52:50 | brixen | I get ~40 if not compiling |
| 06:53:03 | zenspider | 23 errors |
| 06:53:04 | brixen | ~105 if compiling |
| 06:53:15 | zenspider | stupid fucking ERB and their conditional load of strscanner |
| 06:53:57 | zenspider | YAY for a typo. :/ |
| 06:54:57 | brixen | bin/mspec ci finished in 47 sec |
| 06:55:04 | evan | k |
| 06:55:32 | zenspider | I'm rerunning mine sans-compile |
| 06:55:42 | zenspider | I'm gonna "beat" all of ya |
| 06:56:01 | zenspider | yup. 58.50 sec w/o compile, 162 w/ compile. |
| 06:56:14 | evan | hm. is the air really that much slower? |
| 06:56:22 | evan | or is there something else afoot |
| 06:56:29 | evan | are you building rubinius with DEV=1 |
| 06:56:29 | evan | ? |
| 06:56:33 | zenspider | 1.8 Ghz |
| 06:56:38 | zenspider | nope |
| 06:56:44 | evan | hrm. |
| 06:56:51 | evan | i wonder what it is... |
| 06:56:53 | brixen | bin/mspec ci spec/ruby => 38.109; it was 12.52 in mri, so we're only 3x slower |
| 06:57:15 | brixen | that's actually quite a bit better |
| 06:57:24 | brixen | we've been 4-5x slower than mri |
| 06:57:32 | evan | yeah, we're getting there |
| 06:58:56 | wmoxam leaves the room. | |
| 06:59:03 | brixen | the library specs are dog slow. spec/ruby/1.8/core was 5.27 in mri, 21.8 in rbx |
| 06:59:45 | brixen | language specs 0.13 in mri, 0.68 in rbx |
| 06:59:59 | hassox leaves the room. | |
| 07:01:33 | zenspider | god this album rocks |
| 07:01:45 | evan | ok, jet lag kicking in |
| 07:01:45 | zenspider | 31 years later... |
| 07:01:48 | evan | need to get to bed |
| 07:01:53 | rue | You listening to In Rainbows too? |
| 07:01:57 | rue | evan: Nites |
| 07:02:14 | zenspider | 31 years later? no... not In Rainbows |
| 07:02:18 | zenspider | :P |
| 07:02:26 | zenspider | I'm listening to Wire's Pink Flag |
| 07:02:33 | boyscout | 13 commits by Ryan Davis |
| 07:02:34 | boyscout | * Some more work on strscan.rb - same failure but I think more correct; b7f8c6d |
| 07:02:35 | boyscout | * Renamed regexp_match_region to regexp_match_start; 12963c6 |
| 07:02:36 | boyscout | * Added Regexp#match_region and regex_match_region prim; dcd956d |
| 07:02:37 | boyscout | * Made primitive calls more consistent; 2e58fe8 |
| 07:02:38 | boyscout | * made more readable; ec9a149 |
| 07:02:39 | boyscout | ... |
| 07:02:55 | rue | Ah, have not listened to that. |
| 07:02:57 | hassox_ leaves the room. | |
| 07:03:07 | zenspider | StringScanner is a PITA btw |
| 07:03:11 | rue | Incidentally, I /have/ been listening to some Black Flag |
| 07:03:16 | zenspider | the rdoc lies. the tests suck |
| 07:03:22 | rue | Dinosaur Jr. and Radiohead mostly recently though. |
| 07:03:26 | zenspider | hah. sooo different. |
| 07:03:30 | rue | Yes, StringScanner sucks a bit |
| 07:03:41 | zenspider | cry emo boy, cry! |
| 07:03:45 | MenTaLguY leaves the room. | |
| 07:03:49 | zenspider | it is LOVELY to use tho. I love it |
| 07:03:55 | zenspider | it made my parser 3x faster |
| 07:04:01 | zenspider | and SOOOO MUCH MORE readable |
| 07:04:08 | rue | Nice |
| 07:04:52 | ciscbrain leaves the room. | |
| 07:10:36 | Maledictus enters the room. | |
| 07:16:02 | rubuildius_ppc | Ryan Davis: b7f8c6d41; 1855 files, 6388 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/177065 |
| 07:17:51 | smparkes enters the room. | |
| 07:18:45 | rubuildius_amd64 enters the room. | |
| 07:20:43 | zenspider | rawr |
| 07:32:06 | loincloth leaves the room. | |
| 07:52:13 | rue | Indeed |
| 07:54:23 | trythil leaves the room. | |
| 07:59:31 | Yurik enters the room. | |
| 08:04:11 | Skip enters the room. | |
| 08:17:53 | be9 enters the room. | |
| 08:21:45 | agardiner leaves the room. | |
| 08:22:14 | thehcdreamer enters the room. | |
| 08:27:51 | cypher23 enters the room. | |
| 08:46:37 | boyscout | 3 commits by Ryan Davis |
| 08:46:38 | boyscout | * Fixed all failing tests. Trimmed TODO list.; d9429c7 |
| 08:46:39 | boyscout | * Filtered TODO list; 414a549 |
| 08:46:40 | boyscout | * Added a ton of extra assertions to help strengthen the StringScanner tests; 4ff682b |
| 08:46:54 | reima enters the room. | |
| 08:47:13 | zenspider | still gonna blow chunks when I try to run ruby_parser on rubinius.. :/ |
| 08:48:18 | context | zenspider. at least cover your keyboard before doing so |
| 08:49:08 | rue | zenspider: Meant to ask, do you have an option that preserves comments? |
| 08:49:12 | zenspider | looks like the main one is #check... Add that and I might make some serious progress |
| 08:50:33 | zenspider | rue: I'm storing them for class/module/defn/defs nodes right now, so we could do rdoc easily, but nothing else yet. and no positional yet |
| 08:51:46 | rue | Cool |
| 08:56:14 | Arjen_ enters the room. | |
| 08:56:37 | mutle enters the room. | |
| 08:57:23 | rubuildius_amd64 | Ryan Davis: d9429c735; 1855 files, 6385 examples, 22451 expectations, 0 failures, 0 errors; http://rafb.net/p/lL0oX992.html |
| 08:59:45 | rubuildius_ppc | Ryan Davis: d9429c735; 1855 files, 6388 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/177079 |
| 09:00:29 | zenspider | rawr |
| 09:03:05 | reima leaves the room. | |
| 09:03:56 | zenspider | rue: dunno if it is your thing, but the new NIN album is pretty good (thus far) |
| 09:04:01 | zenspider | all instrumental |
| 09:04:06 | zenspider | part 1 of 4 |
| 09:04:13 | zenspider | and... freely torrentable |
| 09:09:32 | boyscout | 1 commit by Ryan Davis |
| 09:09:34 | boyscout | * Sorted... I _hate_ that; af9a3ff |
| 09:10:53 | TheVoice leaves the room. | |
| 09:13:19 | zenspider | hrm... that seems to have not gone through |
| 09:15:11 | octopod enters the room. | |
| 09:17:33 | rubuildius_amd64 | Ryan Davis: af9a3ffc6; 1855 files, 6385 examples, 22451 expectations, 0 failures, 0 errors; http://rafb.net/p/eeRjJi96.html |
| 09:18:21 | zenspider | oh. it did... I just got confused by the stash/unstash in emacs |
| 09:22:23 | rubuildius_ppc | Ryan Davis: af9a3ffc6; 1855 files, 6388 examples, 22480 expectations, 0 failures, 0 errors; http://pastie.caboo.se/paste/177083 |
| 09:22:49 | zenspider | WOOT!!! I just made 11k lines of error go down to 1600 :D |
| 09:27:45 | zenspider | holy shit. I'm down to 300 lines of error. 9 failures, 12 errors! |
| 09:27:49 | zenspider | woot |
| 09:27:58 | ezmobius | wowzers |
| 09:28:05 | ezmobius | what are you working on? |
| 09:28:33 | zenspider | StringScanner to get ruby_parser working |
| 09:28:41 | ezmobius | ahh nice |
| 09:29:08 | zenspider | 2 tiny commits ago I was at 11k lines of error tracebacks (too long in rubinius!) |
| 09:29:23 | zenspider | ezmobius: you like NIN? |
| 09:29:37 | ezmobius | yeah |
| 09:30:18 | zenspider | latest album just came out. on torrent. he's really really pissed at the RIAA (and others) |
| 09:30:57 | zenspider | actually 1/4th of the album came out on torrent, but still |
| 09:31:24 | ezmobius | i shoudl grab it |
| 09:32:16 | zenspider | came down in 5 minutes in a cafe... really well seeded |
| 09:32:32 | zenspider | hrm... I may have to go to chicago to go to lollapalooza |
| 09:32:49 | zenspider | NIN + rage + love & rockets + flogging molly |
| 09:33:01 | crafterm leaves the room. | |
| 09:33:34 | zenspider | holy crap... $190?? |
| 09:33:44 | zenspider | + hotel + plane... hrm |
| 09:35:19 | zenspider | I'm such a cheapskate. :( |
| 09:40:33 | qwert666 enters the room. | |
| 09:43:10 | ezmobius leaves the room. | |
| 09:47:46 | rue | zenspider: I have not listened since the Year Zero remixes came out. Ghosts looks interesting /me downloads |
| 09:48:37 | rue | The $190 is almost worth it. The last Flogging Molly gig is probably the best one I have ever been on |
| 09:49:04 | zenspider | boggles |
| 09:49:13 | zenspider | you play with flogging molly? |
| 09:49:16 | zenspider | :P |
| 09:49:31 | zenspider | sweet. my lexer just exposed a bug in String#to_f |
| 10:01:02 | zimbatm enters the room. | |
| 10:02:10 | jayWHY leaves the room. | |
| 10:02:33 | naeu enters the room. | |
| 10:03:33 | boyscout | 6 commits by Ryan Davis |
| 10:03:34 | boyscout | * overlooked 2 specs; 896609e |
| 10:03:35 | boyscout | * Fixed String#to_f for '1.0E1'; f2f0e47 |
| 10:03:36 | boyscout | * Added a bunch of specs to String#to_f; 77774ed |
| 10:03:37 | boyscout | * StringScanner#rest; 996e65e |
| 10:03:38 | boyscout | * StringScanner#check; 322f33b |
| 10:03:39 | boyscout | ... |
| 10:05:01 | zenspider | 9 more errors in my lexer tests, all the same |
| 10:05:08 | zenspider | then I bet all my parser tests pass |
| 10:08:25 | zenspider | fucking order of evaluation... argh |
| 10:12:20 | rubuildius_amd64 | Ryan Davis: 896609e7a; 1855 files, 6388 examples, 22462 expectations, 0 failures, 0 errors; http://rafb.net/p/R1SLh944.html |
| 10:12:42 | zenspider | YAY! I can sleep! |
| 10:12:51 | rue | Sleep good |
| 10:13:12 | rue | Should probably turn in before 6 too |
| 10:13:53 | zenspider | 11 failures to go |
| 10:16:51 | rubuildius_ppc | Ryan Davis: 896609e7a; 1855 files, 6391 examples, 22491 expectations, 1 failure, 0 errors; http://pastie.caboo.se/paste/177089 |
| 10:17:44 | zenspider | uh oh |
| 10:18:10 | zenspider | SLEEP?!?!? |
| 10:18:13 | zenspider | wtf? |
| 10:18:17 | zenspider | fuck you |
| 10:19:04 | _mk_ enters the room. | |
| 10:20:02 | wycats___ leaves the room. | |
| 10:23:29 | rue | Interesting failure |
| 10:23:46 | zenspider | we shouldn't have tests like that |
| 10:25:01 | zenspider | ok... I'm 11 away from finishing, and I'm too dead to knock those off tonight... goodnight |
| 10:25:40 | rue | *wave |
| 10:27:05 | dewd leaves the room. | |
| 10:27:55 | rue | Also out, change of guard |
| 10:31:35 | _mutle enters the room. | |
| 10:32:42 | _mutle_ enters the room. | |
| 10:32:55 | mutle leaves the room. | |
| 10:33:24 | _mutle leaves the room. | |
| 10:35:33 | wycats_ enters the room. | |
| 10:38:26 | imajes_ enters the room. | |
| 10:38:56 | lstoll enters the room. | |
| 10:40:41 | Rich_Morin | Is there a term more specific than "token" for an alphanumeric string (eg, foo) that could be either a local variable or a method call, as in "bar(foo)" ? |
| 10:40:59 | reima | identifier? |
| 10:41:54 | Rich_Morin | Yes, but @foo is also an identifier. Maybe "ambiguous identifier", but that's a bit verbose. |
| 10:42:26 | reima | I see |
| 10:47:13 | crafterm enters the room. | |
| 10:47:30 | crafterm leaves the room. | |
| 10:48:56 | Rich_Morin | OK, here's another. Is there a short term for the phase where syntax scanning and pre-compilation is done? |
| 10:50:22 | Rich_Morin | I'm currently saying "while parsing" and "during execution". |
| 11:34:26 | Rich_Morin | If a name is used as a local variable (eg, "foo = 42"), but only seen once, a parse-time check can detect this. I thought I had seen an indication that Ruby could check for this, but my copy doesn't seem to? Am I missing something? |
| 11:56:39 | imajes_ leaves the room. | |
| 11:56:43 | wycats__ enters the room. | |
| 11:57:08 | wycats_ leaves the room. | |
| 11:57:31 | jtoy leaves the room. | |
| 12:08:55 | VVSiz leaves the room. | |
| 12:15:20 | webmat enters the room. | |
| 12:21:29 | reima | Rich_Morin___, how did your test look like? I'm not quite sure what you mean... |
| 12:27:18 | Rich_Morin | http://pastie.caboo.se/177129 |
| 12:29:47 | w1rele55 leaves the room. | |
| 12:30:00 | ctennis leaves the room. | |
| 12:31:45 | w1rele55 enters the room. | |
| 12:32:20 | Rich_Morin | Sorry, that was a bad example - refresh http://pastie.caboo.se/177129 |
| 12:36:49 | reima | I'm afraid I still don't get it |
| 12:38:06 | Rich_Morin | If a variable is defined, but never used, it may indicate a typo, logic error, etc. Some languages are willing to check for this. AFAICT, Ruby isn't. |
| 12:38:47 | reima | That explains it much better :) |
| 12:40:07 | reima | But you couldn't do that in Ruby at parse time, could you? |
| 12:41:01 | Rich_Morin | Sure you could. Look for variables that are defined once and never used again in that scope (as in my example). |
| 12:41:09 | reima | What about eval? |
| 12:42:35 | Rich_Morin | I'm willing to believe that eval could introduce issues (examples welcome), but that doesn't negaste the value of the check when eval isn't involved. |
| 12:44:37 | crossblaim enters the room. | |
| 12:44:42 | crossblaim | hi |
| 12:45:57 | Rich_Morin | hi back :) |
| 12:49:14 | reima | A simple example would be http://pastie.caboo.se/177140 |
| 12:49:21 | reima | But I see your point. |
| 12:49:49 | Rich_Morin | thanks for the example |
| 12:52:16 | riffraff enters the room. | |
| 12:52:17 | reima | And you should also take into account that the scope of a local variable doesn't necessarily end with the method it's in. Think closures. |
| 12:53:14 | Rich_Morin | Wouldn't use in a closure be seen by the interpreter? |
| 12:53:15 | reima | Like in http://pastie.caboo.se/177143 |
| 12:53:31 | ctennis enters the room. | |
| 12:54:03 | reima | Not with eval, and that's my whole point I guess :) |
| 12:54:07 | headius enters the room. | |
| 12:54:08 | Rich_Morin | Can you come up with one that doesn't use an eval? |
| 12:54:37 | srbaker leaves the room. | |
| 12:54:50 | ttmrichter leaves the room. | |