In article <3454c9680807250054i70db563duf44b42d92ba41bfb / mail.gmail.com>,
  "Vladimir Sizikov" <vsizikov / gmail.com> writes:

> 1. RubyGems uses it to invoke #{RUBY_ENGINE}.rb file with
> customizations, specific for particular implementation

I'm not sure what the customizations to be done.

> 2. Different implementations have different specifics, like JRuby can
> 'require' a JAR file and need different activerecord drivers, etc.
> There are also some JRuby-specific libraries that only make sens for
> JRuby, and the whole Java Integration layer. So, folks need to figure
> out when they run with JRuby and when they not.

Why don't just try "some feature"?

For example, zlib is written in C.  So someone may think it
can be used only in RUBY_ENGINE is "ruby" as:

  if RUBY_ENGINE == "ruby"
    require "zlib"
  else
    raise "this program doesn't work on #{RUBY_ENGINE}"
  end

I think

  begin
    require "zlib"
  rescue LoadError
    raise "no zlib"
  end

or 

  require "zlib"

is much better becuase it works well with other engines if
it provide zlib.
-- 
Tanaka Akira