<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Feb 26, 2013 at 8:39 AM, Maciej Fijalkowski <span dir="ltr"><<a href="mailto:fijall@gmail.com" target="_blank">fijall@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Tue, Feb 26, 2013 at 6:34 PM, Eli Bendersky <<a href="mailto:eliben@gmail.com">eliben@gmail.com</a>> wrote:<br>


><br>
> On Tue, Feb 26, 2013 at 7:42 AM, Nick Coghlan <<a href="mailto:ncoghlan@gmail.com">ncoghlan@gmail.com</a>> wrote:<br>
>><br>
>> On Wed, Feb 27, 2013 at 1:13 AM, Maciej Fijalkowski <<a href="mailto:fijall@gmail.com">fijall@gmail.com</a>><br>
>> wrote:<br>
>> > Hello.<br>
>> ><br>
>> > I would like to discuss on the language summit a potential inclusion<br>
>> > of cffi[1] into stdlib.<br>
>><br>
>> I think cffi is well worth considering as a possible inclusion for<br>
>> Python 3.4. (In particular, I'm a fan of the fact it just uses C<br>
>> syntax to declare what you're trying to talk to)<br>
><br>
><br>
> I'm cautiously +0.5 because I'd really like to see a strong comparison case<br>
> being made vs. ctypes. I've used ctypes many times and it was easy and<br>
> effortless (well, except the segfaults when wrong argument types are<br>
> declared :-). I'll be really interesting in seeing concrete examples that<br>
> demonstrate how CFFI is superior.<br>
<br>
</div>My main issue with ctypes, other than confusing API, which is up to<br>
taste, is that you just cannot wrap some libraries, like OpenSSL<br>
because of API vs ABI. OpenSSL uses macros extensively. Another point<br>
is that even C POSIX stdlib gives you incomplete structs and you have<br>
to guess where to put what fields.<br>
</blockquote></div><br></div><div class="gmail_extra">Yep, I can think of some reasons too. But just mentioning it so you remember explicitly listing the advantages when it comes to writing a PEP or some other sort of formal proposal. An FWIW, I think there's already enough positive feedback to at least start drafting a PEP. It can always be rejected later ;-)<br>

<br>Eli<br><br></div></div>