tag:blogger.com,1999:blog-20975090.post4281127262959004408..comments2024-03-11T10:18:55.852-05:00Comments on Headius: New JRuby Compiler: Progress UpdatesCharles Oliver Nutterhttp://www.blogger.com/profile/06400331959739924670noreply@blogger.comBlogger10125tag:blogger.com,1999:blog-20975090.post-38739362125913392852007-01-08T08:41:00.000-06:002007-01-08T08:41:00.000-06:00Did you consider to implement a PIC (polymorphic ...Did you consider to implement a PIC (polymorphic inline cache, check <br />http://smallthought.com/avi/?p=16%20-%2020%20year%20old%20techniques) ?<br /><br />Regards,<br />Markus (<a href="https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/u/6389"> performance blog</a>)Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20975090.post-88135416020980158432007-01-08T02:53:00.000-06:002007-01-08T02:53:00.000-06:00jim: Thanks for the comment, and I agree we need t...jim: Thanks for the comment, and I agree we need to work together. I'm using ASM for my compiler, and you guys are considering using ASM...so there's a lot to be shared there.<br /><br />lopex: Very possible, if we can determine the scope of the array and guarantee that array behavior has not been overridden in incompatible ways. We have done experiments in this and gotten absurd performance gains from it, though our version was not "safe".<br /><br />haluk: We had targetted compatibility primarily to get to a point where we were confident that Ruby apps would run as well as on Ruby. After that, we have focused on getting the interpreted mode execution as fast as possible, to help us clean up the core runtime and sort out what Ruby's actually doing. Now, it's time for compilation. It's a natural progression, really. And we agree that the barrier between Ruby and Java should be as slim as possible; ideally as slim as in Groovy.<br /><br />mm: I have no idea what you just said :)<br /><br />ratislav: and that's without any compilation and without any of the new dynamic dispatch optimizations. We have not yet begun to fight!Charles Oliver Nutterhttps://www.blogger.com/profile/06400331959739924670noreply@blogger.comtag:blogger.com,1999:blog-20975090.post-23885856288093356812007-01-07T08:12:00.000-06:002007-01-07T08:12:00.000-06:00Recently I have upgraded my jruby installation fro...Recently I have upgraded my jruby installation from 0.9.2 to trunk.<br />I was quite surprised, I had to add asm to classpath to get it work. :)<br />First of all, I tried my own temporary microbenchmark - 1000 complex activerecord-jdbc operations. Every iteration retrieves last 10 records from embedded H2 database, sorts it to reverse order, remaps every activeredord to set of java objects and packs them into LinkedList.<br /><br />Running under JRuby 0.9.2 takes cca 30 seconds, current trunk JRuby takes cca 23 seconds. Great improvement!Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20975090.post-79970172141603801582007-01-05T19:09:00.000-06:002007-01-05T19:09:00.000-06:00JRuby is good thing, thank you all.JRuby is good thing, thank you all.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20975090.post-16239383542604588492007-01-05T12:25:00.000-06:002007-01-05T12:25:00.000-06:00I think ur hopeless add-on including annotations, ...I think ur hopeless add-on including annotations, generics and closures are nice :) Especially, closure I like it so much in Rudy !! <br /><br />Instead they will produce the best garbage..<br /><br />Well, Sun is working on JRudy now,<br />Do u imply that JRudy is "best garbage" ?<br /><br />No Language Lives Forever, Long live Assemble ~~Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20975090.post-22679434149465337342007-01-05T09:38:00.000-06:002007-01-05T09:38:00.000-06:00It is definitely worth it. This is exactly what Ru...It is definitely worth it. This is exactly what Ruby people are trying to do with Ruby 2.0.<br />Compiling it into byte-code and running it on a virtual machine which will most probably be called Ruby Virtual Machine (RVM). But why invent the wheel. Sun and IBM has got rock solid, matured JVMs that are proven and accepted by the industry. Why not come together with Ruby people and deliver rock-solid Ruby 2 on an enhanced JVM much quicker than can possibly be achieved by Ruby people alone. If they also deliver a good Ruby plug-in support (as good as Java plug-ins) for Eclipse and Net Beans, Microsoft wouldn't know what hit them. This way Java would extend its shelf-life by another 10 years. Which will also be a real service to the Computing industry. But they wouldn't do that would they? Instead they will produce the best garbage (EJB, SOAP, WSDL, SOA etc.) that they can possibly come up with and turn Java into a Camel designed by a committee via hopeless add-ons: annotations, generics, closures...halukaghttps://www.blogger.com/profile/01375366974198818113noreply@blogger.comtag:blogger.com,1999:blog-20975090.post-41649601099934952592007-01-05T08:16:00.000-06:002007-01-05T08:16:00.000-06:00I think that Groovy and Scala are contaminated by ...I think that Groovy and Scala are contaminated by the Java type system two much. This makes Java integration much harder in JRuby, but it's worth it.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20975090.post-91991978703047218332007-01-05T07:52:00.000-06:002007-01-05T07:52:00.000-06:00This indeed is a good news. IMHO, without a decent...This indeed is a good news. IMHO, without a decent byte-code compiler, JRuby interpreter in Java is not a good enough solution since it will always be playing catch-up on many accounts with the original Ruby interpreted in C. In order to be successful, the integration of JRuby and Java should be really seamless. We should be able to drop any valid Ruby source file into any Java package and get it compiled by the Java compiler without any extra effort or house keeping. Finally Java and Ruby objects should be able to call each other without any syntactic overhead. I know this is not easy at all, but it shouldn't be impossible either since you can get small extensions to both the JVM and the Java compiler in order to provide this level of abstraction, which is the most important quality of any properly engineered system. Since Groovy and Scala was successful in compiling into Java byte-code without any help from Sun, you should be able to do even better :-)). Congratulations for the progress you achieved with JRuby project so far and good luck for the feature.halukaghttps://www.blogger.com/profile/01375366974198818113noreply@blogger.comtag:blogger.com,1999:blog-20975090.post-90220956553770923882007-01-05T07:50:00.000-06:002007-01-05T07:50:00.000-06:00Do you think that it is possible to use Java's hom...Do you think that it is possible to use Java's homogenous arrays as an Array backend in the generated code in some cases ?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-20975090.post-50002011714820397252007-01-04T15:26:00.000-06:002007-01-04T15:26:00.000-06:00This is good news. I have been reviewing the Jytho...This is good news. I have been reviewing the Jython compiler in the dev trunk as part of preparing for our forthcoming <a href="http://wiki.python.org/moin/JythonSprint">sprint</a> on Jython in Boulder. (You are credited for starting this by Eric Dobbs, by the way.)<br /><br />So it will be useful comparing notes on bytecode generation. FWIW, the roughly equivalent CodeCompiler.java is 2476 LOC.Jim Bakerhttps://www.blogger.com/profile/04523972739006506401noreply@blogger.com