Re: Re: Re: Function and object
- To: mathgroup at smc.vnet.net
- Subject: [mg106812] Re: [mg106765] Re: [mg106755] Re: [mg106701] Function and object
- From: Leonid Shifrin <lshifr at gmail.com>
- Date: Sun, 24 Jan 2010 05:39:55 -0500 (EST)
- References: <21622849.1264068058488.JavaMail.root@n11>
Hi Kurt, If shadowing really becomes a problem for you, there are a couple of tools available to make your life easier. There is a package Unshadow` written by Ulrich Jentschura, and also AntiShadow by David Wagner. Both can be found in and downloaded from Wolfram Library Archive - AntiShadow not in .m file but inside a pdf article of Wagner - which is by the way an excellent read by itself. I also wrote a couple of packages devoted to package development, such as PackageManipulations` and PackageSymbolsDependencies`, which can be downloaded from my website <http://www.mathprogramming-intro.org/> (additional resources section). In particular, PackageManipulations` contains a function PackageReload which has an option to reload a given package resolving all shadowing problems in its favor (removing all conflicting definitions present in other packages). There may be also other tools that I am not aware of, of course. Hope this helps. Regards, Leonid On Sat, Jan 23, 2010 at 4:30 AM, Canopus56 <canopus56 at yahoo.com> wrote: > > Stephen Wolfram also followed the practice of almost always using longer > > descriptive names. ... Using longer descriptive names also reduces the > > chances of conflict with other names - WRI names or other package names. > > Thanks to all for the many great replies in this thread. Name conflicts > really seem to be a common problem with several of the Mathematica archive > packages that I've tried. Sometype of naming convention practice seems > important. E.g. - the last one I tried was a package on importing triple > variables for plotting: > > ----------- > Import["ListToArray.m"] > > ListToArray::shdw: ListToArrayappears in multiple contexts > {ListToArray`,Global`} definitions in context 'ListToArray' may shadow or be > shadowed by other definitions. ----------- > > For VBA and javascript, I usually just append my initials for publically > exposed packages to prevent conflicts. > > Thanks, Kurt > >