home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / object / 4275 < prev    next >
Encoding:
Text File  |  1992-11-19  |  5.6 KB  |  213 lines

  1. Newsgroups: comp.object
  2. Path: sparky!uunet!zaphod.mps.ohio-state.edu!rpi!psinntp!psinntp!openwx!ledford
  3. From: ledford@networx.com (Don Ledford)
  4. Subject: IDL example and a lament
  5. Message-ID: <1992Nov18.223646.28030@networx.com>
  6. Summary: IDL example and a lament
  7. Keywords: IDL OMG CORBA
  8. Sender: usenet@networx.com (Usenet News Account)
  9. Organization: NetWorx
  10. X-Newsreader: TIN [version 1.1 PL6]
  11. Date: Wed, 18 Nov 1992 22:36:46 GMT
  12. Lines: 199
  13.  
  14. For those who requested I forward the results of my IDL example query.
  15.  
  16. First a lament:
  17.  
  18.     All in all, I'm somewhat discouraged by the state of distributed object
  19.     technologies and standards. The technical problems are not large, but
  20.     independent software vendors (ISVs) need a consistent framework for
  21.     distributed objects which insures interoperability between systems and is
  22.     low cost.
  23.  
  24.     Interoperability between systems is the end customer's upside. Early
  25.     providers of applications employing distributed object systems are at a
  26.     disadvantage since there are few other systems to interoperate with,
  27.     which translates into limited cost justification for the customer; and
  28.     there are higher implementation costs associated with putting the initial
  29.     distributed object framework in place.
  30.  
  31.     There are a number of technical advantages to distributed object
  32.     architectures which mitigate this situation somewhat. But it appears to
  33.     me we have a critical mass problem which is best solved by the bigger
  34.     industry players. Come on Sun, HP, IBM, ... (GNU?) get this stuff out
  35.     there. Don't burden willing ISVs with a cost structure which prevents
  36.     successful competition with traditional monolithic systems. This could be
  37.     a vehicle for enhancing the role of UNIX.
  38.  
  39.     I haven't given up, but our next 6 month development plan will stop short
  40.     of a full ORB architecture. Note, I've been talking to HyperDesk and
  41.     SuiteSoftware about their distributed object products, but I am concerned
  42.     about the costs and the lack of a solid standard.
  43.  
  44. For those interested in a continuing dialog on this subject I can be reached
  45. at ledford@networx.com
  46.  
  47.  
  48. ----------------------------------
  49. The OMG CORBA spec can be captured from:
  50.  
  51.     Richard Mark Soley, Ph.D., Vice President, Technical Director
  52.     Object Management Group
  53.     Framingham Corporate Center
  54.     492 Old Connecticut Path
  55.     Framingham, MA  01701
  56.     (508) 820-4300   fax:  (508) 820-4303   email:  soley@omg.org
  57.     omg_server@omg.org
  58.  
  59. I would try the omg_server@omg.org first with a mail request for the spec.
  60.  
  61. ----------------------------------------------------------------------------
  62. From vinoski@apollo.hp.com Thu Nov 12 08:11:05 1992
  63.  
  64. HP and SunSoft are jointly developing a distributed object management
  65. facility based on the OMG CORBA (most of the technology for the CORBA
  66. came from us in the first place).  We have found that the CORBA 1.1
  67. spec leaves a lot of necessary details unspecified, including an
  68. IDL-to-C++ language mapping.  We have developed such a mapping and
  69. filled in a whole lot of details about object adapters, object
  70. creation, language mappings, etc.  Our changes are being worked back
  71. into the OMG slowly but surely.
  72.  
  73. I have included a sample IDL file at the bottom of this message.  Hope
  74. it helps.
  75.  
  76. -steve
  77.  
  78. Steve Vinoski  (508)436-5904   vinoski@apollo.hp.com
  79. Distributed Object Computing Program
  80. Hewlett-Packard, Chelmsford, MA 01824       These are my opinions.
  81.  
  82. module Sample
  83. {
  84.  
  85.     interface BasicTypes
  86.     {
  87.     const short fifteen = 15;
  88.  
  89.     typedef float        FloatType;
  90.     typedef double        DoubleType;
  91.     typedef long        LongType;
  92.     typedef short        ShortType;
  93.     typedef unsigned long    ULongType;
  94.     typedef unsigned short    UShortType;
  95.     typedef char        CharType;
  96.     typedef boolean        BooleanType;
  97.     typedef octet        OctetType;
  98.  
  99.     void floatop(
  100.         inout FloatType f
  101.     );
  102.     void doubleop(
  103.         inout DoubleType d
  104.     );
  105.     void longop(
  106.         inout LongType l
  107.     );
  108.     void shortop(
  109.         inout ShortType s
  110.     );
  111.     void ulongop(
  112.         inout ULongType ul
  113.     );
  114.     void ushortop(
  115.         inout UShortType us
  116.     );
  117.     void charop(
  118.         inout CharType c
  119.     );
  120.     void booleanop(
  121.         inout BooleanType b
  122.     );
  123.     void octetop(
  124.         inout OctetType o
  125.     );
  126.     };
  127.  
  128.  
  129.     interface ConstructedTypes : BasicTypes
  130.     {
  131.         struct StructType {
  132.         LongType lm;
  133.     };
  134.  
  135.     enum EnumType { e1, e2, e3, e4 };
  136.  
  137.     union UnionType switch (EnumType) {
  138.         case e1:
  139.         case e2:
  140.             ShortType first_case;
  141.         case e3:
  142.             StructType second_case;
  143.         default:
  144.             EnumType default_case;
  145.     };
  146.  
  147.         void structop(
  148.         inout StructType s
  149.     );
  150.     void enumop(
  151.         inout EnumType e
  152.     );
  153.     void unionop(
  154.         inout UnionType u
  155.     );
  156.     };
  157.  
  158.     interface TemplateTypes : ConstructedTypes
  159.     {
  160.     typedef sequence<LongType, 15> BSequenceType;
  161.     typedef sequence<LongType> UBSequenceType;
  162.  
  163.     typedef string<15> BStringType;
  164.     typedef string UBStringType;
  165.  
  166.     void bsequenceop(
  167.         inout BSequenceType bs
  168.     );
  169.     void ubsequenceop(
  170.         inout UBSequenceType ubs
  171.     );
  172.     void bstringop(
  173.         inout BStringType bs
  174.     );
  175.     void ubstringop(
  176.         inout UBStringType ubs
  177.     );
  178.     };
  179.  
  180.  
  181.     interface Attributes : TemplateTypes
  182.     {
  183.     attribute FloatType        floatattr;
  184.     attribute DoubleType        doubleattr;
  185.     attribute LongType        longattr;
  186.     attribute ShortType        shortattr;
  187.     attribute ULongType        ulongattr;
  188.     attribute UShortType        ushortattr;
  189.     attribute CharType        charattr;
  190.     attribute BooleanType        booleanattr;
  191.     attribute OctetType        octetattr;
  192.     attribute StructType        structattr;
  193.     attribute EnumType        enumattr;
  194.     attribute UnionType        unionattr;
  195.     attribute BSequenceType        bsequenceattr;
  196.     attribute UBSequenceType    ubsequenceattr;
  197.     attribute BStringType        bstringattr;
  198.     attribute UBStringType        ubstringattr;
  199.     };
  200.  
  201.  
  202.     interface ObjrefType
  203.     {
  204.     void objrefop(
  205.         inout BasicTypes oparam
  206.         );
  207.     };
  208.  
  209. };
  210.  
  211.  
  212.  
  213.