summaryrefslogtreecommitdiff
path: root/docs/type_system
diff options
context:
space:
mode:
authornodist <kevin.comas.git@gmail.com>2026-06-03 15:26:26 -0400
committernodist <kevin.comas.git@gmail.com>2026-06-03 15:26:26 -0400
commitf3e3fd0cdba8d2f9f49be279ac3c0ec87a44609b (patch)
treea993e1539cf90362141db8a4c43f1f9f3ff7ef42 /docs/type_system
parentb26ad08b39b8229dcea0bafc4a8ba4b0d7ad7154 (diff)
refs with more impl
Diffstat (limited to 'docs/type_system')
-rw-r--r--docs/type_system/bit.md2
-rw-r--r--docs/type_system/buffer.md2
-rw-r--r--docs/type_system/empty.md16
-rw-r--r--docs/type_system/lock.md2
-rw-r--r--docs/type_system/ref.md2
-rw-r--r--docs/type_system/shared.md8
6 files changed, 25 insertions, 7 deletions
diff --git a/docs/type_system/bit.md b/docs/type_system/bit.md
index 41a6abd..b474156 100644
--- a/docs/type_system/bit.md
+++ b/docs/type_system/bit.md
@@ -16,6 +16,8 @@ Bit_representation `alias Enum[
Bit[Bit_size; Bit_representation]
```
+# Casting
+
# Alias
```text
diff --git a/docs/type_system/buffer.md b/docs/type_system/buffer.md
index aa5b0d3..c7c0354 100644
--- a/docs/type_system/buffer.md
+++ b/docs/type_system/buffer.md
@@ -15,7 +15,7 @@ Buffer[Buffer_repesentation; TYPE]
```text
String `alias Buffer[.utf8; Void]
-Vector[Any] `alias Buffer[.type; Any]
+Array[Any] `alias Buffer[.type; Any]
```
# Operators
diff --git a/docs/type_system/empty.md b/docs/type_system/empty.md
index ab0226d..55bdcf1 100644
--- a/docs/type_system/empty.md
+++ b/docs/type_system/empty.md
@@ -5,3 +5,19 @@
Container type can be null
## Use with `Option` Union
+
+```text
+make_array : Fn[yes] $ (
+ ? yes {
+ `some Array $ (1; 2; 3)
+ `nome
+ }
+)
+v : make_array(...) // Empty[Array[I64]] $ .none OR Empty[Array[I64]] $ (.some : (1; 2; 3))
+# v {
+ .some {[x] `log x } // Array[I64] $ (1; 2; 3)
+ .none { ... }
+}
+// same as above
+? v {[x] `log x } // Array[I64] $ (1; 2; 3)
+```
diff --git a/docs/type_system/lock.md b/docs/type_system/lock.md
index 86effac..b3227ca 100644
--- a/docs/type_system/lock.md
+++ b/docs/type_system/lock.md
@@ -2,6 +2,8 @@
---
+Prevent access to a parent while children are modifiable
+
```text
Lock[Name[...]; TYPE]
```
diff --git a/docs/type_system/ref.md b/docs/type_system/ref.md
index 0d872c7..a5541c3 100644
--- a/docs/type_system/ref.md
+++ b/docs/type_system/ref.md
@@ -5,3 +5,5 @@
```text
Ref[TYPE]
```
+
+A reference, cannot be assigned
diff --git a/docs/type_system/shared.md b/docs/type_system/shared.md
index 84366ab..82a70d7 100644
--- a/docs/type_system/shared.md
+++ b/docs/type_system/shared.md
@@ -12,10 +12,6 @@ Shared[TYPE] // Resolves to Shared[.unknown; TYPE]
# Garbage Collection Method
-```text
-Shared[TYPE]
-```
-
## Unknown
Counting or tracing will determined later on
@@ -27,9 +23,9 @@ Counting or tracing will determined later on
# Mutating
```text
-x : Shared[Vector] $ (1; 2; 3)
+x : Shared[Array] $ (1; 2; 3)
^ x {[y]
y `push 4
}
-`log x // Shared[.counting; Vector[I64]] $ (1; 2; 3; 4)
+`log x // Shared[.counting; Array[I64]] $ (1; 2; 3; 4)
```