chamando uma função R definida pelo usuário do C ++ usando Rcpp

Eu tenho um código R com várias funções R definidas pelo usuário. Estou tentando fazer o código rodar mais rápido e, claro, a melhor opção é usar o Rcpp. Meu código envolve funções que se chamam. Portanto, se eu escrever algumas funções em C ++, conseguirá chamar e executar algumas das minhas funções R no meu código c ++. Em um exemplo simples, considere o código abaixo em R:

mySum <- function(x, y){
 return(2*x + 3*y)
}
x <<- 1
y <<- 1

Agora considere o código C ++ no qual estou tentando acessar a função acima:

#include <Rcpp.h>
using namespace Rcpp;

// [[Rcpp::export]]
int mySuminC(){
 Environment myEnv = Environment::global_env();
 Function mySum = myEnv["mySum"];
 int x = myEnv["x"];
 int y = myEnv["y"];
 return wrap(mySum(Rcpp::Named("x", x), Rcpp::Named("y", y)));
 }

Quando eu origino o arquivo em R com a função embutida sourceCpp (), recebo o erro:

 "invalid conversion from 'SEXPREC*' to int

Alguém poderia me ajudar na depuração do código? Meu código é eficiente? Pode ser resumido? Existe alguma idéia melhor para usar a função mySum do que o que eu fiz no meu código?

Muito obrigado pela sua ajuda.

questionAnswers(1)

yourAnswerToTheQuestion