Re: Plugins/Dynamic Libraries
From: David Botton (david_at_botton.com)
Date: 11/12/04
- Next message: David Botton: "Re: Thanks (was: Ada 95 Sourcecode)"
- Previous message: David C. Hoos, Sr.: "Re: Float to String"
- In reply to: Adrien Plisson: "Re: Plugins/Dynamic Libraries"
- Next in thread: Adrien Plisson: "Re: Plugins/Dynamic Libraries"
- Reply: Adrien Plisson: "Re: Plugins/Dynamic Libraries"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Thu, 11 Nov 2004 19:12:43 -0500
On 2004-11-11 05:34:16 -0500, Adrien Plisson
<aplisson-news@stochastique.net> said:
> well, let's relieve the pain:
> for dynamic libraries under Windows, the accepted method is _NOT_ COM !
> the equivalent of Windows COM under Linux may be CORBA, and the
> equivalent of Linux dlopen under Windows is LoadLibrary.
I would not say they are equivalent. COM is also used as a spec for
communication on a much smaller scale. As for being the accepted
method, it depends on what you are trying to achieve. Most of the time
COM is in fact preferable (encased in DLL, ie. an inproc server) since
it is an automatic plug-in to Windows, .NET, VB, etc. DLLs still serve
there place, but COM on Ada is easy to do and the results are far more
flexible.
I find that in most modern serious projects COM (on Windows and
starting recently for Mac OS X) is in fact being used over a plain dll
and in particular if you are looking to do plug-ins.
In fact, on Mac OS X plug-in are also COM in a shared lib just like on
Windows. COM is more of a spec for plug-ins that can interoperate than
a distributed object system like CORBA.
There is no reason not to use the COM "spec" in the same way on Linux
for plug-ins. Take a look at InsideCOM (Microsoft Press) for an
introduction to COM the spec (it doesn't serve as a good intro to COM
on Windows incidentally) The GNATCOM framework though would need a
little bit of work though to make it really viable though for use on
Linux, but is very reasonably doable.
I plan on a port of GNATCOM to OS X in the next year or so and that
would be usable on Linux as well. On OS X it buys you the ability to
plug-in to web browsers, etc. but on Linux you would still be able to
use it for the purpose you are looking for.
>
> if you plan on working on this subject, try to use equivalent
> mechanisms on each platform you target.
>
> please note that there are many bindings to those methods existing:
> PolyORB, AdaBroker or ORBIT-Ada are CORBA implementations, DLib for
> dlopen, LoadLibrary should be accessible through Win32Ada, and for
> COM... well, i don't know...
GNATCOM of course :-) as he pointed out. http://www.gnavi.org/gnatcom
David Botton
- Next message: David Botton: "Re: Thanks (was: Ada 95 Sourcecode)"
- Previous message: David C. Hoos, Sr.: "Re: Float to String"
- In reply to: Adrien Plisson: "Re: Plugins/Dynamic Libraries"
- Next in thread: Adrien Plisson: "Re: Plugins/Dynamic Libraries"
- Reply: Adrien Plisson: "Re: Plugins/Dynamic Libraries"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|