Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
From | Nick Cox <n.j.cox@durham.ac.uk> |
To | "'statalist@hsphsun2.harvard.edu'" <statalist@hsphsun2.harvard.edu> |
Subject | st: RE: Convention for replacing an existing routine on SSC with a revision that has major syntax changes. |
Date | Wed, 25 Aug 2010 15:03:10 +0100 |
There isn't a strong convention. There is a binding rule that only one program with a given name can exist on SSC. So, you can 0. just send your program in or { 1. send your program in (but could helpfully flag that its syntax has changed) and/or 2. keep your previous program on SSC with a changed name (but flag that anyone who wants to use it in the old way would need to change the name in order not to break old .do files or programs). } or 3. think of a way to have different versions (your sense) co-existing within a program. I think I've done all of these at different times. There is a fine line between being nice to users and not doing something that makes a programmer's own life ridiculously complicated. Remember: user-programmers need not be _quite_ so fastidious as StataCorp. Sometimes, one says: Sure, I changed the syntax. It's my program! Nick n.j.cox@durham.ac.uk David Elliott The subject line above almost says it all. I have completely rewritten my file chunking routine -chunky- to use a different and far more efficient chunking strategy using Mata for the file I/O. It is basically a completely different program. I am currently calling it -chunky_mata- to during testing to distinguish it from -chunky- but it is my intent to completely supplant the original routine which, quite frankly, was an ugly kludge for which I am almost ashamed to claim ownership. The syntax has changed from: chunky using filename , index(#) chunk(#) saving(filename[, replace]) to chunky using filename ,[ [peek(#) analyze] | [chunksize(#.#) header(string) stub(string) replace] What is the convention for replacing a routine that will "break" any previous programs written using it? I appreciate your guidance. * * For searches and help try: * http://www.stata.com/help.cgi?search * http://www.stata.com/support/statalist/faq * http://www.ats.ucla.edu/stat/stata/