You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When implementing a custom adverb to make return values invisible, composition of this adverb is somehow causing an infinite recursion.
library(purrr)
invisibly=function(.f){
function(...){
invisible(.f(...))
}
}
compose(invisibly, quietly)(sum)(1:3)
#> Error: evaluation nested too deeply: infinite recursion / options(expressions=)?#> Error during wrapup: evaluation nested too deeply: infinite recursion / options(expressions=)?#> Error: no more error handlers available (recursive errors?); invoking 'abort' restart
However, invisibly(quietly(sum))(1:3) performs as expected (i.e. invisibly returns the output of quietly(sum)(1:3)).
This seems possibly related to #828 but the end result there is unexpected output rather than an infinite recursion. Still, I imagine this issue would also be resolved by #651; is that work still planned or has it been shelved?
Apologies if I've missed something in the docs or issues that would explain why I'm getting this behaviour!
The text was updated successfully, but these errors were encountered:
I can't say I know why this is happening off the top of my head, but the problem is that you didn't force(.f). If you do that (as you should do with all the arguments to a function factory), the problem goes away:
When implementing a custom adverb to make return values invisible, composition of this adverb is somehow causing an infinite recursion.
However,
invisibly(quietly(sum))(1:3)
performs as expected (i.e. invisibly returns the output ofquietly(sum)(1:3)
).This seems possibly related to #828 but the end result there is unexpected output rather than an infinite recursion. Still, I imagine this issue would also be resolved by #651; is that work still planned or has it been shelved?
Apologies if I've missed something in the docs or issues that would explain why I'm getting this behaviour!
The text was updated successfully, but these errors were encountered: