Glossary¶
Terms as used in the KYLLO documentation. Definitions are drawn from the source material; each entry cites its authoritative section. Where the source leaves a term partly undefined, the entry says so.
Contract¶
A declared requirement on a function or type: its preconditions, postconditions, invariants, effects, and failure conditions. Every function must explicitly declare its contract.
Source: language-guide/functions.md, technical-specification/TECHSPEC-03.md.
Precondition (REQUIRES)¶
What must be true before a function executes. Preconditions must be checked or established by the caller.
Source: technical-specification/TECHSPEC-03.md.
Postcondition (ENSURES)¶
What must be true after successful execution. Successful execution must satisfy the declared postconditions.
Source: technical-specification/TECHSPEC-03.md.
Invariant (INVARIANT)¶
A condition that must hold throughout the lifetime of a value or type, e.g. balance >= 0 for an account.
Source: getting-started/first-program.md, technical-specification/TECHSPEC-03.md.
OLD¶
Refers to the previous state of a value in a postcondition, e.g. result.balance == OLD(account.balance) + amount.
Source: technical-specification/TECHSPEC-03.md.
Result¶
A safety type representing either success (the expected return value) or a declared failure. Operations that can fail must return an explicit Result.
Source: language-guide/types.md, language-guide/error-handling.md, technical-specification/TECHSPEC-10.md.
Optional¶
A safety type representing a value that may be absent. The compiler must require the absence case to be handled before accessing the contained value.
Source: language-guide/types.md, technical-specification/TECHSPEC-24.md.
NonNull¶
A safety type: a value that cannot be null.
Source: language-guide/types.md.
Bounded¶
A safety type: a numeric value constrained by declared limits.
Source: language-guide/types.md.
Validated¶
A safety type: a value that has passed specified validation rules.
Source: language-guide/types.md.
Effect¶
An external operation a function performs, e.g. filesystem, database, network, system, state mutation, or time access. Functions must declare the external effects they perform and cannot perform undeclared effects.
Source: language-guide/permissions.md, technical-specification/TECHSPEC-09.md.
Permission¶
Explicit authorization to perform an effect. Permissions must be granted explicitly and follow least privilege; calling a function must not silently grant additional permissions.
Source: language-guide/permissions.md, technical-specification/TECHSPEC-09.md.
Module¶
A separately compilable unit with a declared public interface and declared dependencies. Internal details remain private by default.
Source: language-guide/modules.md, technical-specification/TECHSPEC-08.md.
Interface¶
A declaration of required functions, associated types, and behavioral requirements that a type promises to provide. Implementation must be explicit.
Source: technical-specification/TECHSPEC-41.md.
Trait¶
A reusable capability (e.g. equality, ordering, iteration) declared as operations and constraints. Trait implementation must be explicit.
Source: technical-specification/TECHSPEC-41.md.
Diagnostic¶
A structured compiler message. Every diagnostic must include a unique error identifier, category and severity, exact source location, description, violated rule or contract, expected vs. actual behaviour, and suggested investigation steps.
Source: compiler/diagnostics.md, technical-specification/TECHSPEC-12.md.
Verification status — PROVEN¶
A property status: mechanically established through formal verification.
Source: verification/validation.md.
Verification status — TESTED¶
A property status: passed specified tests, but not mathematically proven. Tests are never proofs.
Source: verification/validation.md.
Verification status — CHECKED¶
A property status: passed a static or runtime check.
Source: verification/validation.md.
Verification status — FAILED¶
A property status: a violation was detected.
Source: verification/validation.md.
Verification status — UNKNOWN¶
A property status: available verification methods could not establish the result.
Source: verification/validation.md.
Program status — VALID¶
All mandatory language and compiler checks have passed.
Source: verification/validation.md.
Program status — INVALID¶
One or more mandatory checks have failed.
Source: verification/validation.md.
Program status — UNVERIFIED¶
The program passes mandatory structural checks, but one or more required behavioral properties cannot be established.
Source: verification/validation.md.
Build status — DEVELOPMENT¶
A build classification: intended for development and debugging.
Source: compiler/build-and-deployment.md.
Build status — COMPILED¶
A build classification in TECHSPEC-13 §3 and TECHSPEC-55 §2 (parsing and required compilation stages completed). Note: the three build-status lists disagree — BUILD.md omits COMPILED, TECHSPEC-13 omits RELEASED — see audit AUDIT-003.
Source: technical-specification/TECHSPEC-13.md, technical-specification/TECHSPEC-55.md.
Build status — VALIDATED¶
A build classification: passed mandatory compiler and validation checks.
Source: compiler/build-and-deployment.md.
Build status — VERIFIED¶
A build classification: satisfied all required verification criteria. The exact meaning and release requirements for VERIFIED are an open decision (OQ-023).
Source: compiler/build-and-deployment.md.
Build status — RELEASED¶
A build classification: an approved artifact has been deployed.
Source: compiler/build-and-deployment.md.
Ownership¶
Every owned resource must have a clearly defined owner; ownership transfers must be explicit; resources must not be used after transfer or release.
Source: runtime/memory.md, technical-specification/TECHSPEC-06.md.
Borrowing¶
Temporary access to a resource owned by another entity, governed by the borrowing rules in Section 6. Exact reference/borrowing syntax is an open decision (OQ-007).
Source: technical-specification/TECHSPEC-06.md.
Untrusted data¶
External data (APIs, files, user input, third-party modules) treated as untrusted by default until explicitly validated. Untrusted status must not be silently discarded.
Source: security/overview.md, technical-specification/TECHSPEC-25.md.
Evidence record¶
The compiler's record for a verified property: the property, the verification method, the result, assumptions, and limitations. The evidence-record schema is an open decision (OQ-020).
Source: verification/evidence-reports.md, technical-specification/TECHSPEC-55.md.
Conformance¶
Whether an implementation satisfies the specification; defined in Section 56, including a conformance test suite and implementation profiles.
Source: technical-specification/TECHSPEC-56.md.
MVP¶
Minimum Viable Prototype: the first-version scope — a working prototype demonstrating that the language can catch AI-generated mistakes through compiler-enforced rules.
Source: design-decisions/mvp-scope.md, technical-specification/TECHSPEC-18.md.
EBNF¶
Extended Backus-Naur Form, the notation the specification will use to define its grammar (=, |, [ ], { }, ( ), " ", ;).
Source: technical-specification/TECHSPEC-20.md.
KYLLO¶
The programming language documented on this site: a language for AI agents, designed so AI-generated code is checked against what it is supposed to accomplish. Formerly named AXIOM (the name used in the original source files).
Source: introduction/index.md.