William Crawford <wccrawford / gmail.com> writes:

> Christian Neukirchen wrote:
>> "F. Senault" <fred / lacave.net> writes:
>> 
>>>> human readable.  YAML is plain text, but not as zippy.
>>>
>>> And Marshal is not guaranteed to produce files compatible between
>>> different versions of Ruby, while YAML is.
>> 
>> Ironically, history says a different thing. :-)
>
> Just because something has always been compatible doesn't mean it always 
> will be.  Since YAML is an open spec, and Ruby follows that spec, it is 
> guaranteed.  Nobody makes any guarantees about Marshal.  (It isn't 
> likely to change without good reason, I'm sure, but that's not a 
> guarantee.)

I was refering to a Ruby version that generated YAML not readable in
other versions due to a missing header or something.

I don't know when Marshal changed the last time... I can't find a
mention of changing MAJOR in the CVS history, and MINOR changes (I see
only one) can be read with later versions.

I'd use some kind of plain-text storage (including YAML) for long-term
storage of important data.  Marshal would be fine for storing HTTP
sessions, e.g.  (And RI too... :^))

-- 
Christian Neukirchen  <chneukirchen / gmail.com>  http://chneukirchen.org