Re: [R] Function that operates on functions: it's ok, but the display isn't

From: Deepayan Sarkar <deepayan.sarkar_at_gmail.com>
Date: Tue 10 Oct 2006 - 20:21:08 GMT

On 10/10/06, Alberto Monteiro <albmont@centroin.com.br> wrote:
> The following code works fine:
>
> # g is the function that returns the square of a number
> g <- function(y) y^2
>
> # f1 is a function that takes one function
> # as argument, and returns another function
> f1 <- function(f) function(x) f(x+1) - f(x)
>
> # h(x) is g(x+1) - g(x) or 2x + 1
> h <- f1(g)
>
> # h(1) = 3
> # h(2) = 5
> # h(3) = 7
>
> So far, so good. But why:
>
> h
>
> shows:
>
> function(x) f(x+1)-f(x)
> <environment: 0264BE84>

Presumably, 'f' takes the value 'g' in this environment, and indeed

> environment(h)$f

function(y) y^2

> I don't get it. h should show function(x) g(x+1)-g(x)
> or something like that.

Not that I know much about functions and environments, but printing is ultimately a matter of aesthetics. What do you think "should" happen when

h <- f1(function(y) y^2)

and you try to print h ?

-Deepayan



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Wed Oct 11 06:23:54 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Wed 11 Oct 2006 - 01:30:09 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.