With Parrot 2.0, we deprecated much of the current freeze/thaw system in order to replace the old system with a more pluggable, PMC-based one. Using PMCs to do freeze/thaw gives a couple opportunities. == Potential Improvements == * make freeze/thaw aware of surrounding packfile to avoid generating useless headers. * make freeze/thaw aware of surrounding packfile in order to use strings from the constant table * create a deep cloning visitor * create a text format serializer/deserializer == Remaining Short-commings == * Parrot_visit_loop_{visit,thawfinish} should use iterator interface (get_bool, shift_pmc) in stead of array interface (elements, get_pmc_keyed_int) * freeze/thaw and sub's (and similar objects) are still shaky. Sane handling of bytecode is yet to be achieved.