Archive for the 'Ruby' Category

Something In the Make [UPDATED]

Bil Kleb mentioned on the ruby-talk maillist a post by Martin Fowler where Martin shares his belief that build tools must be powerful, and that certain build tools that use a declarative xml syntax as a Makefile language (like Ant) sometimes come short of that goal, or are just not flexible enough.

Of the tools you will find in my purse (toolset for geekettes) the build system is among the most important ones. You have to be picky with whatever you carry in your toolset.

For example, I never totally favored GNU autotools, and even some of its proponents concede that some things have become not as pretty as they should be, which ends up getting in your way. ( I mean, there’s a book for every little gear autotools has to offer, easy it is not)

As a result I only use the GNU build system when:

1) I have no choice but using it (too often, when building free software someone else wrote)

2) There’s no 2, I only use it when I am hard pressed to use it, I love free software really, but autotools is more like a free nightmare.

And in contrast this is the beautiful thing about Rake (ranked high in my purse-ware) it does everything it has to do in a well-defined, simple language, it’s powerful and easy to learn and it’s built on top of Ruby as a DSL. Applause for Mr. Weirich. (Rake’s author). All true rubyists use Rake for a reason.

So I think Mr. Fowler is right, and so is Matt Foemmel in his quest for a better build system, using JRuby plus a Rake port that runs on top of JRuby, what he calls “JRake”. (was “Jake” already taken ? :-)

Foemmel is not alone, for people feeling groovy, Ant scripting is Godsend. (GRake !)

Which approach is to be favored ? Still too early to say, but the confluence of Java and Ruby is probably one of the most interesting things to watch in the near future. (hopefully, a whole lot more of practical purse-ware for me to use, as a result of this cross-pollination)

Update: Some colleagues are blogging and tracking build tools closely: Aslak Hellesøy reviews Raven, JRake and Antbuilder, Rob Thornton at InfoQ analyzes JRake in more detail. They forgot to mention the Groovy approach though, even if Groovy it’s not strictly Ruby some may find it a good match for their current work environment.



Whee ! There’s certainly not a shortage of new Ruby implementations.

For a while it seemed like the .NET platform was getting them all, but with the recent news of the JRuby core developers joining Sun Microsystems (SUNW), and now XRuby, it seems things are back into balance.

JRuby had reportedly seen a performance gain of about 50-60%, just a few weeks after the core developers became Sun employees. Sun’s backing make the project look good for the long term, and Java 6 SE + Free/libre Java make this look even better.

Strong points of XRuby:

  • Simple internal architecture (makes fixing bugs easier)
  • The parser generator is Antlr (way more flexible than yaccing around)
  • They’re not afraid of the “E” word unlike cool people out there (Enterprise! Enterprise ! I said it !)

Keep the Ruby implementations coming !

Update: Pat Eyler interviews Evan, who’s developing Rubinius, another new Ruby implementation on top of a simpler, and arguably super-efficient Smalltalk-80-like VM.

Keep them coming… and coming… and…. !

Time Travel


July 2018
« Apr