caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] COMer - Programming Language for Component Development
@ 2003-05-10 21:28 Dexterity Technologies Limited
  2003-05-10 21:49 ` Paul Steckler
  0 siblings, 1 reply; 2+ messages in thread
From: Dexterity Technologies Limited @ 2003-05-10 21:28 UTC (permalink / raw)
  To: caml-list

[-- Attachment #1: Type: text/plain, Size: 2351 bytes --]

COMer - Programming Language for Component Development 



If you are a Windows Programmer, I would like to introduce something
interesting to you.
COMer is a native programming language for COM component development.
A COM component can be easily made in COMer as follow: [File:MyCom.cm]
#ifndef _MYCOM_CM
#define _MYCOM_CM

/*
 * A COM Class
 */
[ clsid = "{EF6CD47E-B844-4219-B582-6F9FE16D45F6}",
  progid = "Dexterity.MyCom1.1",
  helpstring = "Dexterity Com1 Class",
  export, unhandle ]
com CMyCom1
{
  /*
   * An Interface implemented in this class
   */
  [iid="{A123799B-1D8B-4efb-8D43-42AE582767C1}"]
  interface IMyInterface
  {
    method SetValue(int dVal)
    {
      m_dValue = dVal;
      done;
    }
    
    method GetDoubleValue(int &dVal)
    {
      dVal = m_dValue << 1;
      done;
    }  
  }
  
  /*
   * Instance variables
   */
  instvars
  {
    int m_dValue;
  }
}

#endif
The design of COMer is native to the concept of the Component Object Model
(COM) mechanism. COM classes are defined as in the way that COM specifies.
Interfaces are specified or defined within a COM class and the methods of
the interfaces are defined within the interfaces. It is simple.
A special characteristic of COMer is that the COMer compiler generates C++
source code files as its final outputs. Therefore, you can use C++ code
within the COMer classes, like Lex, Yacc or MIDL. To build the component,
what you need to do is to specify one more file only to indicate the module
of the component to build.
E.g: [File:MyCom.cmdef]
module: inprocsvr
source { MyCom.cm }
Then, by the following command line (cmc is the COMer compiler program):
> cmc MyCom.cmdef
COMer compiler will generate the following C++ files:
Main.cpp
MyCom.h
MyCom.cpp
MyCom.def
Makefile
Finally, you only need to build these C++ files by using the generated
makefile by C++ build tools. The component 'MyCom.dll' will then be made.
It's so simple!
Lets try it! You will like it!
Home Page: 
http://www.dexterity.com.hk/COMer/
Download Trial Version: 
http://www.dexterity.com.hk/COMer/Download/Download.asp
Dexterity Technologies Limited
http://www.dexterity.com.hk/


 



If you don't want to receive any more message from us, please send an
e-mail to comer@dexteritytech.com to unsubscribe. 
Please don't reply this e-mail. 
We apologize for any inconvenience caused.

[-- Attachment #2: Type: text/html, Size: 6768 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Caml-list] COMer - Programming Language for Component Development
  2003-05-10 21:28 [Caml-list] COMer - Programming Language for Component Development Dexterity Technologies Limited
@ 2003-05-10 21:49 ` Paul Steckler
  0 siblings, 0 replies; 2+ messages in thread
From: Paul Steckler @ 2003-05-10 21:49 UTC (permalink / raw)
  To: sender; +Cc: caml-list

Dexterity Technologies Limited wrote:
> If you are a Windows Programmer, I would like to introduce something
> interesting to you.
> COMer is a native programming language for COM component development.
> A COM component can be easily made in COMer as follow: [File:MyCom.cm]
> ...

Well, this message is certainly off-topic for this list.
But I'll bite.  Why would I want to use this language to 
create COM components instead of, say, Haskell or C++?
The code presented looks pretty much like C/C++.
Is there any tool support for the language?  An emacs 
mode?

-- Paul

-------------------
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


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-05-10 21:49 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-10 21:28 [Caml-list] COMer - Programming Language for Component Development Dexterity Technologies Limited
2003-05-10 21:49 ` Paul Steckler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).