Today I finally got around to proofread and implement Stevan's repr types spec, essentially recreating Parrot's PMC structures within our new VM, though with a saner interface design of leo's that I mentioned last week.
Currently, all the container types got their repr types, as well as a generic p6opaque for object attributes and a nil type for Larry's ::Class objects. Next up will be converting the current runtime's VTypes into their respective repr types: IO handles, Sockets, Threads, Processes, Rules, and maybe Perl5 SVs and Haskell Dynamics.
Now that container representations are safely behind us, Stevan is polishing up the S12 metaobject protocol to make sure it works with all repr types. Once the IO parts of repr types is in and we can actually do input/output from the runcore, it'd be time to systematically copy+pasteport over all of Pugs.Prim and complete the long transition. But we have a 6.2.11 to release first...
Comments