Account Options

  1. Sign in
Google Groups Home
« Groups Home
What is Corba used for?
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  Messages 1 - 25 of 45 - Collapse all  -  Translate all to Translated (View all originals)   Newer >
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Arafangion  
View profile  
 More options May 19 2005, 10:22 am
Newsgroups: comp.object.corba
From: Arafangion <Arafang...@invalid.email.address.com>
Date: Fri, 20 May 2005 00:22:01 +1000
Local: Thurs, May 19 2005 10:22 am
Subject: What is Corba used for?
Hello, I have reciently discovered this whole COM/DCOM/COM+/CORBA/UNO
and the like, and am very confused.

I feel like I'm jumping from an imperative coding style, to functional,
or from C to C++, in that I wonder why we use this.

I have searched for ages on www.omg.org, but I could not find anything
like a Design Rationale for the effort.

Why do we do all this work with stubs, why has so much work been done
with implementing the various CORBA implementations?
Why is the (Correct me if I'm wrong), network archietecture not routable?

Why don't we just use shared libs or dll's to share functions?

Finally, I might add that while you may be able to answer most of these
questions now, what I am asking for is why was this developed in the
_first_place_? (Surely there was some document specifying a need, and a
solution, ie, the Design Rationale).

I have poked around the omg.org website, but it seems to have a heck
alot of technical implementation issues, and I can't find the wood for
the trees.

        Thankyou.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options May 19 2005, 2:14 pm
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 19 May 2005 11:14:55 -0700
Local: Thurs, May 19 2005 2:14 pm
Subject: Re: What is Corba used for?
CORBA, or some other distributed OO middlewares in general, are
designed to fill up the semantic gap between high level distributed OO
architecture design and low level transport. Here, distributed OO
design means, your architecture design partitioned an application into
business objects, located at different locations. As a good practice,
architecture designs are usually business oriented, and avoid specific
physical location, communication, platform, programming language,
details. In this case, either you implement your own middle abstract
layer to fill up this high level abstraction to low level transport,
or, you use a third party middleware, like CORBA.

If your application itself is already system or transport oriented,
such as your purpose is simply sending an email or sending some data
through a socket, you certainly don't need such a middle abstraction
layer, or any CORBA like middleware at all.

See other inline comments.

Ke

This is irrelevant. CORBA is not for network routing.

> Why don't we just use shared libs or dll's to share functions?

This is irrelevant either. CORBA is not for sharing functions.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Arafangion  
View profile  
 More options May 19 2005, 10:46 pm
Newsgroups: comp.object.corba
From: Arafangion <Arafang...@invalid.email.address.com>
Date: Fri, 20 May 2005 12:46:12 +1000
Local: Thurs, May 19 2005 10:46 pm
Subject: Re: What is Corba used for?

Thankyou, I think that makes sense now.

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Gangadhar NPK  
View profile  
 More options May 27 2005, 4:33 pm
Newsgroups: comp.object.corba
From: "Gangadhar NPK" <npk.gangad...@gmail.com>
Date: 27 May 2005 13:33:55 -0700
Local: Fri, May 27 2005 4:33 pm
Subject: Re: What is Corba used for?
But, even though business logic design doesn't talk about the physical
location of the objects, transport etc, isn't it the case that binding
oneself to a particular implmentor (visi / omniorb etc), does pull that
implementation's specifics into the application ? Doesn't that make it
a tard difficult to move between various ORBs ? Ke what do you think
about that ?

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Douglas C. Schmidt  
View profile  
 More options May 27 2005, 5:08 pm
Newsgroups: comp.object.corba
From: schm...@ace.cs.wustl.edu (Douglas C. Schmidt)
Date: 27 May 2005 16:08:13 -0500
Local: Fri, May 27 2005 5:08 pm
Subject: Re: What is Corba used for?
Hi,

>> But, even though business logic design doesn't talk about the
>> physical location of the objects, transport etc, isn't it the case
>> that binding oneself to a particular implmentor (visi / omniorb
>> etc), does pull that implementation's specifics into the
>> application ? Doesn't that make it a tard difficult to move between
>> various ORBs ?

Naturally, it depends on

. Which ORBs you use, e.g., some ORBs are more compliant with the spec
  than others.  In particular, if you use the ORB bunded with the
  Sun JDK then you're simply SOL since that ORB is very
  non-compliant.  Fortunately, the mainstream ORBs are much more
  compliant.

. How you approach ORB portability, e.g., what steps you take to avoid
  portability issues.  In particular, if you check out

  http://corbaconf.kiev.ua/

  you'll see a toolkit that simplifies development of ORB-independent
  software for most mainstream ORBs.

Take care,

        Doug
--
Dr. Douglas C. Schmidt                       Professor and Associate Chair
Electrical Engineering and Computer Science  TEL: (615) 343-8197
Institute for Software Integrated Systems    WEB: www.dre.vanderbilt.edu/~schmidt
Vanderbilt University, Nashville TN, 37203   NET: d.schm...@vanderbilt.edu


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options May 27 2005, 9:11 pm
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 27 May 2005 18:11:54 -0700
Local: Fri, May 27 2005 9:11 pm
Subject: Re: What is Corba used for?

Gangadhar NPK wrote:
> But, even though business logic design doesn't talk about the physical
> location of the objects, transport etc, isn't it the case that binding
> oneself to a particular implmentor (visi / omniorb etc), does pull that
> implementation's specifics into the application ? Doesn't that make it
> a tard difficult to move between various ORBs ? Ke what do you think
> about that ?

Middleware providing low level system "transparency", and applications'
"portability" acrossing different middleware implementations are two
orthogonal concepts.

Different ORBs are implemented differently, and likely come with
various non-standard, vendor specific value added, portable or even
non-portable, features. However, almost all of them are provided
"transparently". For instance, many ORB implementations use OMG
standardized IIOP (namely, GIOP over TCP) as well as vendor specific
alternatives (such as GIOP over shared memory or solaris door) for
distributed object invocations. But this transport detail, namely
whether vendor specific, system level alternatives are used and how, is
transparent to business level applications.

Moving applications across foreign ORBs is an "portability" issue. As
said, it is orthogonal to the "transparency" concept discussed above.
Differences on "how" ORBs was implemented do not prohibit applications
to moving among them. What prohibit this kind move are differences
(usually mean syntactic and semantic differences at application level)
on "what" these ORB implemented. If your application used an
application level feature only supported by one ORB but not another, it
would have difficult to be ported from the first ORB to the second.

Regards,
Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
comp.object  
View profile  
 More options May 28 2005, 1:33 am
Newsgroups: comp.object.corba
From: "comp.object" <paperless...@gmail.com>
Date: 27 May 2005 22:33:03 -0700
Local: Sat, May 28 2005 1:33 am
Subject: Re: What is Corba used for?
I think from "CORBA provides platform independence", this line implicit
means that it must be providing system independence as well, that means
abstraction over os specific features/calls as well.

And I think TAO build over ACE layer is an good effort and to an extent
provides that.

Otherwise as well, it shuld not take much to at least standardize names
of headers and libraries of ORB that are required to build a CORBA
application. That way at least applications will be automatically ORB
independent, and this will cost nothing to ORB vendors other than a
name change to their corba related headers and library files.

Wonder why this has not still been standardized.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options May 28 2005, 3:35 am
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 28 May 2005 00:35:58 -0700
Local: Sat, May 28 2005 3:35 am
Subject: Re: What is Corba used for?

comp.object wrote:
> I think from "CORBA provides platform independence", this line implicit
> means that it must be providing system independence as well, that means
> abstraction over os specific features/calls as well.

Platform/system call level independence is usually referred to as
"system level portability", namely porting applications across
different OSs. This portability is different from previously mentioned
"CORBA application level portability", moving CORBA applications
acrossing forigen ORBs.

System level portability is not the task of CORBA, but a mission of
system level API standards or packages, such as POSIX (including
socket/winsock API, posix thread, etc.), or some portable
socket/network/thread classes/packages (there are too many such
libraries nowadays). Comparing to these portable system level APIs,
CORBA provides higher level abstraction. In these abstractions, objects
are system level entities, such as sockets (abstraction of network
endpoint) or socket classes, files (abstraction of device), shared
memory id (abstraction of shared memory sections), etc.. If you need
write system/network level applications, you should use a portable
system/network level library, but not CORBA.

Instead of providing a portable unification of system/network logic and
objects, CORBA hides these low level logic/objects/location on
performing distributed business level object invocations. OS level
details are transparent to business level applications, not mention
portability. CORBA Objects at this level are user defined, business
oriented objects.

> And I think TAO build over ACE layer is an good effort and to an extent
> provides that.

I don't know too much about TAO and ACE, therefore, can't comment. But
AFAIK, almost all ORBs are built on an OS level portable layer, chosen
and usually implemented by vendor themselves. Vendors may or may not
expose/provide this layer along with their ORBs.

As said, CORBA is to HIDE OS level logic, therefore, application
PORTABILITY at this level is not a task of CORBA. Certainly, your
business level object implmentation (servant implementation) may use
system level logic, database logic, etc., but that is out side the
scope of CORBA.

> Otherwise as well, it shuld not take much to at least standardize names
> of headers and libraries of ORB that are required to build a CORBA
> application. That way at least applications will be automatically ORB
> independent, and this will cost nothing to ORB vendors other than a
> name change to their corba related headers and library files.
> Wonder why this has not still been standardized.

Now, you come back to CORBA application portability acrossing foreign
ORBs. This is different from system level portability you mentioned
above. OMG has port many effort on this, including standardize client
and server side language mappings, POA and PI. Not standardizing header
file names (in C++ mapping), I guess, is merely to give flexability to
different ORBs, as well as to favor different application preferances.
As far as I know, most ORBs allow application developers to specify the
generated header file name prefix and extension, even the full name.

Regards,
Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
comp.object  
View profile  
 More options May 28 2005, 4:58 am
Newsgroups: comp.object.corba
From: "comp.object" <paperless...@gmail.com>
Date: 28 May 2005 01:58:07 -0700
Local: Sat, May 28 2005 4:58 am
Subject: Re: What is Corba used for?
I agree that system portability is not an issue addressed by CORBA.
But it may address that as well? right..?After all, if we are looking
for truly distributed software systems, we should have mechanism to
develop such system as welll uniformly?

So my version is it should not take much for OMG to extend its
specification to cover abstraction over underlying os as well, as it
affects distribution, deployment etc.

My view is mapping may not be standardaized suppose. but the names of
stubs/skeleton files can be standardized so that we dont have to change
the name everytime we change ORB at least? And anyway it doesnt affects
any other behaviour right? Just a name change.

I could not get how it provide vendors more flexibility by not
standardizing the header file name? what flexibility u r referring to?

Its true most of the ORB provides mechanism to specify the header file
name, but that is an unnecessary step.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Douglas C. Schmidt  
View profile  
 More options May 28 2005, 10:57 am
Newsgroups: comp.object.corba
From: schm...@ace.cs.wustl.edu (Douglas C. Schmidt)
Date: 28 May 2005 09:57:10 -0500
Local: Sat, May 28 2005 10:57 am
Subject: Re: What is Corba used for?
Hi,

>> I agree that system portability is not an issue addressed by CORBA.
>> But it may address that as well? right..?After all, if we are looking
>> for truly distributed software systems, we should have mechanism to
>> develop such system as welll uniformly?

>> So my version is it should not take much for OMG to extend its
>> specification to cover abstraction over underlying os as well, as it
>> affects distribution, deployment etc.

There have been various efforts in the OMG to standardize this layer
of abstraction.  OCI recently presented a proposal for using portions
of ACE to accomplish this.  It's not very technically hard to do this
- the trick is to get the other ORB vendors to agree.  Until they do,
of course, you can simply use ACE as a portability layer within your
client and servant implementations (it should work with any C++ ORB)
and get the same effect.

>> My view is mapping may not be standardaized suppose. but the names of
>> stubs/skeleton files can be standardized so that we dont have to change
>> the name everytime we change ORB at least? And anyway it doesnt affects
>> any other behaviour right? Just a name change.

I agree that it would be a good idea to standard this sort of stuff.
While we're waiting for that to happen, you can already accomplish
your objectives by using the CORBA-conf tool at

http://corbaconf.kiev.ua

Take care,

        Doug

--
Dr. Douglas C. Schmidt                       Professor and Associate Chair
Electrical Engineering and Computer Science  TEL: (615) 343-8197
Institute for Software Integrated Systems    WEB: www.dre.vanderbilt.edu/~schmidt
Vanderbilt University, Nashville TN, 37203   NET: d.schm...@vanderbilt.edu


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Markus Elfring  
View profile  
 More options May 28 2005, 4:14 pm
Newsgroups: comp.object.corba
From: "Markus Elfring" <Markus.Elfr...@web.de>
Date: Sat, 28 May 2005 22:14:33 +0200
Local: Sat, May 28 2005 4:14 pm
Subject: Re: What is Corba used for?

> Why do we do all this work with stubs, why has so much work been done
> with implementing the various CORBA implementations?
> Why is the (Correct me if I'm wrong), network archietecture not routable?

> Why don't we just use shared libs or dll's to share functions?

> Finally, I might add that while you may be able to answer most of these
> questions now, what I am asking for is why was this developed in the
> _first_place_? (Surely there was some document specifying a need, and a
> solution, ie, the Design Rationale).

Can this article answer any of your questions?
http://en.wikipedia.org/wiki/CORBA

How do you think about the answers in this document?
http://www.omg.org/gettingstarted/corbafaq.htm

Regards,
Markus


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
comp.object  
View profile  
 More options May 29 2005, 12:48 am
Newsgroups: comp.object.corba
From: "comp.object" <paperless...@gmail.com>
Date: 28 May 2005 21:48:54 -0700
Local: Sun, May 29 2005 12:48 am
Subject: Re: What is Corba used for?
I think explanations there are little difficult to follow for a new
bie.

It was better explained here in a post earlier.

Anyway it was nice link.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
comp.object  
View profile  
 More options May 29 2005, 12:57 am
Newsgroups: comp.object.corba
From: "comp.object" <paperless...@gmail.com>
Date: 28 May 2005 21:57:55 -0700
Local: Sun, May 29 2005 12:57 am
Subject: Re: What is Corba used for?
hi Arafangion,

If u look for developing a c++/fortran/c/java etc application running
in a single host environment its fine.

But how about when u want to develop an application part of whoes logic
could be in a flying plane or satellite up in the sky and part at its
control center down on earth. Making it easy how about reservation
systems or banking systems whoes logic is partially distributed across
hosts of computer?

Here comes the problem. Either each systems should be uniformly
developed using same language / computer to enable interactions. Also u
need to take care of connection management, connection opening/closing,
 U need to put in lots of efforts to enable fault tolerance,
load-balancing etc. Then their are issues to be managed related to
location of each of these hosts etc.

the tech like CORBA, COM/DCOM/ etc. provides u a platform to develop
such an application with the relatively same ease as any standalone
systems.

These tech/softwares takes care of networking stuff, and provide an
abstraction that enables u to develop application in a completely
transparent manner.

A programmer doesnt requires to write any code for
connecting/disconnecting remote objects. He is required to address any
issue arising out of "what if various objects of the systems are
developed using diff languages on diff platforms".

In other words it provides complete interoperability among objects
written in any platform (read os and language).

And also because CORBA comes with host of standard services, so makes
code portable across any corba implementations (albeit with a trivial
efforts).

Let me know if u still dont follow.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options May 31 2005, 12:03 am
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 30 May 2005 21:03:51 -0700
Local: Tues, May 31 2005 12:03 am
Subject: Re: What is Corba used for?

comp.object wrote:
> I agree that system portability is not an issue addressed by CORBA.

Not exactly. It depends on what/where/how the system functions are
used. If used for delivering CORBA object invocations or to performing
CORBA services/features (such as calling functions of ORB, POA or PI),
they are transparent to CORBA applications, and inherently, the system
portability issue has been addressed already. If used to implement
client logic or servant logic, then, they are out of the scope of
CORBA, and their portability is not an issue of CORBA.

Unlike Java, .NET, etc,. CORBA itself is not "yet another uniform"
programming environment/platform, but a "middleware" infrastructure
to "mediate" business logics  distributed over heterogeneous
environments.

> But it may address that as well? right..? After all, if we are looking
> for truly distributed software systems, we should have mechanism to
> develop such system as welll uniformly?

> So my version is it should not take much for OMG to extend its
> specification to cover abstraction over underlying os as well, as it
> affects distribution, deployment etc.

Firstly, there had been many attempts to standardize portable OS
interfaces in history, seen in the efforts of UI (unix international),
POSIX, OSF and X/Open (the two are now OpenGroup), etc.. Attempts of
having similar thing crossing unix and windows are not rare either,
including POSIX API (or its C++ variant) on Windows, WIN32 API or MFC
for unix, and so on, not mention open source contribution from GNU and
others. OMG is only one middleware standard body (certainly, OMG also
has many service and domain specific standards and MDA). To standardize
portable OS interface, OMG has almost no influence and zero credit
comparing to OpenGroup, ISO, IEEE and even ANSI, etc.. Therefore, even
if people wanted to reinvent-the-wheel, OMG is not the right
organization to head this effort.

Secondly, it is easy to construct a portable OS layer which covers
selected system functions enough to implement a few specific ORBs and
applications. NEVERTHELESS, contrary to what you thought, it is
non-trivial at all to generalize this, by extending CORBA, to an
universal portable application programming platform. If it was as easy
and useful as you thought, why it hasn't been addressed for years,
and has to wait  the hero OMG, who was said to out smart OpenGroup,
ISO, IEEE, ANSI folks just because who happen to have a magic thing
called CORBA? Even if excluded database and message middleware
abstractions and so on, and only limited this portable layer to cover
OS system functions, it would still not be a trivial undertaking to
have most mainstream flavor unix, windows and various RTOS (not merely
socket and thread parts) covered by one Swiss army knife which could be
reasonably function complete (not merely a small common subset),
efficient (it is no than an impl. issue!!), scaleable (in sense of
dynamic and static), consistent, extendable, intuitive and clear-cut,
... and so on.  Some of the above requirements are even mutual
exclusive. For instance, function complete (even if not 100%),
simplicity, lightweight and efficient together may prohibit
portability.

Thirdly, extending CORBA specification (or some other OMG
specifications) to based on a language (C++) specific design would
immediately bring damages to the consistency of the CORBA architecture,
such as language neutral and consistent memory management rule defined
by IDL-to-C++ mapping. An alternative is using local object IDL to
define such abstraction. Nevertheless, even if it could be accepted
outside OMG community, it was likely to have performance penalty, as a
lesson we have learnt from portable interceptor. Again, pls consider,
if we could easily and consistently extend CORBA or another OMG
specifications to include what you suggested, why would it wasn't
there in the original OMA or CORBA architecture? We are out smart our
OMG initiators?

> My view is mapping may not be standardaized suppose. but the names of
> stubs/skeleton files can be standardized so that we dont have to change
> the name everytime we change ORB at least? And anyway it doesnt affects
> any other behaviour right? Just a name change.

> I could not get how it provide vendors more flexibility by not
> standardizing the header file name? what flexibility u r referring to?

> Its true most of the ORB provides mechanism to specify the header file
> name, but that is an unnecessary step.

As I said, it was my GUESS. I don't assume I am out smart those folks
defined the C++ mapping, and would like to GUESS their original
consideration of not specifying this. Pls think about non-trivial
cases. For instance, how would the specification avoid generated head
file names to conflict with existing system and library header files.
How would the specification ensure the generated header file name and
extension name are valid on all mainstream platforms (some platforms
have strict name length limitation). What would be the best practice to
partition generated content in header files (e.g. all in one jumbo
header file, or partitioned to multiple header files). If an IDL file
includes other IDL files, should one jumbo header file be generated, or
one (or multiple) header file(s) for each of the original and included
IDL files?

Regards,
Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
corba.object  
View profile  
 More options May 31 2005, 8:32 am
Newsgroups: comp.object.corba
From: "corba.object" <paperless...@gmail.com>
Date: 31 May 2005 05:32:42 -0700
Local: Tues, May 31 2005 8:32 am
Subject: Re: What is Corba used for?

> Not exactly. It depends on what/where/how the system functions are
> used. If used for delivering CORBA object invocations or to performing
> CORBA services/features (such as calling functions of ORB, POA or PI),
> they are transparent to CORBA applications, and inherently, the system
> portability issue has been addressed already.

Well, when I say a software system, CORBA is a small part of it, that
only enables transparent communication among its objects and access
domain services in a uniform manner.

 But it is not my complete system. Right? CORBA then becomes very small
part of my overall system. By that what I mean is that object
communication is not the end am looking for. Am looking for development
and deployment of those objects as well, over heterogeneous
environment.

 Here comes one of the most trivial and irritating problem CORBA
offers, name of stubs and skeletons files, is not portable.! No other
words than its ridiculous, then that vendors didnt suggest this
themselves?

Dr. Schmidt has correctly suggested to correct this issue.

> If used to implement
> client logic or servant logic, then, they are out of the scope of
> CORBA, and their portability is not an issue of CORBA.

I never said that it is within scope of CORBA currently. But if I go by
general definition of "middleware"

------start
A "middleware system" (a.k.a. computing infrastructure) constitutes a
set of services that aim at facilitating the development of distributed
applications in heterogeneous environments. The primary objectives of
middleware are to foster APPLICATION PORTABILITY and distributed
application component interoperability. At least conceptually, the
"middleware layer" comprises a layer below the application and above
the operating system and network substrate. Common middleware platforms
include CORBA, DCOM, Java RMI, MQSeries, and MSMQ et al.
----end

Repeat "application portability". Lets forget about all middle
wares other than CORBA (as they don't resolve so many complex issues
that corba resolves). So how does corba resolves "application
portability". When the vendors are stuck at "non portability" of
stubs and skeletons (use less from application programmers
perspective).

Let me put this way, how does vendors provide corba implementation for
different platforms?  I am sure they would have abstracted a layer
wherein they would be handling all platform specific issues. At least
ACE (TAO) has open implementation. And this is better design as well.

So what am suggesting is make this layer available to application
programmer as well, as a standard.  So that CORBA becomes a true
middleware by providing complete portability.

> Unlike Java, .NET, etc,. CORBA itself is not "yet another uniform"
> programming environment/platform, but a "middleware" infrastructure
> to "mediate" business logics  distributed over heterogeneous
> environments.

J2EE / .NET too provide middleware infrastructure. And to a large
extend their success can be attributed to uniform programming
environment and supporting tools that are easy to develop, at least
compared to corba tools!

CORBA can be made to address this aspect as well.

> Firstly, there had been many attempts to standardize portable OS
> interfaces in history, seen in the efforts of UI (unix international),
> POSIX, OSF and X/Open (the two are now OpenGroup), etc.. Attempts of
> having similar thing crossing unix and windows are not rare either,
> including POSIX API (or its C++ variant) on Windows, WIN32 API or MFC
> for unix, and so on, not mention open source contribution from GNU and
> others. OMG is only one middleware standard body (certainly, OMG also
> has many service and domain specific standards and MDA). To standardize
> portable OS interface, OMG has almost no influence and zero credit
> comparing to OpenGroup, ISO, IEEE and even ANSI, etc.. Therefore, even
> if people wanted to reinvent-the-wheel, OMG is not the right
> organization to head this effort.

I never meant to let OMG standardize os layer. After all OMG is not
trying to address that space at all. It is putting all the efforts to
standardize middleware, so that completely interoperable and portable
systems may be developed.

Mind you portable! Again. And this can be achieved as demonstrated by
at least one orb vendor.

Am not suggesting to make uniform os layer. But provide to application
programmer uniform layer.

> Thirdly, extending CORBA specification (or some other OMG
> specifications) to based on a language (C++) specific design would
> immediately bring damages to the consistency of the CORBA architecture,
> such as language neutral and consistent memory management rule defined
> by IDL-to-C++ mapping.

Why How?? Even now we do have language specific mapping specification.

> An alternative is using local object IDL to
> define such abstraction. Nevertheless, even if it could be accepted
> outside OMG community, it was likely to have performance penalty, as a
> lesson we have learnt from portable interceptor.

Things can always be designed in a better way. I mean vendors should
use that knowledge and contribute as per their exp for the development
of such a standard than allowing again to develop non portable
application, and incur cost in when needed for migration, re-deployment
etc.

> Again, pls consider,
> if we could easily and consistently extend CORBA or another OMG
> specifications to include what you suggested, why would it wasn't
> there in the original OMA or CORBA architecture? We are out smart our
> OMG initiators?

Ah not like that. Everything has a start, and we know a thing finally
shapes up in iteration. Not waterfall. Right?

> As I said, it was my GUESS. I don't assume I am out smart those folks
> defined the C++ mapping, and would like to GUESS their original
> consideration of not specifying this. Pls think about non-trivial
> cases. For instance, how would the specification avoid generated head
> file names to conflict with existing system and library header files.
> How would the specification ensure the generated header file name and
> extension name are valid on all mainstream platforms (some platforms
> have strict name length limitation).

How does it currently addresses using c++ key words in idl?

Point is we need to first do correct things and than address things
that are now behaving wrong because of this correction. Provide some
solution for that.

> What would be the best practice to
> partition generated content in header files (e.g. all in one jumbo
> header file, or partitioned to multiple header files). If an IDL file
> includes other IDL files, should one jumbo header file be generated, or
> one (or multiple) header file(s) for each of the original and included
> IDL files?

How much does that affects the user?

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options May 31 2005, 11:48 am
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 31 May 2005 08:48:31 -0700
Local: Tues, May 31 2005 11:48 am
Subject: Re: What is Corba used for?

corba.object wrote:
> > Not exactly. It depends on what/where/how the system functions are
> > used. If used for delivering CORBA object invocations or to performing
> > CORBA services/features (such as calling functions of ORB, POA or PI),
> > they are transparent to CORBA applications, and inherently, the system
> > portability issue has been addressed already.

You have brought two issues in this thread:

1. Generated header file names unification crossing foreign orbs. I
don't call this "portability" to avoid confusion with next issue. For
this unification, I said, I was just "guessing" why folks defined C++
mapping didn't put this seemingly trivial thing in the specification.

2. Extending CORBA specification to support generic application code
portability. As you are just iterating your original arguments, I also
will iterate mine briefly (for detail, see previous post):

* OMG is not a right organization to head this effort. It should go to
Opengroup, ISO, IEEE, etc..

* It is easy to construct an OS portable layer sufficient for one ORB
or few applications. But, it is non-trivial at all to generize this.

* It damages CORBA.

Regards,
Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Douglas C. Schmidt  
View profile  
 More options Jun 1 2005, 11:02 am
Newsgroups: comp.object.corba
From: schm...@ace.cs.wustl.edu (Douglas C. Schmidt)
Date: 1 Jun 2005 10:02:00 -0500
Subject: Re: What is Corba used for?
Hi Ke,

>> You have brought two issues in this thread:

>> 1. Generated header file names unification crossing foreign orbs. I
>> don't call this "portability" to avoid confusion with next issue. For
>> this unification, I said, I was just "guessing" why folks defined C++
>> mapping didn't put this seemingly trivial thing in the specification.

Even POSIX standardizes header files.  This should be done for CORBA,
as well.  If it's so trivial it should be a no-brainer to standardized.

>> * OMG is not a right organization to head this effort. It should go to
>> Opengroup, ISO, IEEE, etc..

Those organizations haven't stepped up to the plate to do this for
anything except C.  OMG is as good as a place as any.

>> * It is easy to construct an OS portable layer sufficient for one
>> ORB or few applications. But, it is non-trivial at all to generize
>> this.

It's non-trivial, but it's doable.

>> * It damages CORBA.

Huh?  You need to explain this better - it makes no sense at face
value, and is one of the reasons why CORBA is losing out to other
middleware technologies.

Take care,

        Doug
--
Dr. Douglas C. Schmidt                       Professor and Associate Chair
Electrical Engineering and Computer Science  TEL: (615) 343-8197
Institute for Software Integrated Systems    WEB: www.dre.vanderbilt.edu/~schmidt
Vanderbilt University, Nashville TN, 37203   NET: d.schm...@vanderbilt.edu


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options Jun 1 2005, 12:19 pm
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 1 Jun 2005 09:19:10 -0700
Local: Wed, Jun 1 2005 12:19 pm
Subject: Re: What is Corba used for?

Douglas C. Schmidt wrote:
> Hi Ke,

> >> You have brought two issues in this thread:

> >> 1. Generated header file names unification crossing foreign orbs. I
> >> don't call this "portability" to avoid confusion with next issue. For
> >> this unification, I said, I was just "guessing" why folks defined C++
> >> mapping didn't put this seemingly trivial thing in the specification.

> Even POSIX standardizes header files.  This should be done for CORBA,
> as well.  If it's so trivial it should be a no-brainer to standardized.

Again, the 4th times: I was "guessing"!! Also, pls read considerations
I put in previous post. Besides, I don't recall POSIX standard needs to
deal with header files generated from an user specified interface file.
Pls enlight us!

> >> * OMG is not a right organization to head this effort. It should go to
> >> Opengroup, ISO, IEEE, etc..

> Those organizations haven't stepped up to the plate to do this for
> anything except C.  OMG is as good as a place as any.

If IETF, TMF, and especially W3C also doing the samething and saying
"we are as good as a place as any", do you agree?

> >> * It is easy to construct an OS portable layer sufficient for one
> >> ORB or few applications. But, it is non-trivial at all to generize
> >> this.

> It's non-trivial, but it's doable.

Now, you start to agree "it is non-trivial"!? It is definitly doable,
and has been repeatly independently done for many years, many times, by
many people, in many commercial products and student projects. But, to
"standardize" this be able to meet reasonably generic application needs
is more than to implement it for few specific applications and few
specific platforms.

> >> * It damages CORBA.

> Huh?  You need to explain this better - it makes no sense at face
> value, and is one of the reasons why CORBA is losing out to other
> middleware technologies.

See previous post. Also, I don't see other comparable "middleware"
technologies "standardized" this. Which one? J2EE and .NET do
standardize their system interfaces. However, they are both (claimed to
be) middlewares, as well as programming environment/platforms. If you
are really ambitious to extend CORBA beyond middleware scope to become
a programming environment/platform as well, you should:

* Make it clear in OMG, especially to most members and AB. This is not
a small move. and it should be done top down, starting from an overall
architecture vision, and the foundition hierarchy, rather than bottom
up, starting from a specific system interfaces without knowing whether
and where it would fit in within the final architecture.

* At least define your system interfaces using IDL, instead of language
specific;

Good luck!
Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options Jun 1 2005, 12:44 pm
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 1 Jun 2005 09:44:40 -0700
Local: Wed, Jun 1 2005 12:44 pm
Subject: Re: What is Corba used for?

Ke Jin wrote:
> Douglas C. Schmidt wrote:
> > Hi Ke,

> > >> * OMG is not a right organization to head this effort. It should go to
> > >> Opengroup, ISO, IEEE, etc..

> > Those organizations haven't stepped up to the plate to do this for
> > anything except C.  OMG is as good as a place as any.

> If IETF, TMF, and especially W3C also doing the samething and saying
> "we are as good as a place as any", do you agree?

To clarify myself, I can think of two possible intentions of you
standardize system interface:

1. For generic applications, not necessary relevant to CORBA. If this
is your intention, you certainly can specify you interface language
specifically (for instance, C++ only). However, OMG will not be the
right origination to head this effort. You should go Opengroup, ISO,
IEEE, or try ANSI, etc.

2. For extending CORBA from a middleware platform to a programming
environment/platform (similar to J2EE and .NET). If this is your
intention, YES, you should do it within OMG. However, you should not do
it in language specific way, and also should no do it from bottom up.

Regards,
Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Shashank  
View profile  
 More options Jun 2 2005, 3:16 am
Newsgroups: comp.object.corba
From: "Shashank" <shashank...@gmail.com>
Date: 2 Jun 2005 00:16:39 -0700
Local: Thurs, Jun 2 2005 3:16 am
Subject: Re: What is Corba used for?

>Again, the 4th times: I was "guessing"!! Also, pls read considerations
>I put in previous post. Besides, I don't recall POSIX standard needs to
>deal with header files generated from an user specified interface file.
>Pls enlight us!

What about generated from standard corba interfaces??

>If IETF, TMF, and especially W3C also doing the samething and saying
>"we are as good as a place as any", do you agree?

OMG today is writing standards for middleware. So whatever is required
for the longevity, portability etc. of such softwares, it must take
initiative to address that. It may do that in conjunction with other
existing bodies, but that is upto it.!!

>Now, you start to agree "it is non-trivial"!? It is definitly doable,
>and has been repeatly independently done for many years, many times, by
>many people, in many commercial products and student projects. But, to
>"standardize" this be able to meet reasonably generic application needs
>is more than to implement it for few specific applications and few
>specific platforms.

I think its not trivial. But definitely required for building up a
portable and more widely deployable applications. And more for
promoting/ popularity of CORBA among user community.

And so a concerted effort is required to achieve the same.

>See previous post. Also, I don't see other comparable "middleware"
>technologies "standardized" this. Which one? J2EE and .NET do
>standardize their system interfaces. However, they are both (claimed to
>be) middlewares, as well as programming environment/platforms. If you
>are really ambitious to extend CORBA beyond middleware scope to become
>a programming environment/platform as well, you should:

You are making me wonder !! Should not middleware provide uniform
programming model as well. CORBA does provides a programming model/
environment only thing is it is limited for its own usage and to an
extent it provides some powerful mechanism (Servant Managers for
programmers) still it must be enhanced to assist end users or
application programmer, specifically portability.

And this will definitely help to even tool vendors to develop better
corba based tools.

>Make it clear in OMG, especially to most members and AB. This is not
>a small move. and it should be done top down, starting from an overall
>architecture vision, and the foundition hierarchy, rather than bottom
>up, starting from a specific system interfaces without knowing whether
>and where it would fit in within the final architecture.

Here is the list of platforms supported by Visibroker CORBA
implementation

http://info.borland.com/techpubs/visibroker/platforms/vbj45.html

I assume most of the vendors would have already abstracted in their
implementation a uniform application interfaces over os for developing
their own corba implementation. As most of the vendors provide CORBA
implementation over no of platforms.

Why and how will it be different than providing (Definitely it will be
some effort for adjustment. But overall good for corba industry.

I mean what is stopping vendors themselves proposing this to OMG. As
TAO has done. And  in most probability others would have done it
already.

If not let ACE framework be made as standard.

>At least define your system interfaces using IDL, instead of language
>specific;

I think most of big application developers do it. We also do it. Still
it should be addressed by middleware.

regards

 -------------
Shashank D. Jha
iCMG
e-mail shash...@icmgworld.com


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Shashank D. Jha  
View profile  
 More options Jun 2 2005, 3:41 am
Newsgroups: comp.object.corba
From: "Shashank D. Jha" <shashank...@gmail.com>
Date: 2 Jun 2005 00:41:38 -0700
Local: Thurs, Jun 2 2005 3:41 am
Subject: Re: What is Corba used for?
:

>1. For generic applications, not necessary relevant to CORBA. If this
>is your intention, you certainly can specify you interface language
>specifically (for instance, C++ only).

Let me state in other words

I want to use CORBA for my applications. CORBA is an standard
specification. Why I need to write any code at least when I want to use
CORBA implementation i.e. ORB, specific to an ORB?

I know its trivial to make changes in spec as well as implementation to
ensure that the programmers code specific to CORBA (ORB) should not
change as per ORB. Also it doesn't takes much even for a programmer
to include appropriate headers as per ORB but still.

Secondly I want to write applications that are going to use CORBA
middleware. Doesn't it make sense for the middleware to provide
uniform system interface as well to enable complete portability of not
only programming/ development but distribution/ deployment as well.

If you feel that distribution and deployment of an application is a
trivial issue refer to "Deployment and configuration spec for CCM
components".

At least to an extent those issues can be made much simpler if the
developer need not write code specific to an os, and this layer is
abstracted within middleware itself.

>2. For extending CORBA from a middleware platform to a programming
>environment/platform (similar to J2EE and .NET). If this is your
>intention, YES, you should do it within OMG. However, you should not do
>it in language specific way, and also should no do it from bottom up.

I think OMG will certainly address these issues sooner or later. But
vendors should themselves take active interest and participate in
standardizing this layer.

regards

 -------------
Shashank D. Jha
iCMG
e-mail shash...@icmgworld.com


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Shashank D. Jha  
View profile  
 More options Jun 2 2005, 3:45 am
Newsgroups: comp.object.corba
From: "Shashank D. Jha" <shashank...@gmail.com>
Date: 2 Jun 2005 00:45:03 -0700
Local: Thurs, Jun 2 2005 3:45 am
Subject: Re: What is Corba used for?

>* It damages CORBA.

??

regards

 -------------
Shashank D. Jha
iCMG
e-mail shash...@icmgworld.com


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options Jun 2 2005, 12:23 pm
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 2 Jun 2005 09:23:00 -0700
Subject: Re: What is Corba used for?

Shashank D. Jha wrote:
> :

> >1. For generic applications, not necessary relevant to CORBA. If this
> >is your intention, you certainly can specify you interface language
> >specifically (for instance, C++ only).

[snip]

> Secondly I want to write applications that are going to use CORBA
> middleware. Doesn't it make sense for the middleware to provide
> uniform system interface as well to enable complete portability of not
> only programming/ development but distribution/ deployment as well.

> If you feel that distribution and deployment of an application is a
> trivial issue refer to "Deployment and configuration spec for CCM
> components".

> At least to an extent those issues can be made much simpler if the
> developer need not write code specific to an os, and this layer is
> abstracted within middleware itself.

There is nothing prevents you from having such a portable OS layer
today. There are tens of them on market. What you need is one, standard
based and widely accepted and supported.

Now, as said in a previous post, OMG does not have the history,
influence, credit on heading a generic specification which have no tie
to CORBA. Therefore, it is not right to have this kind of standard
process leading by OMG. It is highly questionable this standard would
be accepted beyond CORBA community. If other standard bodies, such as
W3C, IETF, TMF, etc. all came out their own C++ OS portable layer, the
result would be none of them be widely accepted and supported. We would
get multiple OS portable layer standards, and each of them was only
backed by very few vendors, and only used within their individual
isolated communities. This result would be no better than what we have
today. We would still have tens of different OS portable layer
implementations around, but all of them started to claim they were
compliant to their own individual standards. I would prefer to call
them "wolf-tickets"!

Therefore, if someone is trying to standardize a C++ OS portable layer,
which has no tie to CORBA, it should be submit to Opengroup, ISO, IEEE
or  try ANSI. OMG is not the right group to play this game.

Regards,
Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options Jun 2 2005, 12:51 pm
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 2 Jun 2005 09:51:00 -0700
Subject: Re: What is Corba used for?

Shashank wrote:
> >Again, the 4th times: I was "guessing"!! Also, pls read considerations
> >I put in previous post. Besides, I don't recall POSIX standard needs to
> >deal with header files generated from an user specified interface file.
> >Pls enlight us!

> What about generated from standard corba interfaces??

That is not what we discussed.

[snip]

> >See previous post. Also, I don't see other comparable "middleware"
> >technologies "standardized" this. Which one? J2EE and .NET do
> >standardize their system interfaces. However, they are both (claimed to
> >be) middlewares, as well as programming environment/platforms. If you
> >are really ambitious to extend CORBA beyond middleware scope to become
> >a programming environment/platform as well, you should:

> You are making me wonder !! Should not middleware provide uniform
> programming model as well.

Almost ever middlewares (and also many non-middlewares) provide such OS
portable wrapper. The question is NOT whether a middleware vendor
should provide this solution, but whether the "standard" of this OS
portable layer should be CORBA (other another) middleware specific, or
independent. I don't see why this OS portable layer should be and could
be CORBA specific. If it is CORBA independent, it should not be
specified by a OMG. It should go to a standard body who has been
engaging in the standardization of OS API or programming environment,
such as Opengroup, ISO, IEEE, and ANSI, etc.. (see another of my
followup)

If we really want this layer to be CORBA specific, and fit in the CORBA
architecture, it should be defined using IDL. However, there are more
problems I would expect.....  

[snip]

Regards,
Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ke Jin  
View profile  
 More options Jun 2 2005, 12:56 pm
Newsgroups: comp.object.corba
From: "Ke Jin" <ke...@borland.com>
Date: 2 Jun 2005 09:56:19 -0700
Local: Thurs, Jun 2 2005 12:56 pm
Subject: Re: What is Corba used for?

Shashank D. Jha wrote:
> >* It damages CORBA.

> ??

I have already answered multiple times in this thread. Read other posts
to find your answer. Thanks!

Ke


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Messages 1 - 25 of 45   Newer >
« Back to Discussions « Newer topic     Older topic »