Perhaps one could create a utility function
has.element <- function(list, name) name %in% names(list)
and then have $ generate a warning (not an error!) when the named element
does not exist.
This would be helpful in debugging code. Yesterday I spent quite some time
tracking down an error that turned out to be $ returning a NULL because the
data file I read in had a variable mis-named. A warning message would have
made everything clear right away.
-G
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] Behalf Of Duncan Murdoch
> Sent: Wednesday, April 07, 2004 4:16 PM
> To: Shin; [EMAIL PROTECTED]
> Subject: Re: [Rd] Re: [R] More user-friendly error message needed.
>
>
> On Wed, 07 Apr 2004 15:38:54 -0400, Duncan Murdoch <[EMAIL PROTECTED]>
> wrote :
>
> >There are several places this could be fixed. When you use x$z, the
> >code for $ could give an error message or a warning; instead it
> >returns NULL with no error or warning. Changing this would probably
> >be dangerous: I'd guess there's code out there that relies
> on getting
> >a NULL back from a construction like that. But maybe we
> should change
> >that in 2.0?
>
> No, this would be a bad idea.
>
> A standard test for the existence of a list element is
>
> if (is.null(x$z)) ....
>
> Those would all need some other kind of test if this were changed.
> Not a good idea at all!
>
> Duncan Murdoch
>
> ______________________________________________
> [EMAIL PROTECTED] mailing list
> https://www.stat.math.ethz.ch/mailman/listinfo/r-devel
>
LEGAL NOTICE\ Unless expressly stated otherwise, this messag...{{dropped}}
______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-devel