From: Jason Kantz
Subject: COM objects
Date: 
Message-ID: <wk7lfm8vqh.fsf@kantz.com>
Hi, 

I'm looking into buying a function library as a COM object in order to
incorporate it into a LISP application.  Is this a fairly smooth
process?  I'm looking for comments on COM objects in general.  I've
never used one and am just beginning my research into it.

Thanks,

Jason Kantz

From: Marc Battyani
Subject: Re: COM objects
Date: 
Message-ID: <02AC9F1DF6A7BD29.70B0C3EE2F6396F9.79B79677D6522009@lp.airnews.net>
Jason Kantz <·····@kantz.com> wrote in message
···················@kantz.com...
>
> Hi,
>
> I'm looking into buying a function library as a COM object in order to
> incorporate it into a LISP application.  Is this a fairly smooth
> process?  I'm looking for comments on COM objects in general.  I've
> never used one and am just beginning my research into it.

Has this COM object a user interface (ActiveX control) or is it just an
applicative object?
What Lisp are you using ?

Marc Battyani
From: Jason Kantz
Subject: Re: COM objects
Date: 
Message-ID: <wkhfepqv7q.fsf@kantz.com>
"Marc Battyani" <·············@csi.com> writes:
> Has this COM object a user interface (ActiveX control) or is it just an
> applicative object?

It's a library of bin-packing functions, no user interface.

> What Lisp are you using ?

ACL 5.01
From: Marc Battyani
Subject: Re: COM objects
Date: 
Message-ID: <C3623DA94CC310A9.009937CC2268EF96.2DA2E9381C528448@lp.airnews.net>
Jason Kantz <·····@kantz.com> wrote in message
···················@kantz.com...
> "Marc Battyani" <·············@csi.com> writes:
> > Has this COM object a user interface (ActiveX control) or is it just an
> > applicative object?
>
> It's a library of bin-packing functions, no user interface.
>
> > What Lisp are you using ?
>
> ACL 5.01

You should have no problems.
There are COM samples in the ACL distribution. Just look at them and at the
docs.
Look at http://www.franz.com/support/docs/5.0.1/doc/cl/ole.htm

Marc Battyani
From: Philip Lijnzaad
Subject: Re: COM objects
Date: 
Message-ID: <u7putdzpt9.fsf@o2-3.ebi.ac.uk>
Jason> Hi, 

Jason> I'm looking into buying a function library as a COM object in order to
Jason> incorporate it into a LISP application.  Is this a fairly smooth
Jason> process?  I'm looking for comments on COM objects in general.  I've
Jason> never used one and am just beginning my research into it.

don't know much about COM, but Franz (and maybe Harlequin?) offer CORBA
connectivity for their lisp (which I believe uses IONA's orbix underneath),
and IONA offer CORBA - COM bridging. Might be worthwile  to look into it, all
the more since CORBA is vastly superior to COM, and would offer you access
into the wonderful world of Linux desktops KDE and Gnome which (to a greater
or lesser extent) use CORBA. Cheers,

                                                                      Philip
-- 
Not getting what you want is sometimes a wonderful stroke of luck.
-----------------------------------------------------------------------------
Philip Lijnzaad, ········@ebi.ac.uk | European Bioinformatics Institute,rm A2-24
+44 (0)1223 49 4639                 | Wellcome Trust Genome Campus, Hinxton
+44 (0)1223 49 4468 (fax)           | Cambridgeshire CB10 1SD,  GREAT BRITAIN
PGP fingerprint: E1 03 BF 80 94 61 B6 FC  50 3D 1F 64 40 75 FB 53
From: Raymond Wiker
Subject: Re: COM objects
Date: 
Message-ID: <87hfephett.fsf@foobar.orion.no>
Philip Lijnzaad <········@ebi.ac.uk> writes:

> Jason> Hi, 
> 
> Jason> I'm looking into buying a function library as a COM object in order to
> Jason> incorporate it into a LISP application.  Is this a fairly smooth
> Jason> process?  I'm looking for comments on COM objects in general.  I've
> Jason> never used one and am just beginning my research into it.
> 
> don't know much about COM, but Franz (and maybe Harlequin?) offer CORBA
> connectivity for their lisp (which I believe uses IONA's orbix underneath),

        I'm pretty sure (i.e, absolutely certain :) that there is no
trace of Orbix in the CORBA offerings for Common Lisp. 

> and IONA offer CORBA - COM bridging. 

        This is true; there are also other vendors of CORBA/COM
bridges. These should not (ideally) be dependent on any particular
vendor's ORB. 
        
-- 
Raymond Wiker, Orion Systems AS
+47 370 61150
From: Philip Lijnzaad
Subject: Re: COM objects
Date: 
Message-ID: <u7g0u9zikf.fsf@o2-3.ebi.ac.uk>
On Thu, 02 Mar 2000 10:00:55 GMT, 
"Raymond" == Raymond Wiker <·······@orion.no> writes:

>> don't know much about COM, but Franz (and maybe Harlequin?) offer CORBA
>> connectivity for their lisp (which I believe uses IONA's orbix underneath),

Raymond> I'm pretty sure (i.e, absolutely certain :) that there is no
Raymond> trace of Orbix in the CORBA offerings for Common Lisp. 

good! (i.e., so far i haven't been particularly impressed with iona's
products)

>> and IONA offer CORBA - COM bridging. 

Raymond> This is true; there are also other vendors of CORBA/COM
Raymond> bridges. These should not (ideally) be dependent on any particular
Raymond> vendor's ORB. 

absolutely!

                                                                      Philip

-- 
Not getting what you want is sometimes a wonderful stroke of luck.
-----------------------------------------------------------------------------
Philip Lijnzaad, ········@ebi.ac.uk | European Bioinformatics Institute,rm A2-24
+44 (0)1223 49 4639                 | Wellcome Trust Genome Campus, Hinxton
+44 (0)1223 49 4468 (fax)           | Cambridgeshire CB10 1SD,  GREAT BRITAIN
PGP fingerprint: E1 03 BF 80 94 61 B6 FC  50 3D 1F 64 40 75 FB 53
From: Reini Urban
Subject: Re: COM objects
Date: 
Message-ID: <38be7cc3.19065494@judy>
Jason Kantz wrote:
>I'm looking into buying a function library as a COM object in order to
>incorporate it into a LISP application.  Is this a fairly smooth
>process?  I'm looking for comments on COM objects in general.  I've
>never used one and am just beginning my research into it.

The best is ACL (really good). see their docs on OLE. (also online)
Harlequin LW can do it as well but is not as rich,
Corman has very limited support 
  (on its quasi-assembler level so far only)
xlisp-stat has some.
For the others there's nothing.

Scheme's have nothing so far. AutoLISP is very fine.
Various other functional languages packages produced for Win32
(smalltalk, dylan, ml, haskell) are quite okay with their COM support.

In theory you could do everything in any LISP with a dynaloader and a
good FFI, but it is not recommended.

COM in general: 
I'm currently writing a large overview about FFI's, which has also a COM
chapter. There are also some other pointers.
  http://xarch.tu-graz.ac.at/autocad/lisp/ffis.html

Error handling is only done via Exception handling which is something I
don't like that much, but since COM objects must be language and system
independent I accept it.
GC-awareness might be a problem if you write the COM part by yourself.

COM objects are not COM objects. They may support the fast custom
interfaces ("vtable", C++ style) or the slow but more generic Dispatch
Interface (late bound, passing every type as variant).
ActiveX requires only the second. (plus some other helper interfaces)
However, most libraries should provide both: That's called
"dualinterface".

The best book about COM is online: Craig Brockschmidt, "Inside OLE"
somewhere at the MS server, MSDN section:
  http://msdn.microsoft.com/library/books/inole/S10AA.HTM

There's also a good egroup about COM development but I forgot its name.

--
Reini Urban
http://xarch.tu-graz.ac.at/autocad/lisp/ffis.html
From: Marc Battyani
Subject: Re: COM objects
Date: 
Message-ID: <25F28911E5DD4F5A.FFF74BC85748A8B7.F214D67206AECE40@lp.airnews.net>
Reini Urban <······@x-ray.at> wrote in message
······················@judy...
> Jason Kantz wrote:
> >I'm looking into buying a function library as a COM object in order to
> >incorporate it into a LISP application.  Is this a fairly smooth
> >process?  I'm looking for comments on COM objects in general.  I've
> >never used one and am just beginning my research into it.
>
> The best is ACL (really good). see their docs on OLE. (also online)
> Harlequin LW can do it as well but is not as rich,

Where have you found COM functions in LispWorks ?

> I'm currently writing a large overview about FFI's, which has also a COM
> chapter. There are also some other pointers.
>   http://xarch.tu-graz.ac.at/autocad/lisp/ffis.html

Very useful.

Please note that the Harlequin URL are broken they are called Xanalys now
www.xanalys.com

Also the Python COM layer is dynamic:

import win32com.client.dynamic
iexplore = win32com.client.dynamic.Dispatch("InternetExplorer.Application")
iexplore.Navigate('www.xanalys.com')

Cute no?

Marc Battyani
From: Reini Urban
Subject: Re: COM objects
Date: 
Message-ID: <38bfd8e3.11846294@judy>
Marc Battyani wrote:
>Reini Urban <······@x-ray.at> wrote in message
>> The best is ACL (really good). see their docs on OLE. (also online)
>> Harlequin LW can do it as well but is not as rich,
>
>Where have you found COM functions in LispWorks ?
>
>> I'm currently writing a large overview about FFI's, which has also a COM
>> chapter. There are also some other pointers.
>>   http://xarch.tu-graz.ac.at/autocad/lisp/ffis.html
>
>Very useful.
>
>Please note that the Harlequin URL are broken they are called Xanalys now
>www.xanalys.com
>
>Also the Python COM layer is dynamic:
>
>import win32com.client.dynamic
>iexplore = win32com.client.dynamic.Dispatch("InternetExplorer.Application")
>iexplore.Navigate('www.xanalys.com')
>
>Cute no?

thanks for the corrections. 
My perl and python sections are not finished yet. python should be the
example of the massive wrapper approach, because they coded everything
in c++ extensions instead of using their higher and dynamic python
language. (which would make things MUCH easier and portable)

but of course it is dynamic and it is even one of the first and best COM
packages. They had the very first dynamic COM server to my knowledge,
back in 1996.

LWW COM: hmm... where did I see this? I was wrong.
maybe from the announcement for the next version?
I deleted my personal edition recently. 
LWW 4.1 indeed has only CORBA and DDE bindings, no COM.

Speaking of Harlequin: did anybody see that they brought up some new
nice webdocuments:
1998-99 Common Lisp - Myths and Legends
  http://www.xanalys.com/software_tools/products/myths&legends.html

1999-2000 Nick Levine's CL course at anglia with full-text lecture
notes: this is great!
  http://beta.csd.anglia.ac.uk/~nlevine/declarative/
--
Reini Urban
http://xarch.tu-graz.ac.at/autocad/lisp/ffis.html
From: Pierre R. Mai
Subject: Re: COM objects
Date: 
Message-ID: <8766v4ovuh.fsf@orion.dent.isdn.cs.tu-berlin.de>
······@x-ray.at (Reini Urban) writes:

> LWW COM: hmm... where did I see this? I was wrong.
> maybe from the announcement for the next version?
> I deleted my personal edition recently. 
> LWW 4.1 indeed has only CORBA and DDE bindings, no COM.

Maybe it was Harlequin Dylan (now Functional Developer at www.o-fun.com)
that had all the COM stuff?  I seem to remember reading an article on
COM/CORBA stuff in ACM Communications from the Harlequin folks, centered
mostly around Dylan, IIRC.

> Speaking of Harlequin: did anybody see that they brought up some new
> nice webdocuments:
> 1998-99 Common Lisp - Myths and Legends
>   http://www.xanalys.com/software_tools/products/myths&legends.html
> 
> 1999-2000 Nick Levine's CL course at anglia with full-text lecture
> notes: this is great!
>   http://beta.csd.anglia.ac.uk/~nlevine/declarative/

No, but thanks for the hint ... :)

Regs, Pierre.

-- 
Pierre Mai <····@acm.org>         PGP and GPG keys at your nearest Keyserver
  "One smaller motivation which, in part, stems from altruism is Microsoft-
   bashing." [Microsoft memo, see http://www.opensource.org/halloween1.html]