It would be easier with actual function signatures. The GC_ref / GC_unref might only work for --mm:refc, unsure about --mm:arc
I would just use `$myCString` and worry about zero-copy if allocation becomes a bottleneck that shows up in profiling. As you are using a DB chances are that IO is the bottleneck. And even if allocation becomes a bottleneck, maybe you will introduce a cache in front of DB queries and all of that disappear. >From what you're saying, the tradeoff in readability and debuggability don't >seem worth it at the moment.
