On Wed, Mar 16, 2011 at 12:16 PM, <luke-tier...@uiowa.edu> wrote: > On Wed, 16 Mar 2011, Gabor Grothendieck wrote: > >> On Wed, Mar 16, 2011 at 11:49 AM, <luke-tier...@uiowa.edu> wrote: >>> >>> Just as a heads-up: it is likely that unlocking the bindings in base >>> for pi, T, F, probably all BULTIN and SPECIAL functions, and possibly >>> more, will start signaling warnings in the near future. Doing this >>> may be useful at times for debugging but it can mess up assumptions >>> others make about how things in base work and so reduce code >>> reliability. >> >> That seems ok for pi, T and F but if its extended to everything in >> base then I would hope there is a nowarn= argument or other easy way >> to avoid the warning message. >> > > That would defeat the purpose. Unlocking things in base may be useful > for experimenting or debugging but it is not a good idea otherwise. > [? assignInNamespace could be more explicit on htis and will be soon.] > There is a reason we lock bindings in the first place, and that is so > one can assume that these bindings have certain values and certain > properties and one can write reliable programs against these > assumptions. >
Its useful for being able to set defaults for arguments that do not have defaults. That cannot break existing programs. Note that if this feature is implemented in a heavy handed manner it could cause havoc as at least one package that is depended upon by literally dozens of other packages (and possibly hundreds if one takes into account dependencies of dependencies) cannot function. -- Statistics & Software Consulting GKX Group, GKX Associates Inc. tel: 1-877-GKX-GROUP email: ggrothendieck at gmail.com ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.