share internals of R.arity and R.nAry