Am 21.10.2016 um 18:10 schrieb William Dunlap: > > Are you saying that
f1 <- function(x) log(x) f2 <- function(x) { log } (x) should act differently? yes. But that would mean that {log} would act differently than log. I suppose it is a matter of taste, but I say yuck. As for 'return', don't use it if you want readable code. It is like a goto but worse. It is never necessary. Bill Dunlap TIBCO Software wdunlap tibco.com On Fri, Oct 21, 2016 at 10:17 AM, Wilm Schumacher <wilm.schumac...@gmail.com > wrote: > Hi, > > > Am 21.10.2016 um 18:10 schrieb William Dunlap: > >> Are you saying that >> f1 <- function(x) log(x) >> f2 <- function(x) { log } (x) >> should act differently? >> > yes. Or more precisely: I would expect that. "Should" implies, that I want > to change something. I just want to understand the behavior (or file a bug, > if this would have been one). > > As I wrote, in e.g. node.js the pendents to the lines that you wrote are > treated differently (the first is a function, the latter is a parsing > error). > > Let's use this example instead: > x <- 20 > f1 <- function(x) { x<-x+1; log(x) } > f2 <- function(x) { x<-x+1; log } (x) > which act equally. > > But as the latter is a legal statement, I would read it as > f2 <- (function(x) { x<-x+1; log }) (x) > > thus, I would expect the first to be a function, the latter to be a > numeric ( log(20) in this case ). > > > Using 'return' complicates the matter, because it affects evaluation, not >> parsing. >> > > But perhaps it illustrates my problem a little better: > x <- 20 > f1 <- function(x) return(log(x)) > f2 <- function(x) { return(log) } (x) > > f1(10) is a numeric, f2(10) is the log function. Again: as the latter is a > legal statement, I would expect: > f2 <- (function(x) { x<-x+1; log }) (x) > > However, regarding the answers I will try to construct the AST regarding > the grammar defined in gramm.y of that statement > f2 <- function(x) { x<-x+1; log } (x) > to understand what the R interpreter really does. > > Best wishes, > > Wilm > > > > > [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel