>>>>> "B" == Bil Kleb <W.L.Kleb / LaRC.NASA.Gov> writes:

B> What's the idiomatic workaround for this sort of thing?

 redefine it, something like (not tested)

   unless IO::respond_to?(:read)
      def IO::read(file, lgth = nil, offset = 0)
         Kernel::open(file) do |io|
            io.seek(offset) if !offset.zero?
            io.read(lgth)
         end
      end
   end


Guy Decoux