Apropos names.
Ross Ihaka
ihaka@stat.auckland.ac.nz
Sat, 21 Mar 1998 13:20:08 +1200 (NZST)
> To: R-devel@stat.math.ethz.ch
> Subject: Apropos names.
> From: Peter Dalgaard BSA <p.dalgaard@biostat.ku.dk>
> Date: 19 Mar 1998 18:44:14 +0100
> MIME-Version: 1.0
> Content-Transfer-Encoding: 7bit
> (from R-core)
> > Btw, why can't object names contain a `@'?
Reserved for future use?
> Speaking of names. I've been thinking whether it would not at some
> point be wise to introduce namespaces into R. This would pretty
> obviously break a lot of S code, but it would also make it possible to
> avoid a lot of silly problems such as naming one's variables c, t, pt,
> df, rm, ...
>
> A plan that might work relatively smoothly could involve:
>
> - Separate functions from variables. We already do that to some extent
> ("looking for object of mode function...") [At the same time, one
> might get rid of everyone's favourite quirk: forgetting () and
> thus listing the function instead of calling it. I know: basic
> design, functions are just objects, etc., but really: Wouldn't it be
> nicer to type view(ls) the few times you actually wanted to see its
> contents?]
This has been done in common lisp and it's ugly. Consider
apply(x, 1, mean)
How do we indicate that this is the function called mean rather
than the non-function mean? The single namespace makes it much
easier to think about functions as data.
> - All system functions and variables are really named something like
> sys::c() i.e. we introduce a namespace separator ::.
> Functions/variables that are intended for general use can be made
> public, by a special call.
This is a definite possibility, but there are higher priorities at present.
Ross
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._