[R] Evaluation of defaults in functions

Gabor Grothendieck ggrothendieck at gmail.com
Fri Sep 29 16:37:33 CEST 2006


On 9/29/06, hadley wickham <h.wickham at gmail.com> wrote:
> > > But doesn't R has a rather limited force of lazy evaluation? - you
> > > have no control over it, apart from that arguments are evaluated
> > > lazily.  This rather limited compared to other languages (no lazy
> > > lists etc)
> >
> > You do have more control than that.  You can't put a promise in a list,
> > but you can put one in an environment, e.g.
> >
> >  > x <- new.env()
> >  > y <- 1
> >  > delayedAssign("z", y, assign=x)
> >  > y <- 2
> >  > x$z
> > [1] 2
>
> That's interesting.  Is it possible to treat an environment like a
> list in most situations?
>
> I had experimented with lazy lists/streams in R a while go (as they
> seem like a very natural way of dealing with datasets that are too
> large to fit in memory) but got stuck.  This might let me get a little
> further.
>

Check out the g.data package.



More information about the R-help mailing list