[Date Index] [Thread Index] [Author Index]
Best practice for Mathematica package development
What are the best standards and practices to follow when developing serious Mathematica packages that are intended for many people to use? Is there a handy guide, and/or template .m files, that can be used by prospective package developers? In the past I have made packages by allowing Mathematica to automatically generate .m files from a notebook containing the relevant definitions in initialization cells. With the advent of Workbench, I assume this is no longer the best method. I am interested in best practices related to managing options, contexts, warnings and errors, interfaces in general, etc. Is there a list of standards adhered to when WRI designs packages? Of course I can often see how others have designed packages by reading the .m files in their packages. Are all well-known packages as well- designed as each another? Can anyone recommend a particular package as a good example of how to write packages well?