summaryrefslogtreecommitdiff
path: root/meta-stuff.rst.txt
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2023-07-22 16:38:33 +0100
committerdakkar <dakkar@thenautilus.net>2023-07-22 16:38:33 +0100
commit02eec4498027352e87826929d015f5b47bad93f8 (patch)
treef59e8d639aabdd6899cb3d570d57468d7e85833a /meta-stuff.rst.txt
parentmove constructor to global base class (diff)
downloadbash-object-system-02eec4498027352e87826929d015f5b47bad93f8.tar.gz
bash-object-system-02eec4498027352e87826929d015f5b47bad93f8.tar.bz2
bash-object-system-02eec4498027352e87826929d015f5b47bad93f8.zip
metaclass instances
Diffstat (limited to 'meta-stuff.rst.txt')
-rw-r--r--meta-stuff.rst.txt24
1 files changed, 14 insertions, 10 deletions
diff --git a/meta-stuff.rst.txt b/meta-stuff.rst.txt
index 46fabf5..ea5a074 100644
--- a/meta-stuff.rst.txt
+++ b/meta-stuff.rst.txt
@@ -10,10 +10,15 @@ done bits
* ``bos/mop/base`` + ``bos/mop/inheritance`` become ``bos/meta/class``
-next bits…
+ * store class→metaclass association somewhere (global dictionary,
+ probably)
-* formalise that ``bos-dispatch/invoke $class 0 $method $args`` is a
- class method invocation
+ - when creating a class, create a metaclass instance and store it
+ - the store must be pre-populated with metaclass instances for:
+
+ + ``bos/meta/class`` → ``bos-dispatch/invoke bos/meta/class 1``
+
+next bits…
* add ``bos/meta/attribute``
@@ -32,13 +37,12 @@ next bits…
- ``add-attribute``
- add class, mro, as attributes to the metaclass
-* store class→metaclass association somewhere (global dictionary,
- probably)
+* pre-populated metaclass instances for:
- - when creating a class, create a metaclass instance and store it
- - the store must be pre-populated with metaclass instances for:
+ - ``bos/meta/class`` → ``bos-dispatch/invoke bos/meta/class 1``
+ - ``bos/meta/attribute`` → ``bos-dispatch/invoke bos/meta/class 2``
- + ``bos/meta/class`` → ``bos-dispatch/invoke bos/meta/class 1``
- + ``bos/meta/attribute`` → ``bos-dispatch/invoke bos/meta/class 2``
+ and those instances' attributes must be manually stored
- and those instances' attributes must be manually stored
+* formalise that ``bos-dispatch/invoke $class 0 $method $args`` is a
+ class method invocation