2 ms·
I’m working on a project right now that uses jruby for java interaction. I’m so appreciative that we have an easy way to combine java code with ruby scripting,
by Lio 8y ago
I’m working on a project right now that uses jruby for java interaction.
I’m so appreciative that we have an easy way to combine java code with ruby scripting, thanks Charles. You guys make my job possible. :D
I think particularly now that we have the excellent concurrent-ruby[0] project more developers should checkout jruby.
My suspicion is that the main pain point stopping people using jruby is around tooling and process forking.
The ruby tools I would normally use to get fast cycle times for things like running specs without restarting rails mostly rely seem to make use of forking which obviously isn't supported on the JVM.
If I can find more time and tallent that’s definitely something I look into.
[0] https://github.com/ruby-concurrency/concurrent-ruby https://github.com/ruby-concurrency/concurrent-ruby
- headius 8y agoYes the development experience is unfortunately a problem for all the optimizing Ruby runtimes. TruffleRuby with its SubstrateVM precompiling improves this situation quite a bit for trivial commands, but still takes longer than CRuby to boot any large application (e.g. Rails). I have plans to try to improve startup in JRuby using some new AOT compilation and code caching features of Java 10.
- Lio 8y agoThat will be brilliant Charles. Too be honest I think if we can keep the main JVM process up and running but get code reloaded that would probably smooth things a lot. I sort of hope that we, the rest of the community, could take care of that for you. Although faster start up would be awesome in general.
- headius 8y agoI believe much of the work on forking preloaders could be modified to work with a single JRuby JVM process, or with the Drip JVM preloader. Hopefully we'll have time to make that happen, or someone from the community will step up to help us!