NOTES: New file of things to think about.
authorMark Wooding <mdw@distorted.org.uk>
Mon, 5 Aug 2019 10:09:32 +0000 (11:09 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Mon, 5 Aug 2019 10:09:32 +0000 (11:09 +0100)
NOTES [new file with mode: 0644]

diff --git a/NOTES b/NOTES
new file mode 100644 (file)
index 0000000..c22de92
--- /dev/null
+++ b/NOTES
@@ -0,0 +1,23 @@
+* Things to think about
+
+  + Reorganize output protocol so that metaclasses can override the
+    layout.  Split ~hook-output~ into a pair of generic functions: one
+    for walking the tree, which should continue to be
+    ~progn~-combination, and one for producing output, which subclasses
+    can override.
+
+  + Investigate a `robust-ABI' layout using pointers rather than simple
+    inclusion.  Each class's islots and vtmsgs will be found by
+    following a pointer rather than just magically knowing the offsets.
+    If you allocate objects dynamically, using ~CLASS->cls.initsz~
+    rather than ~sizeof(CLASS__ilayout)~ then this isolates you from
+    added slots and messages at all superclasses.  I expect this to
+    require a separate root class, but it /might/ be possible to
+    mix-and-match.
+
+
+* COMMENT Emacs cruft
+
+# Local variables:
+# mode: org
+# End: