- From: C. M. Sperberg-McQueen <cmsmcq@blackmesatech.com>
- Date: Sat, 29 Jan 2022 12:20:26 -0700
- To: Bethan Tovey-Walsh <accounts@bethan.wales>
- Cc: public-ixml@w3.org
Bethan Tovey-Walsh writes: >> saying that pragmas convey information (and in particular information >> not conveyed by the standard semantics of ixml, or not conveyed in >> the same way) seems more general, and is intended to cover both >> declarative and imperative semantics (and anything else). > For my money, it’s much *too* general. Comments also convey > information, for example. It would indeed be much too general if offered as a definition; it does not allow pragmas to be distinguished from other things that convey information. But it wasn't offered as a definition, and even the non-definitional characterization of pragmas from which it was drawn mentions other properties as well. I picked out the word 'instruction' and the phrase "convey information" to illustrate what appears at first glance to be a striking difference in understanding. > Firstly, I wonder whether we can help you make peace with > “instructions”? I have two ways of looking at it that may or may not > help: > a) An instruction needn’t be simply a command. Think of assembly > instructions for some furniture: it’s totally reasonable to see items > of the type “The square peg goes into the square hole”, or “You should > have 12 long bolts and 6 short bolts”. They’re declaratives, not > imperatives, but I don’t think that means they’re not properly > instructions. I agree that declarative statements can be used to convey to someone how to do something, but I think that most assembly instructions I have experienced have in fact been in the imperative mood. They did not say "The square peg goes into the square hole"; they said "Insert peg A into hole Q23". But I am too lazy to go hunt up the nearest instruction book so I can hold it up and say either Aha, triumphantly, or Wow, I didn't expect that, with an unconvincing air of being glad to have learned something instead of being sheepish at being refuted. In computing, I think it will be hard to find usages of the word "instruction" as anything but a synonym of "command", with imperative semantics. Documentation for languages with a strictly declarative semantics tends to avoid "instruction" I think, in favor of "statement" or "expression" or other terms like Prolog's "clause". Can anyone think of exceptions to that claim? (Wow. I didn't expect that: since 1.0, XSLT has referred to most of its constructs as "instructions". I confess my reaction at the moment is that that verges on the bizarre, but I seem to have lived with the usage for a long time without being bothered by it.) Intuition being notoriously unreliable, I checked the dictionaries on my shelf (but not the ones in the front room). "Webster's New World Dictionary" (World Publishing, 1968) seems to make the view you suggest a bit of a stretch. 1. an instructing; education. 2. knowledge, information, etc. given or taught; any teaching; lesson. 3. pl. directions; orders. I take 1 and 2 to refer to the activity of instruction, not to a concrete written message of any kind. The Random House American College Dictionary (ed. Clarence L. Barnhart, 1948) is similar but more detailed. 1. act or practice of instructing or teaching; education. 2. knowledge or information imparted. 3. an item of such knowledge or information. 4. (usually pl.) an order or direction. 5. act of furnishing with authoritative directions. Here items 2 and 3 at least come a step in your direction, though I think they are intended to describe abstract things, not pieces of writing. COBUILD (Collins, 1988), on the other hand, which focuses more or less relentlessly on empirical observation of current usage ("helping learners with REAL English", it says on the cover), is much less sympathetic to a declarative view: 1 An instruction is something that someone tells you or orders you do to. EG I disagree with what I am doing but it is an instruction, so I will carry it out. 2 Instruction in a subject or skill is teaching that someone gives you in it. 3 Instructions are clear and detailed information on how to do something, especially in written form, EG Read the instructions before you switch on the engine... ... the manufacturers' instruction book. > b) Pragmas instruct the processor. They either instruct it “to…” or > instruct it “that…”. The former is imperative; the latter, > declarative. > Secondly, if “instructions” still doesn’t work for you, how about > “directives” or “directions”? Still feels very imperative, and off-target in roughly the same way as "declarations" would be, only in the opposite direction. But since we are not drafting spec prose, I don't think we need to persevere until we reach agreement on the word "instruction". If you tell me that you do not mean to suggest that pragmas always have imperative semantics, but that they can have imperative or declarative semantics, then we appear to agree on the semantics of pragmas, at least in broad terms, and we each have an interesting factoid about the odd lexical semantics other people associate with the word "instruction". But looking again at your note, I'm not sure you did tell me that you you do not mean to suggest the pragmas always have imperative semantics but can also have declarative semantics. It seems to follow from your attempt to persuade me that "instructions" can be declarative, but I've made wrong inferences before. -- C. M. Sperberg-McQueen Black Mesa Technologies LLC http://blackmesatech.com
Received on Saturday, 29 January 2022 19:20:46 UTC