<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2018-04-13 17:08 GMT+02:00 Eliot Miranda <span dir="ltr"><<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>Hi Nicolas,<br><br></div><span class=""><div><br>On Apr 13, 2018, at 7:01 AM, Nicolas Cellier <<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@<wbr>gmail.com</a>> wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr"><div><div><div><div><div>So I started to improve the Squeak FFI:<br></div>-1) I corrected pointer arithmetic on 64 bits <a href="http://source.squeak.org/FFI/FFI-Kernel-nice.48.diff" target="_blank">http://source.squeak.org/FFI/<wbr>FFI-Kernel-nice.48.diff</a><br></div>-2) I prepared the possibility of having automated layout spec updates <a href="http://source.squeak.org/FFI/FFI-Kernel-nice.49.diff" target="_blank">http://source.squeak.org/FFI/<wbr>FFI-Kernel-nice.49.diff</a><br><br></div>Note that the FFI plugin by itself did not change.<br></div>The next steps should be to provide support for native platform alignment of fields and unions.<br></div>I'll focus on these when i can.<br></div></div></blockquote><div><br></div></span>I shall join you as soon as I am able.  Right now I have a pressing task, but within a few weeks I should be able to help.<span class=""><div><br></div></span></div></blockquote><div><br></div><div>Hi Eliot,<br></div><div>thanks.<br></div><div>I think that I can manage the easiest image side issues, but as soon as a feature will require an evolution of the plugin, your review is mandatory, as well as coordination with Pharo team, Backward compatibility counts and Esteban spent enough time on UFFI, so this will mean either unifying our forces or forking a plugin!<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><span class=""><div><blockquote type="cite"><div><div dir="ltr"><br></div><div class="gmail_extra"><br><div class="gmail_quote">2018-04-12 23:27 GMT+02:00 Denis Kudriashov <span dir="ltr"><<a href="mailto:dionisiydk@gmail.com" target="_blank">dionisiydk@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi<div><br></div><div>There is project <a href="https://github.com/estebanlm/TalkFFI" target="_blank">TalkFFI</a> from Ciprian Teodorov.</div></div><div class="m_6538023448696195102HOEnZb"><div class="m_6538023448696195102h5"><div class="gmail_extra"><br><div class="gmail_quote">2018-04-12 22:50 GMT+02:00 Bert Freudenberg <span dir="ltr"><<a href="mailto:bert@freudenbergs.de" target="_blank">bert@freudenbergs.de</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span><div style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)"><span style="font-family:arial,sans-serif;color:rgb(34,34,34)">On 12 April 2018 at 22:34, Nicolas Cellier </span><span dir="ltr" style="font-family:arial,sans-serif;color:rgb(34,34,34)"><<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@gmai<wbr>l.com</a>></span><span style="font-family:arial,sans-serif;color:rgb(34,34,34)"> wrote:</span><br></div></span><div class="gmail_extra"><div class="gmail_quote"><span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="m_6538023448696195102m_-1260474800631308584m_2694655752977270737gmail-"><div><br></div></span><div>There are at least two problems:<br></div><div>- documentation (lack of)<br></div><div>- limitations (unions, pointer on pointer on ...)<br></div><div>- automation (I said at least two, not at most)<br></div><div><br></div><div>For the first problem, I opened the SO issues. Not ideal, but it's a start.<br></div><div>For the second, I'll see if I can do something...<br></div><div>For the third, I did import some .h header with VW DLLCC, and I'm in the process of translating to other dialects.<br>It's easier because Smalltalk syntax is order of magnitudes smaller than C syntax.</div></div></div></div></blockquote><div><br></div></span><div><div style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)">​I always thought it should be fairly straightforward to make a FFI bindings generator using SWIG (<span style="font-family:arial,sans-serif;color:rgb(34,34,34)"><a href="http://www.swig.org/" target="_blank">http://www.swig.org/</a>).</span></div><div style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)"><span style="font-family:arial,sans-serif;color:rgb(34,34,34)"><br></span></div><div style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)"><span style="font-family:arial,sans-serif;color:rgb(34,34,34)">SWIG parses C headers and outputs XML. Starting from that XML should be way easier than trying to parse C ourselves.</span></div></div><span class="m_6538023448696195102m_-1260474800631308584HOEnZb"><font color="#888888"><div><br></div><div style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)">​- Bert -​</div><div><br></div><div> </div></font></span></div><br></div></div>
<br><br>
<br></blockquote></div><br></div>
</div></div><br><br>
<br></blockquote></div><br></div>
</div></blockquote><blockquote type="cite"><div><span></span><br></div></blockquote></div></span></div><br><br>
<br></blockquote></div><br></div></div>