Michael Feldman wrote:
> Digression alert:
> I followed the process by which the ISO Pascal standard was developed.
> As I recall, it was adopted after many years of dissension in the
> Pascal community, and then, finally, _two_ standards were adopted:
> Level 1:
> - one that provided for "conformant array parameters", by
> which a subprogram could be written with a parameter whose bounds
> were unspecified - a bit like Ada's unconstrained array parameters -
> so as to provide for general purpose array-handling subprograms
> Level 0:
> - one that was identical to Level 1, except that it did _not_
> support conformant array parameters
> The American committee members objected strenuously to Level 1 -
> of course, these members included Microsoft, Borland, and the other
> compiler vendors. The others really wanted the conformant arrays.
> In the end, the only way to get the standard adopted was to satisfy
> both sides by adopting two standards.
> Of course neither version of the standard supported any sort of
> separate unit compilation mechanism (probably because the different
> vendors had such completely incompatible ways of doing this), so the
> process labored mightily and brought forth a mouse.
Having been in the thick of this I would like to make a minor
correction. The US was against level 1 because it was an extension of
the original language specification in the Pascal Users Manual. The
original scope was to be ONLY the language defined there. I voted
against the proposal for that reason. At the time I was representing
the duPont company and not a coimpiler company. The major argument I
had against the idea was that you could not use the feature without
doing something outside the language or just coping the code into your
program. There was not library facility, preprocessor or separate
compilation facility. A more complete solution needed to be done.
This is just my opinion.