Glossary
What follows is an alphabetized glossary of terms defined in this reference.
Each entry below links to the section where the term is introduced.
- Action
- A construct specifying something a character can do in the storyworld. See Actions.
- Action body
- The fields that make up an action definition. See Action body.
- Action header
- The portion of an action definition that declares its name, markers, and inheritance. See Action header.
- Action name
- The unique identifier for an action definition. See Action name.
- Action search
- An expression that searches over a character’s memories or the chronicle, optionally filtered by a query. See Action searches.
- Action targeting
- The runtime process of determining whether an action can be performed. See Action targeting.
- Adapter
- The interface through which the host application exposes read–write capabilities to the Viv runtime. See Introduction.
- Arithmetic expression
- An expression applying a binary arithmetic operator. See Arithmetic expressions.
- Assignment expression
- An expression that modifies a value in the host application. See Assignment expressions.
- Associations
- Per-character tag-like annotations attached to an action memory. See Associations.
- Binding entry
- A mapping from a role reference to an expression in a bindings block. See Binding entries.
- Bindings
- Precast role values supplied to a targeted construct. See Bindings.
- Boolean literals
- The values
trueandfalse. See Booleans. - Casting pool
- The set of candidates from which a role is cast. See Casting pool.
- Casting-pool directive
- A role field specifying a custom casting pool. See Casting pool.
- Chance expression
- An expression that evaluates to
truewith a specified probability. See Chance expressions. - Child action
- An action that inherits from a parent action. See Inheritance.
- Chronicle
- The complete record of all actions performed in a simulation. See Search domains.
- Comment
- Text introduced with
//that is ignored by the grammar. See Comments. - Concatenated source
- The result of merging all included files into a single logical source. See Concatenated source.
- Conditional
- An
if/elif/else/endcontrol-flow construct. See Conditionals. - Constants
- Tokens with special fixed values. See Constants.
- Content bundle
- The compiled JSON artifact consumed by a Viv runtime. See Compiler output.
- Custom function call
- An invocation of a host-application function via the
~operator. See Custom function calls. - Dehydration
- The conversion of entity data to entity IDs before passing values across boundaries. See Dehydration.
- Embargo
- A declaration constraining the subsequent performance of an action. See Embargoes.
- Entity
- Anything in the storyworld with a persistent identity managed by the host application. See Entities.
- Entity ID
- A unique string identifier for an entity, provisioned by the host application. See Entities.
- Entity view
- The data object furnished by the host application for a given entity. See Entities.
- Enum literal
- An identifier preceded by
#, representing a named value. See Enums. - Evaluation context
- The set of bindings and state available during expression evaluation. See Evaluation context.
- Expression
- A construct that evaluates to a value. See Expressions.
- Fail-safe marker
- The
?token, which causes missing values to yieldnullrather than errors. See Fail-safe marker. - General action
- An action that may be targeted anytime (not reserved). See Reserved marker.
- Global condition
- A condition that references no roles and is tested before role casting. See Condition grouping.
- Gloss
- A brief string or template string describing an action instance. See Gloss.
- Group role
- A role with a slots maximum greater than one. See Group roles.
- Group-role decorator
- The
*token appended to a role reference to mark it as a group role. See Group-role decorator. - Hearer (
@hearer) - A special role reference bound to the character hearing about an action after the fact, via knowledge relaying. See Evaluation context.
- Host application
- The project (typically a videogame) that integrates the Viv runtime. See Introduction.
- Identifier
- An author-defined name for a construct, role, or variable. See Identifiers.
- Include
- A statement that imports constructs from another Viv source file. See Includes.
- Inheritance
- The mechanism by which a child action incorporates material from a parent action. See Inheritance.
- Inscription
- An expression that records knowledge of an action onto an item. See Inscriptions.
- Inspection
- An expression that causes a character to learn about actions inscribed on an item. See Inspections.
- Joinable
- A field that may be merged (rather than overridden) during inheritance. See Field joinability.
- Keywords
- Tokens with special meaning in the grammar. See Keywords.
- List literal
- An ordered sequence of expressions in brackets. See Lists.
- Local variable
- A variable scoped to a single block, prefixed with
_. See Local variables. - Logical expression
- An expression combining tests with
&&and||. See Logical expressions. - Loop
- A
loop/as/enditeration construct. See Loops. - Metadata
- Version and validation data in the content bundle. See Metadata.
- Null literal
- The value
null. See Null. - Number literal
- A decimal integer or fraction. See Numbers.
- Numeric criterion
- A threshold test on a numeric value in a query. See Numeric criteria.
- Object literal
- Key–value pairs in a JavaScript-like notation. See Objects.
- Operators
- Tokens that perform computations or comparisons. See Operators.
- Optional role
- A role with a slots minimum of zero. See Slots range.
- Optional slot
- A slot beyond the minimum that may or may not be filled. See Slots range.
- Orderless
- The property that constructs in a source file have no meaningful order. See Source units are orderless.
- Parent action
- An action from which a child action inherits. See Inheritance.
- Plan
- A multi-phase sequence of coordinated reactions. See Plans.
- Plan instruction
- A building block of a plan phase. See Plan instructions.
- Plan phase
- A named stage in a plan, prefixed with
>. See Phases. - Positional binding
- A sugared binding matched to roles by position rather than name. See Positional bindings.
- Query
- A pattern for searching over recorded action instances. See Queries.
- Reaction
- A declaration that queues a construct for future execution. See Reactions.
- Reaction window
- A plan construct that groups instructions with a completion policy. See Reaction windows.
- Reference
- The primary way to name and access a role binding or variable. See References.
- Reference path
- A chain of property, pointer, or lookup accesses extending a reference. See Reference paths.
- Relational expression
- An expression comparing two operands. See Relational operators.
- Report
- A longer string or template string describing an action instance. See Report.
- Required slot
- A slot that must be filled for targeting to succeed. See Slots range.
- Reserved action
- An action that may only be targeted via a reaction or selector. See Reserved marker.
- Reserved word
- A keyword that cannot be used as an identifier. See Identifiers.
- Role
- A slot in the cast of a construct, filled with an entity or symbol at runtime. See Roles.
- Role body
- The fields that make up a role definition. See Role body.
- Role label
- A keyword specifying a role’s entity type and casting behavior. See Labels.
- Role reference
- A sigil-prefixed identifier naming a role. See Role reference.
- Role-dependency forest
- A tree structure governing the order in which roles are cast. See Role dependency trees.
- Salience
- A per-character numeric score representing how memorable an action is. See Saliences.
- Scope sigil
- A sigil (
$or_) indicating storage scope. See Scope sigils. - Scratch variable
- A temporary variable scoped to an action definition, prefixed with
$. See Scratch. - Search domain
- The collection of action instances to search over. See Search domains.
- Selector
- A construct specifying a set of candidates and a policy for choosing among them. See Selectors.
- Set predicate
- A test on the relationship between an actual set and a specified set. See Set predicates.
- Sifting expression
- An expression that invokes a sifting pattern. See Sifting expressions.
- Sifting pattern
- A pattern describing a causally related sequence of actions. See Sifting patterns.
- Sigil
- A single-character token prefixing a name to indicate type or scope. See Sigils.
- Slots
- Parameters controlling how many entities fill a role. See Slots.
- Spawn directive
- A role field specifying an adapter function to construct a new entity. See Spawn directive.
- Statement
- A conditional, loop, reaction, or expression. See Statements.
- Story sifting
- The detection of emergent storylines via sifting patterns. See Sifting patterns.
- String literal
- A quoted string value. See Strings.
- Sugared bindings
- Compact inline bindings enclosed in angle brackets. See Sugared bindings.
- Symbol
- A value that does not correspond to a host-application entity. See Symbols.
- Target
- The file path specified in an include statement. See Targets.
- Target group
- The set of candidates and selection policy in a selector. See Target group.
- Target policy
- The strategy for choosing among selector candidates. See Target policies.
- Template action
- An action intended solely for inheritance, excluded from the content bundle. See Template marker.
- Template gap
- An interpolation point in a template string. See Template strings.
- Template string
- A string with interpolated expressions. See Template strings.
- Temporal constraint
- A restriction on when a reaction or query match is valid. See Temporal constraints.
- This (
@this) - A special reference to the action instance currently being executed. See Evaluation context.
- Time period
- A duration comprising a quantity and a unit. See Time periods.
- Time-frame anchor
- The reference point for a time-frame constraint. See Time-frame anchors.
- Time-frame constraint
- A temporal constraint specifying a window relative to an anchor. See Time-frame constraints.
- Time-of-day constraint
- A temporal constraint specifying clock-time boundaries. See Time-of-day constraints.
- Token
- The smallest unit of meaning recognized by the grammar. See Tokens.
- Trope
- A relational pattern among entities that can be tested at runtime. See Tropes.
- Trope fit
- An expression testing whether a trope matches for given bindings. See Trope fits.
- Type sigil
- A sigil (
@or&) indicating entity or symbol type. See Type sigils. - Wait instruction
- A plan instruction that pauses execution for a duration. See Wait.