On Mon, Oct 8, 2012 at 9:22 AM, Hadley Wickham <h.wick...@gmail.com> wrote: > Hi all, > > It's possible to capture the expression associated with a promise > (using substitute). Is there any way to capture the environment > associated with a promise? Similarly, is there any way to tell if > something is a promise without accidentally evaluating it? >
Both of these are possible in C. See: https://stat.ethz.ch/pipermail/r-devel/2007-September/046943.html It shows how to query an object to see if its a promise and but rather than extract the environment it shows how to copy a promise without evaluating it; however, it was also my experience that these two were what was actually needed rather than being able to extract the environment. I would also recommend you do some testing since I found that adding promises did not always make as big a difference in performance as I had hoped and the added complexity may not be worth it in all cases. For example, I had a version of proto that supported promises but ggplot2 only ran slightly faster with it so I did not pursue it any further. On the other hand if you are doing it to support self-referential structures then that is a different matter. -- Statistics & Software Consulting GKX Group, GKX Associates Inc. tel: 1-877-GKX-GROUP email: ggrothendieck at gmail.com ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel