# Magma Semantics

- [Introduction](introduction.md)

- [Terminology](definition.md)

- [Assignment](assignment.md)

- [Uninitialized Identifiers](uninitialized-identifier.md)

- [Evaluation in Magma](evaluation.md)

  - [Call by Value Evaluation](evaluation.md#call-by-value-evaluation)

  - [Magma’s Evaluation Process](evaluation.md#magma-s-evaluation-process)

  - [Function Expressions](evaluation.md#function-expressions)

  - [Function Values Assigned to Identifiers](evaluation.md#function-values-assigned-to-identifiers)

  - [Recursion and Mutual Recursion](evaluation.md#recursion-and-mutual-recursion)

  - [Function Application](evaluation.md#function-application)

  - [The Initial Context](evaluation.md#the-initial-context)

- [Scope](scope.md)

  - [Local Declarations](scope.md#local-declarations)

  - [The ‘first use’ Rule](scope.md#the-first-use-rule)

  - [Identifier Classes](scope.md#identifier-classes)

  - [The Evaluation Process Revisited](scope.md#the-evaluation-process-revisited)

  - [The ‘single use’ Rule](scope.md#the-single-use-rule)

- [Procedure Expressions](procedure-expression.md)

- [Reference Arguments](reference-argument.md)

- [Dynamic Typing](dynamic-typing.md)

- [Traps for Young Players](trap.md)

  - [Trap 1](trap.md#trap-1)

  - [Trap 2](trap.md#trap-2)

- [Appendix A: Precedence](precedence.md)

- [Appendix B: Reserved Words](precedence-2.md)
