From guillaume.yziquel at citycable.ch  Mon Nov 30 18:30:30 2009
From: guillaume.yziquel at citycable.ch (Guillaume Yziquel)
Date: Mon, 30 Nov 2009 18:30:30 +0100
Subject: [Rd] :Re:  PROTECT and OCaml GC.
In-Reply-To: <4B13EB34.8090207@gmail.com>
References: <mailman.15.1259578805.1160.r-devel@r-project.org>
	<4B13D956.7030608@gmail.com> <4B13DDB9.5060703@citycable.ch>
	<4B13EB34.8090207@gmail.com>
Message-ID: <4B140136.5030100@citycable.ch>

Laurent Gautier a ?crit :
> 
> Anonymous R objects, that is without an associated symbol in R, can be 
> passed to functions (and in that way makes a binding "take hold of R 
> objects without using symbols").
> For example, building R code made of anonymous objects can be achieved 
> by making a LANGSXP object and tweaking it.
> 
> Example in R itself:
>  > x <- call("round", 2.3)
>  > eval(x)
> [1] 2
>  > x[[1]] <- function(x) x^2
>  > eval(x)
> [1] 5.29
> 
> Getting more complex constructs may need a little more trickery.
> 
> ...or do you mean something else ?
> 
> L.

You're saying "anonymous R objects can be passed to functions". My 
question is:

can you construct a LANGSXP in C/Python/rpy from R objects and an 
anonymous R closure, the closure being available from C as a SEXP 
closure. Can you write a function

	SEXP my_langsxp (SEXP closure, SEXP arglist);

with only the API?

-- 
      Guillaume Yziquel
http://yziquel.homelinux.org/



[Rd] :Re: PROTECT and OCaml GC.
Guillaume Yziquel