Skip to content

Commit 9a9c8c3

Browse files
authored
Merge pull request #57 from mark-i-m/markim_glossary_003
Add a few more terms to the glossary
2 parents 588b1eb + 169cdeb commit 9a9c8c3

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

Diff for: src/glossary.md

+3
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,16 @@ node-id or NodeId | an index identifying a particular node in the AST or
2828
obligation | something that must be proven by the trait system ([see more](trait-resolution.html))
2929
provider | the function that executes a query ([see more](query.html))
3030
query | perhaps some sub-computation during compilation ([see more](query.html))
31+
region | another term for "lifetime" often used in the literature and in the borrow checker.
3132
sess | the compiler session, which stores global data used throughout compilation
3233
side tables | because the AST and HIR are immutable once created, we often carry extra information about them in the form of hashtables, indexed by the id of a particular node.
34+
sigil | like a keyword but composed entirely of non-alphanumeric tokens. For example, `&` is a sigil for references.
3335
soundness | soundness is a technical term in type theory. Roughly, if a type system is sound, then if a program type-checks, it is type-safe; i.e. I can never (in safe rust) force a value into a variable of the wrong type. (see "completeness").
3436
span | a location in the user's source code, used for error reporting primarily. These are like a file-name/line-number/column tuple on steroids: they carry a start/end point, and also track macro expansions and compiler desugaring. All while being packed into a few bytes (really, it's an index into a table). See the Span datatype for more.
3537
substs | the substitutions for a given generic type or item (e.g. the `i32`, `u32` in `HashMap<i32, u32>`)
3638
tcx | the "typing context", main data structure of the compiler ([see more](ty.html))
3739
'tcx | the lifetime of the currently active inference context ([see more](ty.html))
40+
token | the smallest unit of parsing. Tokens are produced after lexing ([see more](the-parser.html)).
3841
trans | the code to translate MIR into LLVM IR.
3942
trait reference | a trait and values for its type parameters ([see more](ty.html)).
4043
ty | the internal representation of a type ([see more](ty.html)).

0 commit comments

Comments
 (0)