Re: Re: Strange behavior with loading Experimental package
- To: mathgroup at smc.vnet.net
- Subject: [mg105032] Re: [mg105004] Re: Strange behavior with loading Experimental package
- From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
- Date: Wed, 18 Nov 2009 07:00:19 -0500 (EST)
- References: <200911171016.FAA17366@smc.vnet.net>
But you are doing nothing at all in this way. First of all, you do not
need to load the Context Experimental` (it is not a package!) to see the
names of the functions. Just try
Names["Experimental`*"]
without "loading" anything (using Get). You will see all the names. You
can also use the functions without using Get:
Experimental`GenericCylindricalAlgebraicDecomposition[
x^2 + y^2 + z^2 <= 1, {x, y, z}]
During evaluation of In[14]:= =
Experimental`GenericCylindricalAlgebraicDecomposition::obs:Experimental`GenericCylindricalAlgebraicDecomposition has been superseded by GenericCylindricalDecomposition, and is now obsolete. It will not be included in Mathematica version 8.
{-1 < x < 1 && -Sqrt[1 - x^2] < y <
Sqrt[1 - x^2] && -Sqrt[-x^2 - y^2 + 1] < z <
Sqrt[-x^2 - y^2 + 1], x^2 + y^2 + z^2 - 1 == 0}
When you "load" Experimental` using Get all that happens is that it is appended to the ContextPath. So right now:
$ContextPath
{PacletManager`,WebServices`,System`,Global`}
but after
<< Experimental`
$ContextPath
{Experimental`,PacletManager`,WebServices`,System`,Global`}
The only thing that CleanSlate will do for you is to remove Experimental from the $ContextPath
<< Utilities`CleanSlate`
In[2]:= $ContextPath
Out[2]= =
{Utilities`CleanSlate`,PacletManager`,WebServices`,System`,Global`}
<< Experimental`
In[4]:= $ContextPath
Out[4]= =
{Experimental`,Utilities`CleanSlate`,PacletManager`,WebServices`,System`,Global`}
CleanSlate["Experimental`"];
(CleanSlate) Contexts purged: {}
(CleanSlate) Approximate kernel memory recovered: 3 Kb
In[1]:= $ContextPath
Out[1]= =
{Utilities`CleanSlate`,PacletManager`,WebServices`,System`,Global`}
Notice that by purging the context you recovered 3 Kb of memory, so unless you are really worried about a name conflict there is no real gain in using CleanSlate to purge Experimental.
Andrzej Kozlowski
On 17 Nov 2009, at 19:16, Nasser M. Abbasi wrote:
> ref (me)
>
> I found out that if I use CleanSlate[] then this problem does not show
> up any more. So I am using this package now to remove packages. So, case
> closed. One should always use CleanSlate!
>
> << "Utilities`CleanSlate`"
> SetOptions[CleanSlate, Verbose -> False];
> << "Experimental`";
> Names["Experimental`*"]
>
> CleanSlate["Experimental`"];
>
> << "Experimental`";
> Names["Experimental`*"] ----> OK now, symbols are reloaded ok.
>
> --Nasser
> "Nasser M. Abbasi" <nma at 12000.org> wrote in message news:...
> Version 7.0, on windows.
>
> I load this package using Get (not Needs), then remove all its
> symbols, then do Get again on it, but the symbols in this package do not
> reappear as expected
>
> In[1]:= << "Experimental`"
> Names["Experimental`*"]
>
> Out[2]= { ...}
>
> In[3]:= Unprotect["Experimental`*"]
> Remove["Experimental`*"]
> Out[3]= {...}
>
> In[6]:= << "Experimental`"
> Names["Experimental`*"]
> Out[7]= {} <--- EMPTY !
>
>
> But look at another package picked by random, it behaves as expected
>
>
> In[9]:= << "ANOVA`"
> Names["ANOVA`*"]
> Out[10]= {...}
>
> In[11]:= Unprotect["ANOVA`*"]
> Remove["ANOVA`*"]
> Out[11]= {....}
>
> In[13]:= << "ANOVA`"
> Names["ANOVA`*"]
> Out[14]= {....} <--- OK, not empty
>
>
> I know, I know, it is called "Expriemental" so should not complain,=
> but thought to point it out just the same as it was affecting =
something
> I am doing...
>
> --Nasser
- References:
- Re: Strange behavior with loading Experimental package
- From: "Nasser M. Abbasi" <nma@12000.org>
- Re: Strange behavior with loading Experimental package