In many fields, the use of LaTeX as a language for communication is just as important as its capacity for fine typesetting; this is a very important consideration for a large population of authors, journal editors, archivists, etc.
Related to this issue of portability is the fact that the file names are part of the end-user syntax.
As a real example, the LaTeX `tools' collection contains the package `array.sty'. A new user-level feature was added to this file at the end of 1994 and a document using this feature can contain the line:
By supplying the optional argument, the document author is indicating that a version of the file array.sty dated no earlier than that date is required to run this document without error.
This feature would be totally worthless if we were to allow an alternative version of the array package to be distributed under the same name since it would mean that there would be in circulation files of a later date, but without the new feature. If the document were processed using this `alternative array' then it would certainly produce `undefined command' errors and would probably not be processable at all.