Hi, I am writing a PerlPair PMC and I have a problem with an optimization. BTW: probably a modified PerlPair could be used to implement lisp cons pairs and the optimization will be even more useful because of the widespread use of pairs.
The optimization: I want to avoid storing a key or or value as a PMC but I must know when I am obliged to promote it to a pmc. I am obliged to do it when someone takes a reference to it. The problem is when someone accesses the key or value as a pmc using a get_pmc_keyed_*, I can't know if it is simply to later clone it or if it is to keep a reference to it. Is this a real shortcoming of the PMC API or am I overlooking something? -- stef