Skip to content

get ...

5 messages · Duncan Murdoch, Luke Tierney, Gabor Grothendieck

#
On 30/06/2008 10:56 AM, Luke Tierney wrote:
On the other hand, what Gabor sees in e is what he would see inside f:
[1] "..."
I don't think we should distinguish between user level in .GlobalEnv and 
what a user sees inside a function he writes.  Stopping a user from 
seeing ... inside a function would break all sorts of things.

Duncan Murdoch
#
On Tue, 1 Jul 2008, Duncan Murdoch wrote:

            
Huh??

Noone is proposing that ls or exist, for example change.  ... is a
special variable that can only be used in special contexts.  Just
evaluating ... gives an error; get("...") used in the same context
probably ought to as well.  What we do now is clearly wrong: return an
undocumented object that can't be used for anyting useful (and
reflects an internal implementation we might want to change).  We need
to either prevent the R_DOTSXP values from leaking out or document
them , define [ methods and figure out what they should do, etc.
Preventing them from leaking out is the sensible thing to do.

luke

  
    
#
If access is removed it would be important to provide
an alternative first -- removing access and only providing
an alternative some time later does not seem prudent.
On Wed, Jul 2, 2008 at 10:57 AM, Luke Tierney <luke at stat.uiowa.edu> wrote:
#
ACCESS TO WHAT FOR CRYING OUT LOUD!!!!!! What we have now is a way for
a useless internal object that is in any case subject to change to
leak out.  How is that useful, never mind essential?  Exists works, as
it should, ls works, as it should.  In the language, ... arguments in
functions are special, so it is appropriate for variables named
... that are being used in the special context (i.e. have values that
are R_DOTSXP) to behave in a special way, as do variables in
environments that correspond to missing arguments in functions.  The
behavior of assign("...", x, env = e) will not be unaffected for any
valye of x accessible at the R level.

luke
On Wed, 2 Jul 2008, Gabor Grothendieck wrote:

            

  
    
#
On 7/2/2008 10:57 AM, Luke Tierney wrote:
Sorry, I misunderstood what you were suggesting.  So you wouldn't 
propose to change the behaviour of Peter's evalq(list(...),e)?

Duncan Murdoch