Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000152Documentation, Examples, and Web SiteWriting with Informpublic2010-07-01 13:202010-10-29 09:23
ReporterEmacsUser 
Assigned Tograham 
PrioritynormalSeveritymildReproducibilityN/A
StatusclosedResolutionfixed 
Platformx86OSMac OS XOS Version10.4
Product Version6E59 
Target VersionFixed in Version6F95 
Summary0000152: Confusion about declaring a property in both I6 and I7
DescriptionIn 6E39, declaring a property and an I6 translation leads to the appropriate ``with ...'' in the emitted I6. Ron Newcomb noted that, ``[Include (- ... -) when defining ...] was necessary in 5Z71 but apparently no longer needed in 6E39.'' The text in WI 25.20 is still somewhat misleading in that regard:

...

Include (- has my_funny_attribute, -) when defining the hot air balloon.

If we need a particular I7 object or kind to end up with a particular I6 name, we can write:

The whatsit object translates into I6 as "whatsit".

...

The last bit reads as if it continues the discussion of I6 properties, so it's easy to mistake ``I7 object'' for ``I7 concept'' and write code like the example Ron gave (attached).
Minimal Source Text To Reproduce
"test4" by Ron Newcomb

A room has a number called countdown. 

Include (- with countdown 0, -) when defining a room.

The countdown property translates into I6 as "countdown".

spot is room.
Additional InformationBased on 0000151.
TagsNo tags attached.
Attached Files

- Relationships
related to 0000151closed Core Inform RoversDayOut causes preprocessor to generate uncompilable I6 code 

-  Notes
(0000227)
Ron Newcomb (reporter)
2010-07-02 12:46

Er, but that test mirrors this test:
----
The previous actor is a person that varies.

Include (- Global previous_actor; -) after "Definitions.i6t".

The previous actor variable translates into I6 as "previous_actor".
----------

...in which all three lines are still required (6E59, Windows XP). So, do properties and global variables work differently here? Without the Include line, I6 complains about undeclared variable. Without the "is a person that varies" line, I7 complains about the "translates" line not referring to a variable, or at least one not in scope. Without the translates line, it's two different variables.
(0000649)
graham (administrator)
2010-10-01 08:31

I have rewritten this section to clarify it, and explain the easy way of putting a specific property into a class definition generated by I7.

- Issue History
Date Modified Username Field Change
2010-07-01 13:20 EmacsUser New Issue
2010-07-01 13:20 EmacsUser Relationship added related to 0000151
2010-07-01 13:34 jmcgrew Status new => confirmed
2010-07-02 02:10 jmcgrew Product Version => 6E59
2010-07-02 12:46 Ron Newcomb Note Added: 0000227
2010-08-29 07:55 emshort Assigned To => graham
2010-08-29 07:55 emshort Status confirmed => assigned
2010-10-01 08:31 graham Note Added: 0000649
2010-10-01 08:31 graham Status assigned => resolved
2010-10-01 08:31 graham Resolution open => fixed
2010-10-29 09:23 jmcgrew Fixed in Version => 6F95
2010-10-29 09:23 jmcgrew Status resolved => closed


Copyright © 2000 - 2010 MantisBT Group
Powered by Mantis Bugtracker