today i'm beginning translating Scopes' internal OOP based system to datalog/database/ECS layout, that is, all pointers become enum-typed indices and object attributes are mapped in arrays.
to begin, i'm writing a small DSL in Scopes to describe the datamodel, and then auto-translate it to C++
this is the type tree from which classes and enums will be generated:
https://paste.sr.ht/~duangle/31522a60cf978fe7483cfdd32f1fca7293daaffc
next, we need index attributes (aka struct fields), and auxiliary tables (options, maps)