From jeffrey.ryan at lemnica.com  Mon Feb 27 14:39:32 2012
From: jeffrey.ryan at lemnica.com (Jeffrey Ryan)
Date: Mon, 27 Feb 2012 07:39:32 -0600
Subject: [Rd] Identical copy of base function
In-Reply-To: <20299.28947.791010.435828@stat.math.ethz.ch>
References: <144b5f48a1aa59e2bbcd8b96a3990edd.squirrel@webmail.plus.net>
	<20299.28947.791010.435828@stat.math.ethz.ch>
Message-ID: <CABDUZc_sm=kRjLpxAA+96pgrLoexKAn72ktZfwMAmXZM2j5HeQ@mail.gmail.com>

Doesn't this also mean that if Matrix is loaded first, det() will be
calling Matrix::determinant, which could be quite surprising change in
behavior from expectation?

This seems rather dangerous and 'untrustworthy' to me - unless I am
missing some other hidden mechanism involved here.

I haven't read the code yet, and I am sure Matrix will "do the right
thing", but I have strong reservations about this behavior when
applied to the general universe of R and CRAN.

Jeff

On Mon, Feb 27, 2012 at 6:03 AM, Martin Maechler
<maechler at stat.math.ethz.ch> wrote:
>>>>>> Matthew Dowle <mdowle at mdowle.plus.com>
>>>>>> ? ? on Mon, 27 Feb 2012 09:59:43 +0000 writes:
>
> ? ?> Hello,
>
> ? ?> Regarding this in R-devel/NEWS/New features :
>
> ? ?> o 'library(pkg)' no longer warns about a conflict with a
> ? ?> function from 'package:base' if the function is an
> ? ?> identical copy of the base one but with a different
> ? ?> environment.
>
> ? ?> Why would one want an identical copy in a different
> ? ?> environment? I'm thinking I may be missing out on a trick
> ? ?> here.
>
> Yes, you are ;-) ? The trick is called ``namespace'' :
>
> One example which lead me to implement the above:
>
> The Matrix package has had an identical copy of 'det' for a
> while now, but of course ?in the Matrix namespace.
> Because of that, the call to determinant() inside det() will
> correctly dispatch Matrix methods for determinant(), whereas
> base::det() would not.
>
> Martin
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel



-- 
Jeffrey Ryan
jeffrey.ryan at lemnica.com

www.lemnica.com
www.esotericR.com

R/Finance 2012: Applied Finance with R
www.RinFinance.com

See you in Chicago!!!!



[Rd] Identical copy of base function
Jeffrey Ryan