That would be my preferred solution, but it would break backwards compatibility for format="", so others may disagree.
Peter On Wed, Aug 20, 2014 at 1:18 PM, Duncan Murdoch <murdoch.dun...@gmail.com> wrote: > On 20/08/2014, 4:11 PM, Peter Langfelder wrote: >> The default format="" in as.Date.character is supremely confusing. The >> help shows as.Date defined as >> >> ## S3 method for class 'character' >> as.Date(x, format = "", ...) >> >> yet the function behaves very differently when format is not specified >> and when it is specified to its default: >> >> as.Date("2012-01-01") >> [1] "2012-01-01" >>> as.Date("2012-01-01", format = "") >> [1] "2014-08-20" ### Gives today. >> >> >> The default setting is never used, because if format is not given, >> values "%Y-%m-%d" and "%Y/%m/%d" are tried for it (rather than ""). >> >> My suggestion is to leave out the default "" for format in as.Date: >> >> as.Date(x, format, ...) >> >> If this causes a conflict in the S3 dispatching, at least indicate in >> the help that the default is never used and the function works >> differently if format is specified to its default. > > Wouldn't it be simpler to change the test from > > if (missing(format)) > > to > > if (format == "") > > ? > > Duncan Murdoch > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel