JRuby | MRuby | |
---|---|---|
24 | 5 | |
3,746 | 5,239 | |
0.0% | 0.2% | |
9.9 | 9.8 | |
about 13 hours ago | 8 days ago | |
Ruby | C | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
JRuby
-
Shoes makes building little graphical programs for Mac, Windows, Linux simple
As someone who has looked at Shoes several times but never dove in, it's confusing how Shoes 4 has been the "preview version" of Shoes for, like, a decade or more. It made me actively avoid getting invested in Shoes 3 (the release promoted on the linked website) because Shoes 4 requires JRuby and I am happy with CRuby (the Ruby interpreter most people think of when they hear "Ruby").
https://github.com/shoes/shoes4/
http://www.rubydoc.info/github/shoes/shoes4
No disrespect to the developers but to me it feels like taking over a GUI toolkit created "to teach programming to everyone" (to quote the Shoes 4 readme) and making it depend upon a super-complicated enterprise-focused Ruby was sort of Missing The Point™ in a huge way.
Heck I couldn't even switch to JRuby if I wanted to because I <3 Ractors and JRuby still lacks CRuby 3.0 feature parity: https://github.com/jruby/jruby/issues/7459
-
JRuby 9.4.2.0 released with many fixes and improvements
__callee__ now properly returns the name under which a method was called, which will be the new name in the case of aliased methods. #2305, #7702
-
JRuby 9.4.0.0 Released, now supporting Ruby 3.1 and Rails 7
Issue tracker: https://github.com/jruby/jruby/issues
-
JRuby 9.3.9.0 Released with stdlib CVE fixes
rdoc has been updated to 6.3.3 to fix all known CVEs. (#7396, #7404)
-
JRuby 9.3.8.0 Released - with support for lightweight fibers!
Altering the visibility of an included module method no longer changes what super method gets called. (#7240, #7343, #7344, #7356)
-
Golang in the JVM
It looks like the readme is copy pasta from jruby: https://github.com/jruby/jruby
-
JRuby 9.3.4.0 released
Homepage: https://www.jruby.org/
- JRuby 9.4 will support Ruby 3.0 and we need your help!
-
Communication Counts – Leading a New Generation of Developers with Chris Mar
Chris: Yeah, that's exactly right. So I was working at Sun at the time. I remember the JRuby guys. I saw them speak at one of the Java conferences, and they came to work for Sun. Just listening to them talk about JRuby...and then a lot of it was obviously about Ruby on Rails at the time. And I was like, wow, this was just mind-blowing the way they talked about it.
-
Befunge GUI by Glimmer (2 for 1: LibUI & SWT)
In fact, I built its GUI twice with two different approaches, one using the up and coming Glimmer DSL for LibUI on CRuby relying on a multi-canvas-grid (LibUI area) approach, and one using the very mature Glimmer DSL for SWT on JRuby by relying on a button-grid approach.
MRuby
-
mruby 3.2.0
not an exhaustive list but https://github.com/mruby/mruby/issues/3962 has a few examples. some neat uses though
-
Sending Emails with Ruby
From our experience, the use of that option in a regular web app is uncommon. However, sending emails via Net::SMTP could be a fit if you use mruby (a lightweight implementation of the Ruby language) on some IoT device. Also, it will do if used in serverless computing, for example, AWS Lambda. Check out this script example first and then we’ll go through it in detail.
-
Ruby Packer: distribute your Ruby code as a compiled binary
It's more on the embedded end of the spectrum, but https://github.com/mruby/mruby is another option in compiling ruby code and c extensions down to a single binary.
-
Ruby 3, Concurrency and the Ecosystem
They downplayed the actual amount of time that went into these changes and the upcoming changes. Here's the history:
Matz[1] released the first version of Ruby in Dec 1995.
DHH was a major player in getting Ruby into the global spotlight with Rails[2] in 2004. Rails got very popular as a framework for developing new applications, with Basecamp being novel, showing that it could work well and introducing people to REST, in a flexible interpretation, as well as ActiveRecord, whose ease of use and migrations became a model for modern web development.
Rails v3 divided the community, specifically around how and what Rails would support for the server and request-handling. This hinted at problems to come, but Rails was still strong, and many took it with a grain of salt and upgraded.
However, Twitter, which had been built on Rails became popular, and the "fail whale" emerged as they were unable to handle all of the requests. This was not a problem with scaling Rails, but with them knowing how they could scale Rails without much greater expense, but since they had to rewrite things and there was pressure to get scaling done right, they switched to Scala and Java, since Scala was functional and fast, and there was a lot of support for the JVM. Functional programming had already been making a comeback in popularity in the 2000s, because it often required a lower memory footprint and was fast. But, at that point in time, many teams and developers were looking into it.
Though it wasn't the first time he'd done optimization, in 2012, Matz released mruby[1][3], an embedded Ruby.
Around the same time, with functional programming having been cool, Elixir was born and some of the Rails community left for writing Ruby/Rails-ish code in Erlang.
Some had been trying to slim down Rails in core, so that there would be less code needed to serve requests.
Tenderlove, who came from the system programming side of things, joined the Rails core team with a focus on optimization, did work on Rack, and eventually he started working to help speed up Ruby.
For years, Matz and others had focused on speeding up and slimming down Ruby. Ruby had run on Lighttpd and Ruby on Rails could run on it also.
But, because the language was interpreted, it wasn't trivial.
Another team wrote Crystal hoping that a compiled Ruby-like language would take off, and there was interest, but some of the the developers excited about Ruby and what it could do for the web had gone off to JS (Node), Python (...), Erlang (Elixir), etc.
So, no, I don't think it's realistic that they put a year into it. At least 9+ calendar years led to this point, and it's been 26+ calendar years since initial release. And this isn't the end of it. It's not trying to compete with or tank your favorite framework or language of choice, it's just been improving and its team has been improving.
Ruby is not Rails. But, not talking about how the history of Rails in the scope of things would be remiss. I can't think of anything in the history of Ruby that has been bad, but certainly Rails has had its "fun". But right now, it's coming together, and this shit is real.
[1]- https://en.wikipedia.org/wiki/Yukihiro_Matsumoto
[2]- https://en.wikipedia.org/wiki/Ruby_on_Rails
[3]- https://github.com/mruby/mruby
- What do you use mruby for? Is the use case purely for embedded systems?
What are some alternatives?
truffleruby - A high performance implementation of the Ruby programming language, built on GraalVM.
Rubinius - The Rubinius Language Platform
Opal - Ruby ♥︎ JavaScript
Reactrb
traveling-ruby - Self-contained Ruby binaries that can run on any Linux distribution and any macOS machine. [Moved to: https://github.com/phusion/traveling-ruby]
docker-jruby
ruby-packer - Packing your Ruby application into a single executable.
sassc-ruby - Use libsass with Ruby!
pony - The official fork is now maintained by benprew in http://github.com/benprew/pony