MathGroup Archive 2005

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

Search the Archive

Re: Package development

  • To: mathgroup at smc.vnet.net
  • Subject: [mg62566] Re: [mg62545] Package development
  • From: "David Park" <djmp at earthlink.net>
  • Date: Mon, 28 Nov 2005 00:57:56 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

GL,

My view is that one should write packages in a regular Mathematica notebook,
using Initialization cells and the Generate AutoSave Package feature. One
should never look at a .m file - unless you're trying to examine someone
else's code.

But the question of comments, (* comment *), is important. I do not think
that WRI has adequately addressed this issue. Recently I was developing a
routine in a testing notebook. I had commented out a section of the code.
The routine worked. When I moved the routine to the package notebook, there
were parsing errors. When I removed the commented code the package routine
worked. However sometimes I have put comments in package code without
trouble. (It makes one wonder how many different parsers Mathematica uses.)

I think that the vast majority of package writers would like to be able to
use unrestricted comments in their code. Such use is good practice, and Text
cells outside the code are not an adequate substitute. The fact that it is
unreliable is an annoyance and tends to discourage comment use.

Furthermore, if one converts a cell from one form to another, say
StandardForm to InputForm, the comments are discarded. This is also an
annoyance.

COMMENTS SHOULD BE CONSIDERED AN ESSENTIAL PART OF CODE. THEY SHOULD BE
HANDLED ROBUSTLY AND NEVER DISCARDED. WRI WOULD VASTLY IMPROVE THE
USEFULNESS OF MATHEMATICA IF THEY ATTENDED TO THIS.

David Park
djmp at earthlink.net
http://home.earthlink.net/~djmp/




From: tt at tt.com [mailto:tt at tt.com]
To: mathgroup at smc.vnet.net

Now the question. I have written a few packages in the past. More
recently, I am always questioning myself to know if I should develop
it directly in an ASCII .m file or use the notebook format  and rely
on the autosave package feature (initialization cells). I like the
idea of  developing the package in the notebook format to have all the
formatting features that ease reading, but at the same time, I hate to
loose all the comments I put in when the *.m file is created. Of
course I could put comments in the input lines of the notebook, but
then I am better writing the ASCII file. Also, I could save the
notebook as a package through "Save as Special" (that puts all the
headers and text in comments, which is not done with the autosave
package feature), but this is not an automated way of doing things. I
am just seeking opinions from Mathematica power users. Which way do you
develop packages?

Cordially.

GL



  • Prev by Date: Re: Re: Re: NSolve Vs. Elliptic Integral
  • Next by Date: Re: webMathematica problems if using Xvnc
  • Previous by thread: Re: Package development
  • Next by thread: Re: Package development