From: Charles Oliver Nutter Date: 2010-05-05T05:57:29+09:00 Subject: Re: Inverse of stream parser On Sat, May 1, 2010 at 2:52 AM, Florian Gilcher wrote: > Just to be clear, too: By interfacing Java with JRuby, you get a Ruby API that feels like its written by a Java consultant struggling on his first steps to learn Ruby. I don't know a lot of struggling Java consultants that have released Java libraries used on a wide scale. In fact, I don't know any struggling Java consultants that have released libraries, period. Maybe the APIs would be better if they did. I think you're overstating the problem. Many Java libraries are overdesigned, this is true. But JRuby does more than just provide a means to call them; it provides a lot of other niceities like passing a block or arbitrary object as the implementation of an interface and not having to convert or cast values all over. I also don't think it's a whole lot better when people write C extensions that just wrap a raw C API. If anything, C APIs are usually *underdesigned*, and it becomes a mess just to fit them nicely into an OO language. The truth is that just providing the ability to call from Ruby a library written in C or Java isn't always enough; but it's a hell of a lot easier to start with the Java library in JRuby, since you don't even have to compile anything. - Charlie