-
Notifications
You must be signed in to change notification settings - Fork 0
Type Checking
Andrew Matthews edited this page Aug 30, 2025
·
1 revision
tags:
- fifth/typesystem date: 2024-10-06
- A way to represent a type definition for all #primitive-type and #user-defined-type types
- A way to represent a state of not yet having a type allocated
- A way to represent a provisional type allocation
- A way to widen the type allocation based on new evidence
- A way to represent a generic type
- A way to represent type constraints (such as on a generic type parameter)
- A way to represent the fact that type allocation is not applicable, for syntactic elements that are not type definitions or expressions
- Type checking is done on all expressions.
- A member access is just a binary operator with a #user-defined-type as the first parameter and a #property-reference as the second.
- A type is created on the definition of a #user-defined-type