[Rd] anonymous functions
@purd|e@@ @end|ng |rom gm@||@com
Tue Dec 8 01:05:04 CET 2020
Sorry, I should replace "cryptic-ness" from my last post, with
Sometimes short symbolic expressions are necessary.
Often, I wish I could write: f (x) = x^2.
But that's replacement function syntax.
On Tue, Dec 8, 2020 at 11:56 AM Abby Spurdle <spurdle.a using gmail.com> wrote:
> I mostly agree with your comments on anonymous functions.
> However, I think the main problem is cryptic-ness, rather than succinct-ness.
> The backslash is a relatively universal symbol within programming
> languages with C-like (ALGOL-like?) syntax.
> Where it denotes escape sequences within strings.
> Using the leading character for escape sequences, to define functions,
> is like using integers to define floating point numbers:
> my.integer <- as.integer (2) * pi
> Arguably, the motive is more to be ultra-succinct than cryptic.
> But either way, we get syntax which is difficult to read, from a
> mathematical and statistical perspective.
> On Tue, Dec 8, 2020 at 6:04 AM Therneau, Terry M., Ph.D. via R-devel
> <r-devel using r-project.org> wrote:
> > “The shorthand form \(x) x + 1 is parsed as function(x) x + 1. It may be helpful in making
> > code containing simple function expressions more readable.”
> > Color me unimpressed.
> > Over the decades I've seen several "who can write the shortest code" threads: in Fortran,
> > in C, in Splus, ... The same old idea that "short" is a synonym for either elegant,
> > readable, or efficient is now being recylced in the tidyverse. The truth is that "short"
> > is actually an antonym for all of these things, at least for anyone else reading the code;
> > or for the original coder 30-60 minutes after the "clever" lines were written. Minimal
> > use of the spacebar and/or the return key isn't usually held up as a goal, but creeps into
> > many practiioner's code as well.
> > People are excited by replacing "function(" with "\("? Really? Are people typing code
> > with their thumbs?
> > I am ambivalent about pipes: I think it is a great concept, but too many of my colleagues
> > think that using pipes = no need for any comments.
> > As time goes on, I find my goal is to make my code less compact and more readable. Every
> > bug fix or new feature in the survival package now adds more lines of comments or other
> > documentation than lines of code. If I have to puzzle out what a line does, what about
> > the poor sod who inherits the maintainance?
> > --
> > Terry M Therneau, PhD
> > Department of Health Science Research
> > Mayo Clinic
> > therneau using mayo.edu
> > "TERR-ree THUR-noh"
> > ______________________________________________
> > R-devel using r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-devel
More information about the R-devel