Hi folks, There are 2 new docs in docs/pdds/clip now (r14774):
1) pddXX_pmc.pod 2) pddXX_cstruct.pod I'll start with 2) first: it'll be the metaclass of all (publically accessible, C-derived) structures used in Parrot, it'll be the Class PMC of PMC based objects therefore. As a PMC C<isa> CStruct and CStruct is implemented as a PMC, it's the metaclass of itself. The other document 1) describes a more general structure of PMC internal layout: - fixed (non-resizable) but: - differently-sized structures as currently already used by Buffer, String, and Bufferlike objects. As all changes regarding this should be non-intrusive to any existing code, I'll start implementing a CStruct PMC with the new layout. Here are some (preliminary) steps: [1] prelims - send note about encapsulation within PMCs - rearrange PMC fields to new conforming layout - redefine PMC_* macros to use OPMC fields - implemnent GC stuff re var-sized PMCs [2] start CStruct - use new_from_string vtable to construct a CStruct - implement or delegate C struct {} parser. That's it so far, comments of course and always welcome, leo