Oh, I've missed it. Thanks.
Now works twice faster.
But anyhow 30 times slower than mlton and haskell.

2016-08-29 13:35 GMT+03:00 David Matthews <david.matth...@prolingua.co.uk>:

> The buildCall functions are named that for a reason.  Essentially, each
> time you call
> buildCall3 ((getSymbol libc "foo"), (cUlong, cString, cUint), cUlong)
> you are compiling a new interface function.
> You should only ever call buildCall at the top level or in a structure.
> You can apply the resulting function as you would an ML function.
>
> There are still inefficiencies in the FFI but I wouldn't expect them to be
> enormous.
>
> David
>
>
> On 29/08/2016 09:51, Kostirya wrote:
>
>> I noticed that PolyML FFI (v5.6, Foreign structure) 100 times slower than
>> MLton and Haskell FFI, and 10 times than Perl. :-(
>> But why? After all, Haskell uses also libffi...
>>
>> P.S.
>>
>> I used
>> buildCall3 ((getSymbol libc "foo"), (cUlong, cString, cUint), cUlong) (0,
>> s, String.size s)
>> and
>> buildCall3 ((getSymbol libc "foo"), (cUlong, cPointer, cUint), cUlong) (0,
>> s, String.size s)
>> for test.
>>
>> Nick.
>>
>>
>>
>> _______________________________________________
>> polyml mailing list
>> polyml@inf.ed.ac.uk
>> http://lists.inf.ed.ac.uk/mailman/listinfo/polyml
>>
>>
_______________________________________________
polyml mailing list
polyml@inf.ed.ac.uk
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml

Reply via email to