I'm in the process of porting Punie to the new Partridge (PAST-pm) toolchain. Tonight I got single and double quoted strings to work, thanks to Patrick's solution of leaving off the 'ctype' attribute from the PAST::Val node, and by retrieving the full matched string including surrounding quotes instead of the bare string contents (so it can pass through exactly as parsed).
I also switched comma ops over from the custom parse I was using before to a standard operator-precedence parse, and fixed up the AST transforms to handle the restructured parse tree. With these two changes, all of Punie's t/io_print.t is now passing.
The remaining failing test files are t/base_cond.t, t/base_if.t, and t/comp_cmdopt.t. All of these depend on conditionals, so there's a good chance that updating Punie to use the new toolchain's way of producing conditionals will be the final step of the port.