Hi --

The Marshal.load function demands an object of type IO. Unfortunately,
ARGF and other IO-like objects (e.g. GzipReader from the Ruby/zlib
bindings) are not instances of IO, even though they export the same
interface. This means that you cannot use Marshal.load with ARGF or
GzipReader.

Anyone on the Ruby dev team care to modifiy marshal.c so that objects
like ARGF can be used (i.e. use rb_funcall(obj, rb_intern("read"),
....) rather than hardcoded calls to rb_io_fread, etc.)?

Thanks,

Tom