diff options
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/syntax/index.md | 10 | ||||
| -rw-r--r-- | docs/type_system/enum.md | 13 | ||||
| -rw-r--r-- | docs/type_system/index.md | 26 |
3 files changed, 48 insertions, 1 deletions
diff --git a/docs/syntax/index.md b/docs/syntax/index.md index 7047de3..1318219 100644 --- a/docs/syntax/index.md +++ b/docs/syntax/index.md @@ -91,13 +91,21 @@ Start with a `.` A list of statements between `()` separated by `;` or `\n` +```text +(1; 2; 3) +``` + # Definitions A list of type definitions between `[]` separated by `;` or `\n` +```text +Type[arg] +``` + # Actions -A list of statements between `{}` separated by `;` or `\n` that can be associated with a conditional +A list of statements between `{}` separated by `;` or `\n` associated with a conditional ## Conditionals diff --git a/docs/type_system/enum.md b/docs/type_system/enum.md new file mode 100644 index 0000000..9e6be9b --- /dev/null +++ b/docs/type_system/enum.md @@ -0,0 +1,13 @@ +# Enum + +--- + +Unique symbols associated with a type that can map to an underlying type + +```text +Enum[.name; ...] // Resoves to Enum[Void; ...] + +Enum[TYPE; .name; ...] + +Enum[TYPE; .name : VALUE; ...] +``` diff --git a/docs/type_system/index.md b/docs/type_system/index.md index 79371d0..3b67475 100644 --- a/docs/type_system/index.md +++ b/docs/type_system/index.md @@ -5,3 +5,29 @@ # Templates A template is an incomplete type + +## Template Fields + +If a field in a template is not filed, one of these are required: + +##### Any + +Denotes a field in a template that has not resolved + +##### Void + +Denotes that a field that does not resolve to anything + +## Defined Templates + +* #### [Enum](./enum.md) + +# Alias + +A type based on a complete template that is interchangeable with what it is based on + +## Defined Alias + +# Unique + +A type based on a complete template that is not interchangeable with what it is based on |
