<div dir="ltr"><div dir="ltr">On Tue, 19 May 2020 at 03:33, Levente Uzonyi <<a href="mailto:leves@caesar.elte.hu">leves@caesar.elte.hu</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">How does UFFI come here? AFAIK it's nothing but a different image-side <br>
code using the VM's FFI implementation along with the signature notion <br>
Igor used in NativeBoost (which is great btw because it's "as you would <br>
write it in C" and doesn't require language changes).<br></blockquote><div><br></div><div>Think of UFFI as a front-end for original-FFI.  IIUC although Igor's NativeBoost was a super fast alternative FFI, </div><div>it wasn't portable and wasn't compatible with Spur, so Pharo had to throw NativeBoost away.  </div><div>But they kept the nice signature 

style as a layer over FFI.</div><div><br></div><div>Ronie wrote a paper on the reasons for UFFI in Pharo...<br></div><div><a href="https://users.dcc.uchile.cl/~rsalgado/uffi-fourth-draft.pdf">https://users.dcc.uchile.cl/~rsalgado/uffi-fourth-draft.pdf</a>  </div><div><br></div><div>Here is a shorter presentation...</div><div><a href="http://www.esug.org/data/ESUG2016/05-Friday/1145-1230%20UnifiedFFI/ESUG2016%20-%20UFFI.pdf">http://www.esug.org/data/ESUG2016/05-Friday/1145-1230%20UnifiedFFI/ESUG2016%20-%20UFFI.pdf</a>  <br></div><div><br></div><div>Here are some usage references...<br><a href="https://www.slideshare.net/FASTPresentations/pharo-foreign-function-interface-ffi-by-example-by-esteban-lorenzano">https://www.slideshare.net/FASTPresentations/pharo-foreign-function-interface-ffi-by-example-by-esteban-lorenzano</a> </div><div><a href="http://books.pharo.org/booklet-uffi/pdf/2020-02-12-uFFI-V1.0.1">http://books.pharo.org/booklet-uffi/pdf/2020-02-12-uFFI-V1.0.1</a>  <br></div><div><br></div><div></div><div>I never used FFI before UFFI, but I find UFFI very friendly to use.<br></div><div><br></div><div>I believe Ronie's Lowcode was designed to be another backend for UFFI, but I don't know the status of state.</div><div></div><div><br></div><div>cheers -ben</div></div></div>