[Rd] parsing difference between 2.4.1 and 2.5.0

Duncan Murdoch murdoch at stats.uwo.ca
Fri Apr 27 18:55:10 CEST 2007


On 4/27/2007 11:34 AM, Gabor Grothendieck wrote:
> I noticed the following difference in parse(text = ...) between R
> 2.4.1 and R 2.5.0.
> 
> ===
> 
>> parse(text = "\"^\" (x ,2 )")
> expression(x^2)
>> R.version.string
> [1] "R version 2.4.1 Patched (2006-12-30 r40331)"
> 
> 
> ====
> 
>> parse(text = "\"^\" (x ,2 )")
> expression("^" (x ,2 ))
>> R.version.string
> [1] "R version 2.5.0 RC (2007-04-16 r41194)"
> 
> ====
> 
> Ryacas was depending on the behavior in R 2.4.1 so the new
> behavior breaks it.
> 
> Is this intentional?  a bug?  How do I get the R 2.4.1 output
> from R 2.5.0 ?

There's no difference in the parsing, the difference is in the printing. 
  By default 2.5.0 will echo what you typed, whereas 2.4.1 will deparse. 
  You can get the 2.4.1 behaviour using options(keep.source=F) or 
parse(text = "\"^\" (x ,2 )", srcfile=NULL) (as ?parse says).

Duncan Murdoch



More information about the R-devel mailing list