Re: loading autosaved package using Needs[]
- To: mathgroup at smc.vnet.net
- Subject: [mg95120] Re: [mg95083] loading autosaved package using Needs[]
- From: "David Annetts" <davidannetts at aapt.net.au>
- Date: Wed, 7 Jan 2009 04:07:10 -0500 (EST)
- References: <200901060909.EAA25587@smc.vnet.net>
Hi Mitch, <snippage> > Needs["phd_thesis_common.m"] > Needs::cxt: Invalid context specified at position 1 in > Needs[phd_thesis_common.m]. A context must consist of valid > symbol names separated by and ending with `. >> > > any help/suggestions appreciated. When you usually load WRI-supplied packages, you don't specify the ".m" extension, so why are you doing so here? If you've defined your package using BeginPackage["packagename`"] then as long as your working directory in in your search path, you can load your package using Needs["packagename`"] Note the trailing "`" character & no ".m" extension. There's a tutorial at tutorial/SettingUpMathematicaPackages in the documentation but a very simple example follows. Save the notebook as test.nb after adjusting the directory, and don't evaluate the init cells (* cell 1 *) SetDirectory["d:/Tmpfiles"]; (* cell 2: set these as init. cells *) BeginPackage["test`"]; Working::usage = "Working[] should print Hello World"; Begin["`Private`"]; Working[] := Print["Hello World"]; End[]; (* PRivate*) EndPackage[]; (* end init cells *) (* cell 3 *) Quit[] (* don't use the package we just created -- force it to load from disk *) (* cell 4: don't evaluate init cells !*) SetDirectory["d:/Tmpfiles"]; Needs["test`"] Working[] Regards, Dave.
- References:
- loading autosaved package using Needs[]
- From: Mitch Murphy <mitch@lemma.ca>
- loading autosaved package using Needs[]