MathGroup Archive 2002

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Unloading packages

  • To: mathgroup at
  • Subject: [mg32544] Re: Unloading packages
  • From: "Allan Hayes" <hay at>
  • Date: Sat, 26 Jan 2002 04:08:05 -0500 (EST)
  • References: <a2r4a3$9oj$>
  • Sender: owner-wri-mathgroup at


Firstly: to reload a package use Get not Needs (needs is designed not to
load already loaded packages.

You may still find that you get messages about symbols being protected  -
and these mean that you cannot make new definitions.

Two ways out of this


At the end of the package between End[] and EndPackage[] you should find
some instructions like Protect[...]: comment these out thus
(when you have finished revising remove (* and *).

2.... to do with package style:

After BeginPackage[...] insert in a new line
(I also add  ClearAll["`*"])
These will unprotect all the symbols in the package context and will clear
all definions and attributes associated with them.

Incidentally  instead of using Protect[ < sequence of symbols>] we can use

There are cases where we need to refine the above, for example when dealing
with symbols from other contexts or when we do not want to protect some
symbols, but I find it very convenient.


Allan Hayes
Mathematica Training and Consulting
Leicester UK
hay at
Voice: +44 (0)116 271 4198
Fax: +44 (0)870 164 0565

"Sseziwa Mukasa" <mukasa at> wrote in message
news:a2r4a3$9oj$1 at
> Is is possible to unload packages or have the functions therein be
> reread from the source file every time the source changes?  I have a
> package that I am modifying and unfortunately I am introducing errors.
> When I fix the errors though I cannot reload the package so I have to
> quit and restart the kernel.  Hardly elegant by any measure.
> Thanks in advance,
> --
> Sseziwa Mukasa            Business phone  (direct) : (978) 536-2359
> JEOL USA INC                            (operator) : (978) 535-5900
> 1 Intercontinental Way
> Peabody, MA 01960         email: mukasa at

  • Prev by Date: Re: principle root? problem
  • Next by Date: RE: NestWhile
  • Previous by thread: RE: Unloading packages
  • Next by thread: Break up very long expression for C implementation