Why not write it in ruby?

Igal Koshevoy wrote:
> I've put together a shell script that runs checks on a Ruby interpreter.
> This should make it easier to see if a certain release of the
> interpreter passes our favorite suite of tests.
> 
> I've uploaded its test results for p36ubuntu, p111ubuntu, p238, p265 to:
>    http://code.google.com/p/rubychecker/downloads/list
> 
> You can install the program via:|
>    git clone git://github.com/igal/rubycheck_sh.git|
> 
> The usage instructions and dependencies are listed in the included
> README.txt, which can also be seen at:
>    http://github.com/igal/rubycheck_sh/tree/master/README.txt
> 
> This script requires an installed copy of "ruby" to run against -- which
> you may have just compiled, ran a make install against, and added to the
> PATH (see README.txt for example). This is significant in that all this
> script is doing is recording how that interpreter performs on external
> test suites. If we want something that tests the compilation of the
> interpreter and such, that belongs in another script.
> 
> When we get around to setting up a continuous integration (CI) system,
> it'd make sense to have a wrapper script that builds Ruby and installs
> it to a temporary directory (see README.txt for example), and then runs
> this checker against it.
> 
> The currently runs the test suites for:
> - rubyspec head
> - rspec 1.1.4
> - rails 1.2.6
> - rails 2.0.2
> - rails 2.1.0
> 
> Adding additional suites is easy.
> 
> Running all these tests takes roughly 20 minutes.
> 
> I chose to write this with "bash" because it's portable and requires few
> dependencies. Using shell also lets me write code that you can paste
> into a terminal and easily debug, alter and follow, unlike, say "make".
> However, if there's a desire to port to another language or tool, it'll
> be easy enough to do so because this provides all the shell commands
> that this other tool will need to run.
> 
> I've only tested this on my Ubuntu 7.10 AMD x2 and Ubuntu 8.04 Intel
> Duo. It should be easy to port this to other UNIX variants.
> 
> What it doesn't work yet:
> - Any OS other than UNIX
> - Any Ruby interpreter other than MRI 1.8
> - ..?
> 
> Thoughts?
> 
> -igal
>