English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    
Browse thread
[Caml-list] COM binding & CAMLIDL ?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Dmitry Bely <dbely@m...>
Subject: Re: [Caml-list] COM binding & CAMLIDL ?
Xavier Leroy <xavier.leroy@inria.fr> writes:

>> Reading a recent thread on the list, I noticed that ocaml could be
>> used with COM components on windows. As I currently intensively use
>> the Python COM bindings with MS' text processor whose name I won't
>> say, I wonder if I could use ocaml to the same end.
>> However, the release notes in the ocaml-win distribution states that
>> the cygwin version lacks COM support, and the native win32 version
>> partially implements the libraries, among which I find no COM nor IDL
>> link. Does anyone on the list have more information ?

BTW, OcamlIDL can be easily patched to support COM under Cygwin, are you
interested in that?

[...]

> CamlIDL implements (most of) the "pure COM" approach, but is geared
> towards statically-typed, statically-known interfaces (on ne se refait
> pas, as we say in French), and is not suited to Automation.
>
> Microsoft applications use mostly (exclusively?) Automation to allow
> scripting.  The reason is that Microsoft pushes Visual Basic as the
> scripting language for their applications, although non-Microsoft
> dynamically-typed scripting languages such as Perl and Python have
> also been quite successful at that,

I think most of them use dual (custom/dispatch) interfaces, so
*theoretically* one can extract their IDL interface definition by OleView
tool and then create the necessary stubs by CamlIDL. But *practically* it
is not an easy task: many MIDL features are still not supported by CamlIDL,
so I gave up when I tried this recently...

Hope to hear from you soon,
Dmitry


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners