[R] weirdness in sourc()ing a dump() (bug?)

Peter Dalgaard p.dalgaard at biostat.ku.dk
Wed May 5 22:50:50 CEST 2004


Prof Brian Ripley <ripley at stats.ox.ac.uk> writes:

> On Wed, 5 May 2004, Duncan Murdoch wrote:
> 
> > On Wed, 5 May 2004 20:20:51 +0100 (BST), Prof Brian Ripley
> > <ripley at stats.ox.ac.uk> wrote :
> > 
> > >I don't think it is a bug.  Note that dump does not even claim to dump
> > >lists let alone symbols, but ?dump says
> > >
> > >     At present the implementation of 'dump' is very incomplete and it
> > >     really only works for functions and simple vectors.
> > >
> > >Given that, this is not unexpected. (Looks like more than one person did 
> > >not check the help page ....)
> > >
> > >I think save/load is a much safer way to handle saving R objects, and it 
> > >does work in PD's example.
> > 
> > I'd still call it a bug, since 'dump("x"); source("dumpdata.R")' could
> > change the meaning of x without any warning, and that can't be
> > desirable behaviour.  
> 
> That's not what it says it does, and not what the S version achieves 
> either.  (Do see the documentation on `what is a bug' in the FAQ, which 
> does not agree with you.)

Weelll.. The goal of dump/dput is to create a construct that can be
evaluated so as to yield the original object. This is one place where
we fail to meet that goal, so I'll call it a bug, documented or not.
Especially, since it is something we might actually be able to fix
fairly simply (note "might" -- we've had our share of "fixes" that
didn't in the deparsing area).

> I was trying to be constructive: save/load *is* supposed to reproduce
> objects, and it just not realistic to get dump/source to do that.  And we
> do warn about it in the documentation and I can see nowhere that
> recommends dump/save as a way of saving objects ....  (If there is such a 
> place, then that is a bug and needs fixing.)

I don't disagree that save/load is a better strategy for data storage,
but dump and friends do have the potential to create an *editable*
text representation, so there is some point in trying to make them
work predictably as far as possible.

-- 
   O__  ---- Peter Dalgaard             Blegdamsvej 3  
  c/ /'_ --- Dept. of Biostatistics     2200 Cph. N   
 (*) \(*) -- University of Copenhagen   Denmark      Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)             FAX: (+45) 35327907




More information about the R-help mailing list