Dealing with top-level declarations in Inform source text. This is version 1.
-
-
What This Module Does - An overview of the assertions module's role and abilities.
-
-
Chapter 1: Configuration and Control
-
Assertions Module - Setting up the use of this module.
-
-
Passing three times through top-level declarations and assertion sentences.
-
Booting Verbs - In Inform even verbs are created with natural language sentences, but this process has to start somewhere. -
Passes through Major Nodes - To manage the overall process of traversing the parse tree for top-level declarations and assertion sentences. -
Anaphoric References - To keep track of the current object and subject of discussion. -
Classifying Sentences - To work out the verbs used and to diagram sentences in the source. -
Property Sentences - To examine assertion sentences for property creation. -
Imperative Subtrees - To tidy up blocks of rule and phrase definition in the syntax tree.
-
-
Sentences, often imperative, which have special meanings.
-
Debugging Log Requests - Special sentences for changing what goes into the debugging log. -
Pluralisation Requests - Special sentences for setting exotic plural forms of nouns. -
Translation Requests - Three unrelated senses of "X translates into Y as Z" sentences. -
New Use Option Requests - Special sentences for creating new use options. -
Use Options - Special sentences for setting compilation options. -
Test Requests - Special sentences for requesting unit tests or providing test scripts. -
Define by Table Requests - Special sentences declaring that tables amount to massed groups of assertions. -
Rule Placement Requests - Special sentences for listing named rules in particular rulebooks. -
New Activity Requests - Special sentences creating new activities. -
New Literal Pattern Requests - Special sentences creating new notations for literal values. -
New Relation Requests - Special sentences for creating new relations. -
New Property Requests - Special sentences creating new either/or properties. -
New Verb Requests - Special sentences for creating new verbs. -
New Adjective Requests - Special sentences for creating new adjectives. -
Intervention Requests - Special sentences for inserting low-level material written in Inform 6 notation. -
Licence Declaration Requests - Special sentences for declaring details of the licence on an extension or a project.
-
-
Turning regular assertion sentences into propositions about the model world.
-
Name Resolution - To resolve abbreviated or ambiguous nouns in context of their headings. -
Refine Parse Tree - To determine which subjects are referred to by noun phrases such as "the table" or "a paper cup" found in assertion sentences. -
The Creator - This is where all objects, kinds of object, named values, kinds of value and global variables are made. -
Assertions - To infer facts about the model world, or take other action, based on sentences asserted as being true in the source text. -
New Property Assertions - When regular assertion sentences create properties. -
Property Knowledge - This section draws inferences from assertions which seem to be about the properties of things, independent of their location. -
Relation Knowledge - This section draws inferences about the relationships between objects or values. -
Assemblies - To build the complex multi-object assemblies which result from allowing the source text to say things like "in every room is a vehicle". -
Implications - To keep track of a dangerous form of super-assertion called an implication, which is allowed to generalise about properties.
-
-
What happens to preambles, colons, and blocks of imperative code.
-
Imperative Definitions - Each IMPERATIVE node in the syntax tree makes a definition using imperative code. -
Imperative Definition Families - Different categories of imperative definition. -
Adjectival Definition Family - Imperative definitions of "Definition: X is Y: ..." adjectives. -
To Phrase Family - Imperative definitions of "To..." phrases. -
Phrase Type Data - To create, manage, compare the logical specificity of, and assist excerpt parsing concerning, the type of a To phrase. -
Parsing Type Data - To parse the prototype text of a To... phrase into its type data. -
Phrase Options - To create and subsequently parse against the list of phrase options with which the user can choose to invoke a To phrase. -
Rule Family - Imperative definitions of rules. -
Runtime Context Data - To store the circumstances in which a rule phrase should fire.
-
-
Chapter 6: Rules, Rulebooks and Activities
Rules are named phrases which are invoked in a particular way, and rulebooks a way to organise lists of them.
-
Rules - Rules contain imperative code which is executed when certain actions, activities or other processes are being followed. -
Rule Bookings - Bookings are assignments of rules to rulebooks. -
Booking Lists - Booking lists are linked lists of rule bookings. The content of a rulebook is a booking list. -
Rulebooks - Rulebooks collate rules and provide an organised way for them to collaborate on a larger task. -
Focus and Outcome - What a rulebook works on, and what it produces. -
Activities - To create and manage activities, which are bundles of rules for carrying out tasks. -
Shared Variables - Shared variables are held in common by all rules working in some goal.
-
-
Tables and equations do not look like sentences, but are also top-level.
-
Table Columns - To manage the named columns which appear in tables. -
Tables - To manage and compile tables, which are two-dimensional arrays with associative look-up facilities provided at run-time. -
Equations - To manage and compile equations, which relate numerical quantities.
-
-
Unary and then binary predicates for the calculus module to conjure with.
-
Kind Predicates Revisited - To define how the kind predicates behave in the Inform language. -
The Adjectival Predicates - To define the predicates connected to linguistic adjectives. -
The Creation Predicates - To define the predicates causing instances to be created. -
The Equality Relation Revisited - To define how equality behaves in the Inform language. -
Quasinumeric Relations - To define the binary predicates corresponding to numerical comparisons. -
The Universal Relation - To define the universal relation, which can apply and therefore subsumes all other relations. -
Explicit Relations - To draw inferences from the relations created explicitly by the source text. -
Listed-In Relations - To define the binary predicates corresponding to table columns, and which determine whether a given value is listed in that column. -
Adjective Ambiguity - Managing the multiple contextual meanings which a single adjective can have. -
Adjective Meanings - One individual meaning which an adjective can have. -
Adjective Meaning Domains - What a single sense of an adjective can apply to: perhaps a kind or an instance. -
Adjectives by Phrase - Adjectives defined by an I7 phrase written out longhand. -
Adjectives by Condition - Adjectives defined by a one-line I7 condition. -
Adjectives by Inter Function - Defining an adjective with an Inter function to test or make it true. -
Adjectives by Inter Condition - Defining an adjective with an Inter condition. -
Calculus Utilities - Utility functions for creating basic propositions using these predicates.
-
Powered by Inweb.