Skip to content
Prev 326297 / 398502 Next

promise already under evaluation

Backlin explained on SO that the errors are to be expected: "..." is a
formal argument which was not supplied and "expr" and "x" were actually
being evaluated at the time of get() call.

The bottom line is that I must catch and ignore errors.

The remaining problem is: how do I pass the same arguments down?

e.g.,

--8<---------------cut here---------------start------------->8---
f <- function (... verbose=FALSE ...) { ... }
g <- function (... verbose=FALSE ...) { ... f(... verbose=verbose ...) ... }
--8<---------------cut here---------------end--------------->8---

results in "promise already under evaluation" (and, yes, I do understand
why).

is there anything better than

--8<---------------cut here---------------start------------->8---
f <- function ( ... f.verbose=FALSE ... ) { ... }
g <- function ( ... g.verbose=FALSE ... ) { ... f(... f.verbose=g.verbose ...) ... }
--8<---------------cut here---------------end--------------->8---