On Fri, May 6, 2011 at 8:06 PM, Schwab,Wilhelm K <bschwab@anest.ufl.edu> wrote:
No real agenda either way here, except to say that we almost have that in FFI. ��If you know enough to make the call, do you not know enough to write the FFI wrapper? ��Just asking. ��Having stirred the broth, I'll shut up and learn :)



My last attempts:
http://forum.world.st/Re-Z3950-on-OSX-module-yaz3-not-found-tp3161332p3161332.html
http://forum.world.st/Re-FFI-crashes-VM-on-Linux-was-Z3950-on-OSX-module-yaz3-not-found-td3163001.html

Any help appreciated.

Laurent.

��


________________________________________
From: pharo-project-bounces@lists.gforge.inria.fr [pharo-project-bounces@lists.gforge.inria.fr] On Behalf Of laurent laffont [laurent.laffont@gmail.com]
Sent: Friday, May 06, 2011 1:47 PM
To: Pharo-project@lists.gforge.inria.fr
Subject: Re: [Pharo-project] Popularity of Smalltalk in Software Industry

On Fri, May 6, 2011 at 7:25 PM, Igor Stasenko <siguctua@gmail.com<mailto:siguctua@gmail.com>> wrote:
On 6 May 2011 18:45, laurent laffont <laurent.laffont@gmail.com<mailto:laurent.laffont@gmail.com>> wrote:
> On Fri, May 6, 2011 at 4:01 PM, Igor Stasenko <siguctua@gmail.com<mailto:siguctua@gmail.com>> wrote:
>>
>> Is it works because someone already provided a bindings for libraries
>> you mention,
>> or you did it by yourself?
>
> Have just used ctypes:
>>>> import ctypes
>>>> import ctypes.util
>>>> ctypes.util.find_library("yaz")
> '/usr/local/lib/libyaz.dylib'
>>>> yaz = ctypes.cdll.LoadLibrary("libyaz.dylib")
>>>> con = yaz.ZOOM_connection_new("z3950.loc.gov<http://z3950.loc.gov>", 7090);

oh cool.. give me a 5 minutes to load external library, look up the
random symbol exported by it
and make a call to it with random number of arguments, and expect it
won't crash.

Works outta box! Cool.

Now serious. How about spending time writing a bindings for that library?
Where you have properly organized classes/interfaces, error handling
and other stuff.
No takers?

Seriously, if you want such kind of shitty interface, which allows you
to call arbitrary function with arbitrary arguments
without any argument type checking, i can write it for you.


Do it, please do it. Seriously. Thanks

Laurent.



> Laurent

--
Best regards,
Igor Stasenko AKA sig.