hi, 

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 ;)

Esteban



> On 24 Jan 2018, at 09:31, Marcus Denker <[email protected]> wrote:
> 
> 
> 
>> On 24 Jan 2018, at 08:58, Marcus Denker <[email protected]> wrote:
>> 
>> 
>> 
>>> On 24 Jan 2018, at 01:54, <[email protected]> 
>>> <[email protected]> wrote:
>>> 
>>> Hi,
>>> 
>>> 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?
>>> 
>> 
>> Hello,
>> 
>> 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.
> 
>       Marcus

Reply via email to