Replies! - I'll check out rubicon, but we're really starting to push the limits of Rubicon. I can change (i.e. break) some pretty core things without Rubicon failing. We may want to consider finding a way to include Ruby's own test cases into our regular run, for a little added juice. - I figured autoload was around at some point and was just removed until it could be put back in the right place...it makes sense. - I saw your comments, and I also matched that up with the appropriate C code. Again, it doesn't match exactly, but I think the fixes I made make our code do roughly the same as Ruby's code, and any actual differences can probably be addressed when/if they come up. - As far as I've seen (though I haven't exercised it extensively) Ruby always normalizes to forward slashes. It's always been very jarring to me that JRuby mixed forward and backslashes, and there's many, many examples in Ruby's own .rb files where only forward slashes are handled. I can't say for certain but I think it's safe to assume that normalizing everything to forward slashes is probably far closer to reality than the mix we had before. - I dislike the empty methods at least as much as you. We'll revisit them though. And on that note.... - According to Eclipse, FIXME is high priority and TODO is medium priority. I can't comment on them showing up in task view, but at least the Eclipse guys agree that FIXMEs are more important than TODOs. I've generally only been changing TODO to FIXME in cases where I think it's a core fault or gap in the implementation...TODO is more of a "when you get a chance, have a look at this" to me. FIXME = broken; TODO = maybe not ideal. FYI, XXX is also given medium priority by default. I don't care what name we use, really. Perhaps "BROKEN"?
On 2/9/06, Thomas E Enebo <[EMAIL PROTECTED]> wrote: > These look fine to me. If rubicon works and you can get previously > not working autoload stuff to autoload then this looks like a good > start. > > autoload used to be in Module.getConstant a long time ago. > It got ripped out at some point during one of the getConstant > refactorings. At that point it was broken and I figured it would > get fixed once someone needed it :) > > I added comments showing where it needed to go in the cref patch (at least > in the constant getters). > > My only patch comment....If you add a path with mixed seperators in > Ruby what happens? Does Ruby normalize the autoload path? I bet behavior > is different between windows/linux in Ruby. This is certainly no big > deal, but I am curious. > > -Tom > > PS - I added the empty define_finalizer for something big like > test/unit or rubicon. I dislike empty methods, but Objectspace > already has it for define.....why not undefine too :) > > PPS - You keep changing TODO to FIXME...but I believe TODO still > outweighs FIXME. Also Task view in eclipse does not show FIXME's > by default :) Though I see FIXME is closing the gap... It is a war > of words! > > On Thu, 09 Feb 2006, Charles O Nutter defenestrated me: > > > So I thought I'd try to fix a few things. I'd really like someone to > > look over the autoload stuff here, as it *seems* to approximate what C > > ruby does, and it seems to work correctly now, but I don't have any > > extensive testcases for autoload right now. > > > > With these fixes IRB execution dies while trying to access Binding, > > which is no surprise since Binding doesn't yet exist in JRuby. So now > > I have two apps that need binding to be working: Rails' generate > > script and IRB. Sigh. I think the world is trying to tell me > > something. > > > > Fix 1: Autoload added back in. I'm not sure if autoload was working > > before or got ripped out with the cref fixes or what, but this fix > > attempts to add it back in at the two major places where it shows up > > in C ruby: rb_const_get0 and ev_const_get, which map to our > > RubyModule#getConstantInner and ThreadContext.getConstant. > > > > Fix 2: As load paths are added to the internal array, normalize path > > seps to '/'. This may not be entirely safe, since I just do a replace > > of all \ with /...but hey, it's an improvement. > > > > Fix 3: Define a bogus undefine_finalizers method in ObjectSpace. This > > goes along with the current bogus define_finalizers. Huzzah! > > > > I guess I'm gonna have to bite the bullet and look at really > > implementing bindings. > > > > - Charlie > > > > On 2/9/06, Charles O Nutter <[EMAIL PROTECTED]> wrote: > > > Actually I spoke too soon...it appears we do have autoload capability, > > > but in this particular case it's not working...hmmm... > > > > > > On 2/9/06, Charles O Nutter <[EMAIL PROTECTED]> wrote: > > > > Thank you Wes, I will definitely have to take a look at that...it > > > > could be very helpful. You are correct in assuming there's no readline > > > > for Windows, however, so this may not get me where I want on my > > > > Windows machines. What does ruby use under Windows? I do see > > > > StdioInputMethod, so I thought I'd try running JRuby with IRB again. > > > > > > > > It turns out the current killer is the lack of autoload functionality > > > > in JRuby, which is an unfortunate lacking. Perhaps it's time we got > > > > around to adding it...I don't believe it would be *too* difficult. > > > > > > > > Thanks again, I'll have a look at your eval.rb on my *nix machines. > > > > > > > > - Charlie > > > > > > > > On 2/9/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > > > > > > > > > > Here's a readline-enabled version of eval.rb that I've had lying > > > > > around > > > > > for awhile. It's a modified version of eval.rb and doesn't require > > > > > any > > > > > changes to jruby to run. It's not sophisticated at all; it's > > > > > basically > > > > > eval.rb with readline's ability to do editing, history, etc. Since I > > > > > based the readline part on some java code, it has some java-isms in it > > > > > rather than doing things the ruby way. Any bugs should probably be > > > > > blamed on the original eval.rb. :) > > > > > > > > > > It's been tested on linux (I don't know if Win has a version of > > > > > libreadline-java). You need to have libreadline-java.jar on your > > > > > classpath and java also needs to be able to load libJavaReadline.so. > > > > > So > > > > > this does not fulfill a pure java requirement, but it's been enough to > > > > > keep me from pulling my hair out. > > > > > > > > > > It handles both ruby exceptions and java ones. You can exit by > > > > > hitting > > > > > C-d. > > > > > > > > > > The indenting is pretty unreliable (it's based on eval.rb) so I would > > > > > suggest setting it to 0. > > > > > > > > > > You can specify which readline library to load by editing the string > > > > > at > > > > > the top of the file. You can use something other than GnuReadline > > > > > (Editline?) if that causes a licensing problem. > > > > > > > > > > If you put the file into lib/ruby/site_ruby, you can start it with a > > > > > shell script similar to this: > > > > > > > > > > #! /bin/sh > > > > > > > > > > export JAVA_HOME=/opt/java > > > > > export JRUBY_HOME=/opt/jruby/cvs/jruby > > > > > export READLINE=/usr/share/java/libreadline-java.jar > > > > > export CLASSPATH=$CLASSPATH:$READLINE:$JRUBY_HOME/lib/jruby.jar:. > > > > > > > > > > exec $JAVA_HOME/bin/java -classpath $CLASSPATH org.jruby.Main > > > > > -I$JRUBY_HOME/lib/ruby/site_ruby -reval_readline "$@" > > > > > > > > > > > > > > > > > > > > Wes > > > > > > > > > > On Thu, 9 Feb 2006, Charles O Nutter wrote: > > > > > > > > > > | It's become increasingly irritating that there's nothing equivalent > > > > > to > > > > > | IRB that works with JRuby on the command-line. I'm personally tired > > > > > of > > > > > | having a stack of test*.rb files around or using cumbersome -e > > > > > strings > > > > > | to try out every little thing I need to test while working on JRuby. > > > > > | Something better is needed. > > > > > | > > > > > | Could Ruby's IRB be modified to work correctly with JRuby? I know it > > > > > | currently doesn't work because we don't have the terminal reading > > > > > and > > > > > | manipulating capabilities necessary in Java, but could those > > > > > | requirements be ripped out? > > > > > | > > > > > | Is there an alternative to IRB that would work in JRuby? I'm not > > > > > | looking for anything fancy; just a basic interactive environment > > > > > that > > > > > | I can run easily from the command-line. > > > > > | > > > > > | Could we just start working on our own simpler "jirb" so there's > > > > > | something roughly equivalent to IRB in the JRuby standard distro? > > > > > | How's this for a completely naive approach (that doesn't support > > > > > | multi-line constructs, naturally): > > > > > | > > > > > | STDOUT << '> ' > > > > > | > > > > > | while (x = > > > > > > > > > > -- > > > > > # Wes Nakamura <[EMAIL PROTECTED]> > > > > > > > > > > > > > > > > > > > > > > -- > > > > Charles Oliver Nutter @ headius.blogspot.com > > > > JRuby Developer @ jruby.sourceforge.net > > > > Application Architect @ www.ventera.com > > > > > > > > > > > > > -- > > > Charles Oliver Nutter @ headius.blogspot.com > > > JRuby Developer @ jruby.sourceforge.net > > > Application Architect @ www.ventera.com > > > > > > > > > -- > > Charles Oliver Nutter @ headius.blogspot.com > > JRuby Developer @ jruby.sourceforge.net > > Application Architect @ www.ventera.com > > > > -- > + http://www.tc.umn.edu/~enebo +---- mailto:[EMAIL PROTECTED] ----+ > | Thomas E Enebo, Protagonist | "Luck favors the prepared | > | | mind." -Louis Pasteur | > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 > _______________________________________________ > Jruby-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/jruby-devel > -- Charles Oliver Nutter @ headius.blogspot.com JRuby Developer @ jruby.sourceforge.net Application Architect @ www.ventera.com ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid3432&bid#0486&dat1642 _______________________________________________ Jruby-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jruby-devel
