Re: original meaning of System` functions
- To: mathgroup at smc.vnet.net
- Subject: [mg115285] Re: original meaning of System` functions
- From: Leonid Shifrin <lshifr at gmail.com>
- Date: Thu, 6 Jan 2011 02:06:05 -0500 (EST)
Hi, Since you both Protected and Locked these commands, it looks like you made all the steps to ensure that their definitions can not be altered in the same session, and thus their original definitions can not be inspected or used (at least AFAIK). Given the nature of these commands, I wonder whether this confirmation of impossibility to undo these changes was what you were actually after :) Regards, Leonid On Tue, Jan 4, 2011 at 3:51 PM, hemmecke <hemmecke at gmail.com> wrote: > Is there any way to call the original Mathematica behaviour of a > function from the System context in case it has previously been > unprotected and redefined? > > For example, how can I access the original meaning of ClearAll after > > Unprotect[ClearAll,Clear]; ClearAll[__]:=True;Clear[__]:=True; > > ? > > I just temporarily (i.e. in some safe environment) want to access the > system defined meaning, but actually don't want to undo any modified > behaviour. > > Ralf > > In[1]:= Unprotect[ClearAll,Clear]; ClearAll[__]:=True;Clear[__]:=True; > > In[2]:= SetAttributes[ClearAll,{Protected, Locked}] > > In[3]:= SetAttributes[Clear,{Protected, Locked}] > > In[4]:= a[x_]:=x^3 > > In[5]:= ClearAll[a] > > Out[5]= True > > In[6]:= ClearAll[ClearAll] > > Out[6]= True > > In[7]:= System`ClearAll[a] > > Out[7]= True > > In[8]:= ??a > Global`a > > a[x_] := x^3 > >