NCI 't' parameter type removed; no replacement?

Kevin Tew tewk at tewk.com
Sun May 15 21:41:26 UTC 2011


Byte strings, the former 't' NCI type, are as primitive a data type as 
int is for libraries written in C.
I think some of Jonathan and Patrick extreme surprise is that we are 
making the extremely common use of C byte strings more laborious to use 
than they were in the past.

The whole point of a ffi interface is to remove the repetitive nature of 
the mundane cases and make the arcane cases possible.

We shouldn't force NCI/ffi/(whatever we are calling it these days) users 
to become responsible for manually marshaling such a primitive datatype 
such as C bytes stings to and form parrot Strings.
I understand for some extravagant use cases manual marshaling will be 
necessary.

However, we should make the extremely common case of 't' easy. ( Provide 
a NCI type that automatically marshals)
And make the uncommon cases possible. (Via manual marshaling.)

Kevin


On 05/15/2011 02:16 PM, Donald Hunter wrote:
> Hi,
>
> I raised my concern about the removal of NCI signatures breaking 
> Zavolaj on 27 April. I received what I felt was a very curt response 
> from Peter suggesting that:
>
> " PCRE's pcre_compile function also makes use of pass-by-reference. This
> binding has been updated to the new API and makes a good reference, in
> my opinion."
>
> It was hard to find the example and it wasn't directly relevant. 
> Unfortunately the response I got was enough to dissuade me from 
> contributing the scarce time I had available to work on Zavolaj.
>
> I think it would have been more helpful to have backed off removing 
> features that I'd just said were in use, rather than pressing ahead 
> and leaving me to figure it out.
>
> Cheers,
> Donald.
>
>
>
> _______________________________________________
> http://lists.parrot.org/mailman/listinfo/parrot-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.parrot.org/pipermail/parrot-dev/attachments/20110515/9cae507c/attachment.html>


More information about the parrot-dev mailing list