[Pharo-dev] FFI without the Pharo sources
estebanlm at gmail.com
Wed Jan 24 05:03:28 EST 2018
Marcus approach swill work, yes.
also, my idea was to reproduce what it was present for nativeboost before:
- a command to search for all ffi calls and add a property of the methods with an array of the argument names
- then modify method installation to look first for this property and take the argument names just if it is not found
only difference is that with NB we searched for a pragma, now we have to search for senders of a list of “ffi methods” #ffiCall: family and #nbCall: family
to implement this is trivial… is just I didn’t do it ;)
> On 24 Jan 2018, at 09:31, Marcus Denker <marcus.denker at inria.fr> wrote:
>> On 24 Jan 2018, at 08:58, Marcus Denker <marcus.denker at inria.fr> wrote:
>>> On 24 Jan 2018, at 01:54, <Vincent.Blondeau at lamresearch.com> <Vincent.Blondeau at lamresearch.com> wrote:
>>> I am working to be able to create some standalone apps in Pharo. And for this, I would like to remove of the .sources and .changes. But, by removing them, the args names are reset to arg1, arg2, arg3, ... and the FFI cannot be used anymore.
>>> Does someone (Esteban?) have a solution that I could implement to fix this issue?
>> You can embed the sources of just those methods:
>> -> iterate over all methods, select the FFI methods
>> -> call #embeddSourceInTrailer on these methods.
> We should add later something to the compiler for this, too. Imagine you have your system without source,
> decompiling happily. Then you want to edit a method:
> -> if it was decompiled, just compile and drop source
> -> if the source comes from the trailer, it should again compile a method with embedded source.
> I make a note for my TODO.
> With Pavel we managed to speed up source reading for methods that have embeddSourceInTrailer quite a lot
> (with ideas for even more), I will start to merge these patches, too.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Pharo-dev