statement;
]
-Routines return a single value, when execution reaches the final "\]"
+Routines return a single value, when execution reaches the final "]"
or an explicit return statement:
return expr;
Other useful directives
-----------------------
-To include a directive within a routine definition \[...\], insert a
-hash "\#" as its first character.
+To include a directive within a routine definition [...], insert a
+hash "#" as its first character.
To conditionally compile:
To declare a new property common to all objects:
Property property;
- Property property expr;
\ No newline at end of file
+ Property property expr;
+
+Uncommon and deprecated directives
+----------------------------------
+
+You're unlikely to need these; look them up if necessary.
+
+ Abbreviate "string " "string " ... "string ";
+ End;
+ Import variable variable ... variable;
+ Link "compiled_file";
+ Switches list_of_compiler_switches;
+ System_file;
+
+File structure
+--------------
+
+A minimal source file:
+
+ Constant Story "MYGAME";
+ Constant Headline "^My first Inform game.^";
+ Constant MANUAL_PRONOUNS;
+
+ Include "Parser";
+ Include "VerbLib";
+
+ [ Initialise; location = study; "^Hello!^"; ];
+
+ Class Room
+ with description "A bare room."
+ has light;
+
+ Class Furniture
+ with before [; Take,Pull,Push,Pushdir:
+ print_ret (The) self,
+ " is too heavy for that."; ]
+ has static supporter;
+
+ Room study "Your study';
+
+ Furniture "writing desk" study
+ with name 'writing' 'desk' 'table';
+
+ Object -> -> axe "rusty axe"
+ with name 'rusty' 'blunt' 'axe' 'hatchet'
+ description "It seems old and blunt.";
+
+ Include "Grammar";
\ No newline at end of file