Glossary
This glossary lists the core Mojo terms with short definitions.
| Term | Definition |
|---|---|
| variable | Named storage (name, type, address, value) owning its value unless borrowed (See: Variables; Ownership; Copy & move; References) |
| identifier | Symbolic name bound to a value/type/function (See: Variables) |
| uninitialized variable | Declared name without a valid value yet (See: Variables) |
| shadowing | Inner-scope variable hides an outer one (See: Variables) |
| dunder method | Special protocol method __name__ (e.g. __copyinit__) (See: Generics & Traits; Copy & move) |
| literal | Source constant forming a value (See: Literals; Data types) |
| L-value / R-value | Addressable value vs temporary / literal (See: Literals; Copy & move) |
| constructor | Type-named creator / converter (See: Data types; Copy & move) |
| implicit copy | Automatic = copy for cheap types (See: Copy & move; Ownership) |
| implicit copyable | Conforming type enabling implicit copy (See: Copy & move) |
| implicit copy mechanism | Language feature triggering auto copy (See: Copy & move) |
| explicit copy | .copy() producing a new independent value (See: Copy & move; Ownership) |
| deep copy | Copy duplicating nested / heap data (See: Copy & move; Composite) |
| move / transfer | Ownership hand-off via ^ (See: Copy & move; Ownership) |
| move-capable type | Type whose values can be moved with ^ (See: Copy & move; Ownership) |
transfer operator ^ | Symbol marking ownership move (See: Copy & move; Ownership) |
| ownership | One-owner model ensuring safety (See: Ownership; Lifetimes) |
| owner | Unique controller of a value lifetime (See: Ownership; Lifetimes) |
| owner destruction | End of owner lifetime releasing value (See: Ownership; Lifetimes) |
| borrow | Non-owning access (reference or pointer) (See: Ownership; References; Lifetimes) |
| borrower | Any reference or pointer without ownership (See: Ownership; References) |
| reference (alias) | Same-type same-address alias (See: References; Ownership) |
| alias | Alternate name to same value (See: References) |
| mutable reference | Alias permitting mutation (See: References) |
| immutable reference | Read-only alias (See: References) |
| safe pointer | Pointer with target + origin metadata (See: References; Ownership) |
| unsafe pointer | Pointer lacking lifetime tracking (See: References; Ownership) |
| dereferencing operator | [] to access pointee (See: Ownership; References) |
| isolated status | Independent owned value (See: Ownership) |
| referenced status | Alias-based access (See: Ownership) |
| pointed status | Indirect through safe pointer (See: Ownership) |
| unsafe status | Access via unsafe pointer (See: Ownership; References) |
| unsafe code | Code using unchecked constructs (See: Ownership) |
| dangling pointer | Pointer to freed / reused memory (See: Ownership; References; Lifetimes) |
| dangling reference | Alias used after owner ended (See: Ownership; References; Lifetimes) |
| memory leak | Lost allocation unreleased (See: Ownership) |
| double free | Duplicate deallocation attempt (See: Ownership) |
| accidental overwriting | Unintended mutation (See: Ownership) |
| lifetime | Valid duration of a value (See: Lifetimes; Ownership) |
| lifetime annotation | Syntax tying borrower to origin (See: Lifetimes; References) |
| origin | Source owner metadata (See: Lifetimes) |
| origin chain | Linked borrowing lineage (See: Lifetimes) |
| parametric mutability | Mutability encoded as parameter (See: References; Parameterization) |
| compile time | Static analysis & validation phase (See: Ownership; Parameterization) |
| run time | Execution phase for values (See: Ownership) |
| SIMD | Fixed-size homogeneous vector (See: SIMD; Parameterization) |
| SIMD lane | Single element position (See: SIMD) |
| parameterization | Compile-time specialization (See: Parameterization; Generics & Traits) |
| parameter | Compile-time argument in [] (See: Parameterization; Generics & Traits) |
| generic | Trait-constrained polymorphic pattern (See: Generics & Traits; Parameterization) |
| generic function | Function with trait-bounded type params (See: Generics & Traits) |
| trait | Behavioral contract (See: Generics & Traits) |
| conformance | Meeting all trait requirements (See: Generics & Traits) |
| default implementation | Trait-provided method body (See: Generics & Traits) |
| implicit trait conformance | Naming-based satisfaction (See: Generics & Traits) |
trait placeholder ... | Ellipsis marking requirement (See: Generics & Traits) |
| overflow | Integer wrap-around (See: Data types) |
| BigInt | Arbitrary-precision integer (See: DeciMojo) |
| stack | Fast scoped fixed-size storage (See: Layout; Ownership) |
| heap | Dynamic allocation region (See: Layout; Ownership) |
| contiguous memory | Sequential addresses (See: Layout; Composite) |
| metadata (list) | Header: pointer, length, capacity (See: Composite; Layout) |
| capacity (list) | Reserved element slots (See: Composite) |
| list element layout | Consecutive element storage (See: Composite; Layout) |
| StringLiteral | Immutable inline string form (See: String; Copy & move) |
| materialization (string) | Converting to mutable String (See: String; Structs) |
| stack vs heap optimization (String) | Small-string inline optimization (See: Structs; String) |
| vault metaphor | Variables as vaults at addresses (See: Ownership) |