- Home
- Inter Modules
- codegen
The code generation pipeline. This is version 1.
-
-
Codegen Module - Setting up the use of this module. -
Stages - To create the stages through which code generation proceeds. -
Architecture - To deal with multiple inter architectures. -
Link Instructions - Inter often needs to assimilate or otherwise deal with architecture-neutral kits of linkable material, and this is where such requirements are noted. -
Pipelines - To build and run through pipelines of code generation stages.
-
-
Chapter 2: Miscellaneous Pipeline Stages
-
Linker - To link inter from I7 with template code. -
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. -
Uniqueness - To make sure certain symbol names translate into globally unique target symbols. -
Reconcile Verbs - To reconcile clashes between assimilated and originally generated verbs. -
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.
-
-
-
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 4: Inter to Final Code
-
Code Generation - To generate final code from intermediate code. -
Frame Control - To manage the final-code process, at the frame level. -
Constants and Literals - To generate final code for constants, including arrays. -
Instances and Properties - To generate the initial state of storage for instances and their properties, and all associated metadata. -
Variables - To generate the initial state of storage for variables.
-
-
-
Final Targets - To create the range of possible targets into which Inter can be converted. -
Final Textual Inter - To create the range of possible targets into which Inter can be converted. -
Final Binary Inter - To create the range of possible targets into which Inter can be converted. -
Final Inventory - To print a summary of the contents of a repository. -
Generating Inform 6 - To generate I6 code from intermediate code.
-
-
-
Index Interpreter - Inform 6 template language, or I6T for short, is a notation for expressing low-level code in Inter. -
Index File Services - To provide routines to help build the various HTML index files, none of which are actually created in this section. -
Index Rules - Utility functions for indexing rules, rulebooks and activities. -
Lexicon - A lexicon for nouns, adjectives and verbs found in an Inter tree. -
Contents Element - To write the Contents element (C) in the index. -
Card Element - To write the Library Card element (Cd) in the index. -
Behaviour Element - To write the Behavuour element (Bh) in the index. -
Relations Element - To write the Relations element (Rl) in the index. -
Events Element - To write the Events element (Ev) in the index. -
Figures Element - To write the Figures element (Fi) in the index. -
Tables Element - To write the Tables element (Tb) in the index. -
Values Element - To write the Values element (Vl) in the index. -
Rules for Scenes Element - To write the Rules for Scenes element (RS) in the index. -
Extras Element - To write the Extras element (Xt) in the index. -
Standards Element - To write the Standards element (St) in the index. -
Innards Element - To write the Innards element (In) in the index. -
Verbs Element - To write the Verbs element (Vb) in the index. -
Gazetteer Element - To write the Gazetteer element (Gz) in the index. -
Lexicon Element - To write the Lexicon element (Lx) in the index. -
Arithmetic Element - To index dimensional rules. -
Plot Element - To write the Plot element (Pl) in the index. -
Chart Element - To write the Chart element (Ch) in the index. -
Phrasebook Element - To write the Phrasebook element (Pb) in the index. -
Tokens Element - To write the Tokens element (To) in the index. -
Commands Element - To write the Commands element (Cm) in the index. -
Grouped Element - To write the Grouped actions element (A1) in the index, and also the detailed per-action pages linked from it. -
Alphabetic Element - To write the Alphabetic actions element (A2) in the index. -
Spatial Geometry - To deal with vectors and cuboids in a three-dimensional integer lattice. -
EPS Map - To render the spatial map of rooms as an EPS (Encapsulated PostScript) file. -
Map Element - This section masterminds the creation of the World and Kinds index pages, though it delegates much of the work elsewhere. Though it does belong to core Inform, these indexes will look pretty sparse if the spatial Plugins aren't plugged in. -
Instances - To index instances. -
Spatial - Indexing functions for the spatial structure of the world model. -
The Player - Indexing the player's initial position. -
Backdrops - Indexing the player's initial position. -
Regions - Indexing the player's initial position. -
The Map - Indexing the player's initial position. -
Spatial Map - To fit the map of the rooms in the game into a cubical grid, preserving distances and angles where possible, and so to give each room approximate coordinate locations. -
HTML Map - To render the spatial map of rooms as HTML. -
Render EPS Map - To render the spatial map of rooms as an EPS (Encapsulated PostScript) file.
-
Powered by Inweb.