Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001186Documentation, Examples, and Web SiteWriting with Informpublic2014-01-25 17:072014-05-07 07:38
Assigned Tograham 
Platformx86OSLinuxOS VersionAny
Product Version6G60 
Target VersionFixed in Version6L02 
Summary0001186: WI 9.14 seems to contradict /mantis/view.php?id=1081#c2369
DescriptionThe attached source, from 0001081:0002369, was given with the comment

- - - -
As horrid as it is, this behaviour is correct. It tests whether the condition "we have examined the grail" is true for the 5th time of asking...
- - - -

Going back to WI, I can't seem to find supporting documentation—the closest I got was WI 9.14, which reads

- - - -
Given any condition, we can say

    if (...condition...) for the second time ...
    if (...condition...) twice ...
    if (...condition...) 2 times...
    if (...condition...) two times...

(all of which are synonymous: the words once, twice, thrice, one, two, three, four, five, six, seven, eight, nine, ten, first, second, third, fourth, fifth, sixth, seventh, eighth, ninth and tenth all mean what they obviously should). The result is true if the condition holds now and has held for only one previous spell in the past. A condition holding for, say, fifteen consecutive turns without a break counts as only one "time" - so what we mean by "twice" here is that it is true now, was previously false for a while, and was previously true for a while before that, but no more.
- - - -

Extrapolating, ``for the fifth time'' in the source below ought to result in true only if (1) the condition holds now and (2) it has held for four ``spells'' in the past, each followed by a period of time where the condition was false. But that contradicts both 0001081:0002369 and the behaviour of the example code, in which the condition is true for only one spell. Perhaps WI 9.14 should be clarified?
Minimal Source Text To Reproduce
There is a room.
Here is a grail.  Here is another thing, yet another thing, and a further thing yet.
Every turn:
	repeat with X running through things:
		if we have examined the grail for the fifth time:
			say "Hello."
Test me with "x grail".
TagsNo tags attached.
Attached Files

- Relationships
related to 0001081closedgraham Core Inform Scene changing rules conditional upon an action having been performed N times get the number wrong 

-  Notes
graham (administrator)
2014-04-21 15:10

(Okay, so I've changed my mind about this. The change log reads:)

Problem message added to catch conditions like this:

if we have examined the grail for the fifth time:

which are impossible to satisfy since "we have examined the grail" is
false until it's true, and then stays true forever, so that there cannot
be five distinct periods of time in which it's true. Since this does
not conform to our ordinary English understanding of this condition,
and since the condition cannot be useful, a problem message seems
the best response. (Previously there was a hacky workaround for this,
giving the condition a different meaning, but it had too many demerits
and caused confusion as to what "for the fifth time" meant.)

- Issue History
Date Modified Username Field Change
2014-01-25 17:07 EmacsUser New Issue
2014-01-25 17:07 EmacsUser Issue generated from 0001081
2014-01-25 17:07 EmacsUser Relationship added related to 0001081
2014-01-25 17:08 EmacsUser Project Core Inform => Documentation, Examples, and Web Site
2014-01-25 17:09 EmacsUser Category Model world => Writing with Inform
2014-01-25 17:09 EmacsUser Summary Scene changing rules conditional upon an action having been performed N times get the number wrong => WI 9.14 seems to contradict 0001081:0002369
2014-01-25 17:09 EmacsUser Description Updated View Revisions
2014-04-21 15:10 graham Note Added: 0002637
2014-04-21 15:10 graham Status new => resolved
2014-04-21 15:10 graham Resolution open => fixed
2014-04-21 15:10 graham Assigned To => graham
2014-05-07 07:37 jmcgrew Fixed in Version => 6L02
2014-05-07 07:38 jmcgrew Status resolved => closed

Copyright © 2000 - 2010 MantisBT Group
Powered by Mantis Bugtracker