diff options
Diffstat (limited to 'meta-stuff.rst.txt')
-rw-r--r-- | meta-stuff.rst.txt | 24 |
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 |