[squeak-dev] FFI | How to declare pointer to external structure in #fields?
David T. Lewis
lewis at mail.msen.com
Wed May 20 00:45:39 UTC 2020
Thanks Ben. I don't follow the topic closely, and this is a very helpful
and concise summary.
Dave
On Tue, May 19, 2020 at 10:53:17PM +0800, Ben Coman wrote:
> On Tue, 19 May 2020 at 03:33, Levente Uzonyi <leves at caesar.elte.hu> wrote:
>
> > How does UFFI come here? AFAIK it's nothing but a different image-side
> > code using the VM's FFI implementation along with the signature notion
> > Igor used in NativeBoost (which is great btw because it's "as you would
> > write it in C" and doesn't require language changes).
> >
>
> Think of UFFI as a front-end for original-FFI. IIUC although Igor's
> NativeBoost was a super fast alternative FFI,
> it wasn't portable and wasn't compatible with Spur, so Pharo had to throw
> NativeBoost away.
> But they kept the nice signature style as a layer over FFI.
>
> Ronie wrote a paper on the reasons for UFFI in Pharo...
> https://users.dcc.uchile.cl/~rsalgado/uffi-fourth-draft.pdf
>
> Here is a shorter presentation...
> http://www.esug.org/data/ESUG2016/05-Friday/1145-1230%20UnifiedFFI/ESUG2016%20-%20UFFI.pdf
>
>
> Here are some usage references...
> https://www.slideshare.net/FASTPresentations/pharo-foreign-function-interface-ffi-by-example-by-esteban-lorenzano
>
> http://books.pharo.org/booklet-uffi/pdf/2020-02-12-uFFI-V1.0.1
>
> I never used FFI before UFFI, but I find UFFI very friendly to use.
>
> I believe Ronie's Lowcode was designed to be another backend for UFFI, but
> I don't know the status of state.
>
> cheers -ben
>
More information about the Squeak-dev
mailing list
|