aboutsummaryrefslogtreecommitdiff
path: root/notes
diff options
context:
space:
mode:
Diffstat (limited to 'notes')
-rw-r--r--notes7
1 files changed, 4 insertions, 3 deletions
diff --git a/notes b/notes
index b59aa41..8edbc5d 100644
--- a/notes
+++ b/notes
@@ -75,7 +75,7 @@ A->int A->int add -> A->int
= Characters =
-!: <open>
+!: co-routines and threads
": string quote
#: line comment
$: <open>
@@ -238,9 +238,10 @@ Main problem: How do we find out if the names mean what we believe they do?
=== Name Properties ===
* [d] deeply constant: objects referenced (indirectly) from this name can be assumed constant (constant implied)
* [c] constant: the object reference of this name can be assumed constant (code constant and static implied)
-* [t] code / type constant: the final code block (not function) reference and function type can be assumed constant
+* [t] code / type constant: the function type can be assumed constant (including whether this function has no captured scope)
* [s] static: the path from local scope to where the name resolves can be assumed constant
the name index within the scope can be assumed constant
+ the activation level can be assumed constant
* [] dynamic: nothing can be assumed
* [v] inactive: push value
* [f] active: execute unless quoted
@@ -252,7 +253,7 @@ Main problem: How do we find out if the names mean what we believe they do?
| f | deff | deffs | defft | deffst | deffc | deffd |
| q | defq | | | | | |
+---+------+-------+-------+--------+-------+-------+
-* defaults: |defvst "==" deffd |deffst "=*" deffd
+* defaults: |defvs "==" deffd |deffs "=*" deffd
* it is possible to globally turn checking (after dynamic resolution) on
== Sticky Resolution ==