functionality is nice. syntax is weird. I think I would have preferred an "interpolate" function call. stop( i("class is `class(pi)` and $pi") ) three typing letters, too, and more logical. most importantly, I wish we had some form of this in base R from the outset--whatever it is--so that my students get used to using the standard from the outset.
[the {{...}} had the advantage of being unlikely to break anything. perl has it nicely done--- " is interpolated, ' is not. but this is a bridge that we crossed long ago in R. it would break too much.] best, /iaw ---- Ivo Welch (ivo.we...@gmail.com) http://www.ivo-welch.info/ J. Fred Weston Professor of Finance Anderson School at UCLA, C519 Director, UCLA Anderson Fink Center for Finance and Investments Free Finance Textbook, http://book.ivo-welch.info/ Editor, Critical Finance Review, http://www.critical-finance-review.org/ On Tue, Aug 20, 2013 at 3:28 PM, Gabor Grothendieck <ggrothendi...@gmail.com> wrote: > On Tue, Aug 20, 2013 at 6:00 PM, ivo welch <ivo.we...@gmail.com> wrote: >> character string at the end of an existing function, stopifnot(). (2) >> I think "estrings" (that behave like characters but are interpolated >> before printout) are useful in the same way perl interpolated strings >> are useful. > > The gsubfn package has string interpolation somewhat like perl. > Preface a function call with fn$ and then back ticks and $ are > interpolated. > > library(gsubfn) > fn$identity("pi is $pi") > > library(sqldf) > fn$sqldf("select * from BOD where Time > $pi") > > fn$stop("class is `class(pi)`") ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel