On 23 Oct 2001, at 11:44, da Silva, Joe wrote:
Sorry if I wasn't clear ... when I said "my understanding is ...", what this meant (and BTW, I thought this would be clear from the subject being discussed) was "my understanding of the standard(s) is ...".
I understood what your understanding was. ;-) My assertion is that understandings of the standard don't count, only statements from the standard do.
So, if you have specific areas where you believe that I have contradicted the standard(s), please indicate the particulars, so we can both double-check it.
I can't, because I believe that you have asserted a restriction that is not in the standard (but see my comment about "the standard" below). I can't cite a passage from the standard that specifically allows linking of non- program-parameter, main-block variables to external entities, because the standard says nothing about such linking (allowed or disallowed). Can you cite a passage that disallows such use?
BTW, you should note that we are in agreement that a program without a parameter list is perfectly legal.
Duly noted! ;-)
As to whether such a program is "pointless", please note that any such inference (which arose when I semi-quoted Peter Grogono), was nothing more than a bit of humour.
The issue for me is not whether certain programs are or are not pointless. My contention is broader, specifically, that any such assertion must be supported by the standard and not simply by "common sense." The Pascal standards are written in horribly arcane language to ensure that they are not open to such interpretations, i.e., that everything stated is unambiguous. We shouldn't have to argue about whether a given program is or is not legal (or pointless), because the standard should either prohibit it or not.
Given the choice, I would much rather decide things on the basis of opinions and common sense, as reading the standards always gives me a severe headache. But I believe that we cannot do that, if GPC is to claim adherence to those standards. If there is disagreement over positions that GPC should take, then the choice of position must be the one that is supported by citations from the standards.
Now, specific to your situation, a very quick check of the ISO-10206 standard revealed the following...
Ah, but the assertion regarding "pointlessness" (i.e., that a program without program parameters could have no side effects) was made in the context of ISO 7185. Frank allowed that ISO 10206 programs could have side effects without program parameters (and is supported by the passages you cite).
I concur completely with your citations in the context of ISO 10206.
However, ISO 7185 mentions binding to external entities only with reference to program parameters (section 6.10). I contend that 6.10 applies only to main block variables that are also program parameters and therefore is not applicable to (and therefore does not restrict) other main block variables being bound by some other mechanism external to the language.
-- Dave