- Home
- Inter Modules
- pipeline
The code generation pipeline. This is version 1.
-
-
What This Module Does - An overview of the pipeline module's role and abilities.
-
-
-
Pipeline Module - Setting up the use of this module.
-
-
-
Parsing Pipelines - To parse pipelines from text files. -
Running Pipelines - To run through pipelines of code generation stages. -
Pipeline Errors - To issue problem messages when parsing or running erroneous pipelines. -
Read, Move, Wipe, Stop - Four simple pipeline stages.
-
-
-
New Stage - This stage takes an empty (or wiped) repository and equips it with just the absolute basics, so that it is ready to have substantive material added at a later stage. -
Load Binary Kits Stage - Reading other Inter trees as binary files, and attaching them at given points in the main Inter tree. -
Parsing Stages - Two stages which look at raw I6-syntax material in the parse tree, either from imsertions made using Inform 7's low-level features, or after reading the source code for a kit. -
I6 Template Reader - Inform 6 meta-language is the language used by template files (with extension |.i6t|); we need tp be able to read it here in order to assimilate template code. -
Parse Linked Matter - To generate the initial state of storage for variables. -
Resolving Conditional Compilation - To generate the initial state of storage for variables. -
Assimilate Linked Matter - To assimilate the material in parsed non-code splats. -
Resolve External Symbols - To make sure certain symbol names translate into globally unique target symbols. -
Inspect Plugs - To make sure certain symbol names translate into globally unique target symbols. -
Detect Indirect Calls - To make sure certain symbol names translate into globally unique target symbols. -
Uniqueness - To make sure certain symbol names translate into globally unique target symbols. -
Reconcile Verbs - To reconcile clashes between assimilated and originally generated verbs.
-
-
-
Synoptic Hierarchy - The layout and naming conventions for the contents of the main/synoptic module. -
Synoptic Utilities - Managing the generation of code and arrays in the synoptic module, which is put together from resources all over the Inter tree. -
Extensions - To renumber the extensions and construct suitable functions and arrays. -
Literal Text - To alphabetise literal texts, deduplicate them, and stote a canonical set in the main/texts linkage. -
Responses - To compile the main/synoptic/responses submodule. -
Rules - To compile the main/synoptic/rules and main/synoptic/rulebooks submodules. -
Activities - To compile the main/synoptic/activities submodule. -
Actions - To compile the main/synoptic/actions submodule. -
Instances - To compile the main/synoptic/instances submodule. -
Kinds - To compile the main/synoptic/kinds submodule. -
Properties - To compile the main/synoptic/properties submodule. -
Relations - To compile the main/synoptic/relations submodule. -
Tables - To compile the main/synoptic/tables submodule. -
Chronology - To compile the main/synoptic/chronology submodule. -
Scenes - To compile the main/synoptic/scenes submodule. -
Multimedia - To compile the main/synoptic/multimedia submodule. -
Use Options - To compile the main/synoptic/use_options submodule. -
Verbs - To compile the main/synoptic/verbs submodule. -
Tests - To compile the main/synoptic/tests submodule.
-
-
Chapter 5: Optimisation Stages
-
Eliminate Redundant Matter - To remove (for example) functions which we can prove will never be called or referred to as values. -
Eliminate Redundant Labels - To remove labels which are defined but never jumped to. -
Eliminate Redundant Operations - To remove logical or arithmetic operations which do nothing.
-
Powered by Inweb.