Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000218Core InformAssertions and creationspublic2010-07-24 15:232010-10-28 00:30
ReporterAndreas 
Assigned Tograham 
PrioritynormalSeveritycosmeticReproducibilityalways
StatusclosedResolutionfixed 
Platformx86OSWindowsOS VersionXP
Product Version6E72 
Target VersionFixed in Version6F95 
Summary0000218: Contradiction message fails to account for the underlying cause
DescriptionI (EmacsUser) am splitting this off of 0000209 because it concerns a distinct error message.

When compiling the attached source text, Inform correctly recognizes that the author has asked for a contradiction: hairspray, an object because it was not declared otherwise, needs to be part of two hairstyles, even though incorporation is modeled as a tree. However, the error message is just:

Problem. You wrote 'There is a hairstyle' , but in another sentence 'There is a hairstyle' : but this looks like a contradiction, which might be because I have misunderstood what was meant to be the subject of one or both of those sentences.

There is no mention of the line ``Every hairstyle incorporates hairspray,'' which is the crux of the matter.

This might not be so easy to fix though. Consider:

Example A
- - - -
There is a room.
A hairstyle is a kind of thing.
A hairspray is a kind of thing.
Every hairstyle incorporates a hairspray.
Every hairspray incorporates a propellant.
There is a hairstyle.
There is a hairstyle.
- - - -

In that case the blame could be put on either the fourth or the fifth lines (or both).

Interestingly, triggering this error with the help of the pre-declared person ``yourself,''

Example B
- - - -
There is a room.
Every person incorporates a mind.
There is a person.
- - - -

yields a different sort of message:

Problem. You wrote 'There is a person' , but in another sentence 'Every person incorporates a mind' : but this looks like a contradiction, which might be because I have misunderstood what was meant to be the subject of one or both of those sentences.

Similarly,

Example C
- - - -
There is a room.
A mind is a kind of thing.
Every person incorporates a mind.
Every mind incorporates a neuron.
There is a person.
- - - -

results in

Problem. You wrote 'There is a person' , but in another sentence 'Every mind incorporates a neuron' : but this looks like a contradiction, which might be because I have misunderstood what was meant to be the subject of one or both of those sentences.

which would suggest that, for consistency, Inform should blame the propellant line in Example A.
Minimal Source Text To Reproduce
There is a room.
A hairstyle is a kind of thing.
Every hairstyle incorporates hairspray.
There is a hairstyle.
There is a hairstyle.
TagsNo tags attached.
Effect(cosmetic) Error message is badly worded
Attached Files

- Relationships
related to 0000209closedgraham Failing to make all parts of a kind kinds themselves, generates unclear compile errors. 

-  Notes
(0000482)
graham (administrator)
2010-09-01 12:16

An interesting one, since Inform is correctly diagnosing the problem, even though in a way which doesn't help the user at all. I have improved the problem message for spatial-model contradictions to make it more explicit, and this seems to improve matters:

Problem. You wrote 'There is a hairstyle' , but also 'There is a hairstyle' : that seems to be saying that the same object (hairspray) must be in two different places (nameless hairstyle created in the sentence 'There is a hairstyle' and nameless hairstyle created in the sentence 'There is a hairstyle' ). This looks like a contradiction.

...While that still looks a little odd, the source links clarify matters, and at the end of the day this was an odd sort of source text. It does at least provide the crucial clue - that there's only one hairspray object.

- Issue History
Date Modified Username Field Change
2010-07-24 15:23 EmacsUser New Issue
2010-07-24 15:23 EmacsUser Issue generated from 0000209
2010-07-24 15:24 EmacsUser Status new => confirmed
2010-08-06 17:42 EmacsUser Reporter EmacsUser => Andreas
2010-08-06 17:43 EmacsUser Description Updated View Revisions
2010-09-01 12:16 graham Note Added: 0000482
2010-09-01 12:16 graham Status confirmed => resolved
2010-09-01 12:16 graham Resolution open => fixed
2010-09-01 12:16 graham Assigned To => graham
2010-09-01 23:41 jmcgrew Relationship added related to 0000209
2010-10-25 21:14 jmcgrew Fixed in Version => 6F95
2010-10-28 00:30 jmcgrew Status resolved => closed


Copyright © 2000 - 2010 MantisBT Group
Powered by Mantis Bugtracker