diff options
Diffstat (limited to 'docs/lifecycle')
| -rw-r--r-- | docs/lifecycle/check.md | 3 | ||||
| -rw-r--r-- | docs/lifecycle/eval.md | 3 | ||||
| -rw-r--r-- | docs/lifecycle/exec.md | 3 | ||||
| -rw-r--r-- | docs/lifecycle/import.md | 3 | ||||
| -rw-r--r-- | docs/lifecycle/ir.md | 3 | ||||
| -rw-r--r-- | docs/lifecycle/jit.md | 3 | ||||
| -rw-r--r-- | docs/lifecycle/notify.md | 3 | ||||
| -rw-r--r-- | docs/lifecycle/parse.md | 32 | ||||
| -rw-r--r-- | docs/lifecycle/register.md | 6 | ||||
| -rw-r--r-- | docs/lifecycle/scope.md | 15 |
10 files changed, 70 insertions, 4 deletions
diff --git a/docs/lifecycle/check.md b/docs/lifecycle/check.md new file mode 100644 index 0000000..3e8177e --- /dev/null +++ b/docs/lifecycle/check.md @@ -0,0 +1,3 @@ +# Check + +--- diff --git a/docs/lifecycle/eval.md b/docs/lifecycle/eval.md new file mode 100644 index 0000000..8572f21 --- /dev/null +++ b/docs/lifecycle/eval.md @@ -0,0 +1,3 @@ +# Eval + +--- diff --git a/docs/lifecycle/exec.md b/docs/lifecycle/exec.md new file mode 100644 index 0000000..edab443 --- /dev/null +++ b/docs/lifecycle/exec.md @@ -0,0 +1,3 @@ +# Exec + +--- diff --git a/docs/lifecycle/import.md b/docs/lifecycle/import.md new file mode 100644 index 0000000..bf7635d --- /dev/null +++ b/docs/lifecycle/import.md @@ -0,0 +1,3 @@ +# Import + +--- diff --git a/docs/lifecycle/ir.md b/docs/lifecycle/ir.md new file mode 100644 index 0000000..fb5d70d --- /dev/null +++ b/docs/lifecycle/ir.md @@ -0,0 +1,3 @@ +# Ir + +--- diff --git a/docs/lifecycle/jit.md b/docs/lifecycle/jit.md new file mode 100644 index 0000000..5515f55 --- /dev/null +++ b/docs/lifecycle/jit.md @@ -0,0 +1,3 @@ +# Jit + +--- diff --git a/docs/lifecycle/notify.md b/docs/lifecycle/notify.md new file mode 100644 index 0000000..2db3b27 --- /dev/null +++ b/docs/lifecycle/notify.md @@ -0,0 +1,3 @@ +# Notify + +--- diff --git a/docs/lifecycle/parse.md b/docs/lifecycle/parse.md index 4c5851d..c9da979 100644 --- a/docs/lifecycle/parse.md +++ b/docs/lifecycle/parse.md @@ -4,4 +4,34 @@ Build initial AST -## Initialize +# Value + +## Integer `\d+` + +## Float `\d+\.\d+` + +## String `".*?"` + +## Char `'\\?.' + +# Name `[_a-z][a-zA-z0-9_]{0,59}` + +# Type `[A-Z][a-zA-z0-9_]{0,59}` + +On type completion look up if type is a builtin + +# Symbol `\.[a-zA-z0-9_]{0,60}` + +# Op + +## Op ``[a-z_]+|OPERATORS` + +## Action `[?@#^]` + +# List + +## List `()` + +## Define `[]` + +## Action `{}` diff --git a/docs/lifecycle/register.md b/docs/lifecycle/register.md index 5db7759..bffb3a8 100644 --- a/docs/lifecycle/register.md +++ b/docs/lifecycle/register.md @@ -6,11 +6,11 @@ 1. Add findsert task to `namespace_module_mutex` * If found, stop -2. Create the namespace and add to namespace tree +2. Create the namespace, lock its `export_mutex` and add to namespace tree 3. Create task on the new namespaces to read the file into a string -4. On completion of the read task add a parse task into the namespace mutex +4. On completion of the read task start a parse task ## String 1. Add task to set new `kpl_buffer` to `namespace_string` `module_string` -2. The set task will add a parse task to `namespace_string` +2. The set task will start a parse task diff --git a/docs/lifecycle/scope.md b/docs/lifecycle/scope.md new file mode 100644 index 0000000..849c52d --- /dev/null +++ b/docs/lifecycle/scope.md @@ -0,0 +1,15 @@ +# Scope + +--- + +Traverse AST and: + +## Link Parent Lists + +## Create Vars + +## Initialize Functions + +## Register Imports + +On finding an import node add a register task for the imported string |
