On Thu, Jan 29, 2004 at 07:04:52PM +0000, Adrian Howard wrote: > > On Thursday, January 29, 2004, at 04:08 am, Lincoln A. Baxter wrote: > > >Phew... Only one comment: KISS (Keep It Simple Stupid) > [snip] > >No fancy versioning emnumeration scheme can replace this testing, and > >what we have now works "well enough" (I think). Most module authors I > >think are pretty good about documenting what they change in the Changes > >file. > > Amen to that :-)
I like simplicity as well. However, sometimes as a module author I made bad decisions, or don't have the foresight to see how the module will evolve. Thus, to create a "best" version of the interface would mean breaking backward compatibility in a number of ways. I think if the fundamental versioning scheme of Perl and CPAN supported that, I would be more courageous about making those kinds of changes, providing a better solution for old and new users. As it is, I tend to favor keeping backwards compatibility, which leaves some cruft exposed in modules. Perhaps the right kind of interface declaration system would help with this. Or maybe people have other ideas on what to do when the best design for the future is not backwards compatible? Mark -- http://mark.stosberg.com/