[R] new line between '}' and 'else' in function body

Yihui Xie xieyihui at gmail.com
Fri Apr 3 08:07:40 CEST 2009


Hi list members,

?"else" tells us

     In particular, you should not have a newline between '}' and
     'else' to avoid a syntax error in entering a 'if ... else'
     construct at the keyboard or via 'source'.

but there's no syntax error when you break the line between "}" and
"else" in a function, e.g.

f = function(x) {
    if (x) {
        1
    } # a new line here!
    else {
        2
    }
}

> f(TRUE)
[1] 1
> f(FALSE)
[1] 2

Seems strange...

Regards,
Yihui
--
Yihui Xie <xieyihui at gmail.com>
Phone: +86-(0)10-82509086 Fax: +86-(0)10-82509086
Mobile: +86-15810805877
Homepage: http://www.yihui.name
School of Statistics, Room 1037, Mingde Main Building,
Renmin University of China, Beijing, 100872, China



More information about the R-help mailing list