Hi, Recently I’ve been talking with Eliot and we came to the conclusion that FFI and Alien repositories needs to be merged. Our rational is that 1) both are different ways of doing the same (often with same primitives) and much more important 2) Alien contains the the “de facto” callback mechanism supported by the VM. Keeping them separated and treated as two different things is negative and an important source of confusion for people willing to do FFI this days. So, here is my proposal (already talked with Eliot). 1) unify http://source.squeak.org/FFI and http://www.squeaksource.com/Alien into http://source.squeak.org/FFI That means copying into FFI repo all Alien history. 2) Rename Alien package into FFI-Alien (extract the Alien-Win32 category into its own package) 3) Create a ConfigurationOfFFI who takes properly FFI and FFI-Alien, etc. That means also deprecate Alien project in squeaksource (which usually is just put a WARNING text in home page :P) So… if nobody has a anything against this plan, I will do it next week :) cheers! Esteban |
Hi Esteban, Question: why not "just" introducing Alien's callbacks in FFI and rename it (e.g. FFI-callbacks)? That would be simpler, no? - no Alien's history in FFI repo - not the full Alien's code (callout mechanism, ...) in FFI codebase - ... Cheers, #Luc 2016-01-24 12:57 GMT+01:00 Esteban Lorenzano <[hidden email]>:
|
no is not :) Callbacks works with Aliens, who are different than regular ExternalAddresses, then you need Aliens i. In the future, that could be a project (to modify callback part of plugin)… but for now faster approach is what I’m describing :) cheers, Esteban
|
2016-01-24 13:56 GMT+01:00 Esteban Lorenzano <[hidden email]>:
I was suspecting that I forgot part of this complicated story ;-) Thanks for clarifying, Luc
|
how this affect UFFI ? On Sun, Jan 24, 2016 at 3:10 PM Luc Fabresse <[hidden email]> wrote:
|
In reply to this post by EstebanLM
Thanks Esteban, This was long overdue. 2 out of 3 FFI questions in the Pharo mailing list was because of all the different front ends / backends, all their combinations, and having different ones in different Pharo releases. Thanks!!!! On Sun, Jan 24, 2016 at 8:57 AM, Esteban Lorenzano <[hidden email]> wrote:
|
In reply to this post by kilon.alios
nothing, it is just a package-repository reorganisation in the backend of UFFI (so is transparent for it) :) Esteban
|
In reply to this post by EstebanLM
2016-01-24 12:57 GMT+01:00 Esteban Lorenzano <[hidden email]>:
Are there differences between pharos ffi-package (FFI-Kernel) and squeak? For example, the fallback implementation in ExternalFunction>>#tryInvokeWithArguments: referese to ContextPart, but it should be Context in (for Pharo only).
|
that’s not related with my question ;) it does not influences at all the renaming, but yep… I’m aware about that difference… I will add some compatibility stuff eventually, but I’m not pressed for now since #tryInvokeWithArguments: is not used at all (probably we should remove it anyway) cheers, Esteban
|
Free forum by Nabble | Edit this page |