From jfox at mcmaster.ca  Fri Jun 12 12:41:10 2015
From: jfox at mcmaster.ca (John Fox)
Date: Fri, 12 Jun 2015 06:41:10 -0400
Subject: [Rd] RFC: Declaring "foo.bar" as nonS3method() ?!
In-Reply-To: <21882.37975.726216.982364@stat.math.ethz.ch>
References: <000e01d0a387$885ad130$99107390$@mcmaster.ca>
	<21882.36966.429889.227076@stat.math.ethz.ch>
	<21882.37975.726216.982364@stat.math.ethz.ch>
Message-ID: <web-562839593@cgpsrv2.cis.mcmaster.ca>

And my non-cross-posted cross-posting:

"Dear Martin,

Thank you for addressing this issue. Introducing a nonS3method() directive in NAMESPACE seems a reasonable solution. It could replace export() for functions with "."s in their names.

Best,
 John"

On Fri, 12 Jun 2015 10:12:07 +0200
 Martin Maechler <maechler at stat.math.ethz.ch> wrote:
> This is a topic ' "apparent S3 methods" note in R CMD check '
> from R-package-devel  
>      https://stat.ethz.ch/pipermail/r-package-devel/2015q2/000126.html
> 
> which is relevant to here because some of us have been thinking
> about extending R  because of the issue.
> 
> John Fox, maintainer of the 'effects' package has enquired about
> the following  output from  'R CMD check effects' 
> 
>     >> * checking S3 generic/method consistency ... NOTE
>     >> Found the following apparent S3 methods exported but not registered:
>     >> all.effects
> 
> and added
> 
>     >> The offending function, all.effects(), is deprecated in favour of
>     >> allEffects(), but I'd rather not get rid of it for backwards compatibility.
>     >> Is there any way to suppress the note without removing all.effects()? 
> 
> and I had agreed that this was a "False Positive" in this case.
> 
>     [.......]
> 
> and then
> 
>     > Now I agree .. and have e-talked about this with another R core
>     > member .. that it would be desirable for the package author to
>     > effectively declare the fact that such a function is not an S3
>     > method even though it "looks like it" at least if looked from far.
> 
>     > So, ideally, you could have something like
> 
>     > nonS3method("all.effects")
> 
>     > somewhere in your package source ( in NAMESPACE or R/*.R )
>     > which would tell the package-checking code -- but *ALSO* all the other S3
>     > method code that  all.effects should be treated as a regular R
>     > function.
> 
>     > I would very much like such a feature in R, and for that reason,
>     > I'm cross posting this (as one of the famous exceptions that
>     > accompany real-life rules!!) to R-devel.
> 
> and actually I did *not* cross post, but have now moved the
> relevant part of the thread to  R-devel.
> 
> Martin Maechler,
> ETH Zurich
> 
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel

------------------------------------------------
John Fox, Professor
McMaster University
Hamilton, Ontario, Canada
http://socserv.mcmaster.ca/jfox/



[Rd] RFC: Declaring "foo.bar" as nonS3method() ?!
John Fox