[Info-vax] Reinventing VMS logical names (Fuchsia & Win NT)

Arne Vajhøj arne at vajhoej.dk
Thu Nov 16 16:22:37 EST 2023


On 11/16/2023 2:17 PM, Dan Cross wrote:
> In article <uj5n1i$2cg8e$1 at dont-email.me>,
> Arne Vajhøj  <arne at vajhoej.dk> wrote:
>> On 11/16/2023 1:18 PM, Dan Cross wrote:
>>> In article <uj5en8$2b2rf$1 at dont-email.me>,
>>> Arne Vajhøj  <arne at vajhoej.dk> wrote:
>>>> In article <3c044c90-ddb9-40ea-9e12-7c71279cd547n at googlegroups.com>,
>>>> Jake Hamby (Solid State Jake) <jake.hamby at gmail.com> wrote:
>>>>    On Thursday, November 9, 2023 at 12:40:38 PM UTC-8, Stephen Hoffman wrote:
>>>>>> DEC did a whole lot of work on DCE.
>>>>>>
>>>>>> OpenVMS itself never particularly incorporated DCE within, but DCE was
>>>>>> what DEC was both pushing internally and externally back at the time.
>>>>>>
>>>>>> Microsoft picked up DCE and ran with it, via the related COM/DCOM/OLE
>>>>>> stuff, and all of what was built upon that.
>>>>
>>>>> DCE was a nice idea but it really lost out in the court of
>>>>> public opinion for being expensive, promoted by "dinosaur"
>>>>> companies, and not being OO, in contrast to CORBA, which had
>>>>> its own problems, but was popular enough to get incorporated
>>>>> into the standard Java libraries until it was finally only
>>>>> recently dropped.
>>>>
>>>> Is DCE RPC less OO than CORBA?
>>>>
>>>> DCE RPC use IDL. And it seems perfectly OO to me. A client can
>>>> be written in C but so can clients for CORBA. Just cumbersome.
>>>
>>> Sun ONC RPC uses an IDL too.  Would you call that "Object
>>> Oriented"?  If so, what does that term even mean?
>>
>> I don't know Sun ONC RPC IDL.
> 
> It is easy enough to look it up.  Same with DCE RPC, for that
> matter.
> 
>> But if it is an abstract definition of an interface defining
>> the methods that an object implementation has to implement,
>> then it object oriented.
> 
> That is too abstract to have meaning.  For instance, how does
> one define "object" in this context?  If I have a data structure
> represented as, say, a global array of machine words, and I
> expose a bunch of methods to manipulate that array via an RPC
> interface, is that "object oriented"?  I don't think many
> serious programmers would argue that it is.  Certainly, I don't
> think anyone would seriously describe either ONC or DCE RPC as
> "object oriented" even if things like MSFT's RPC is derived from
> the latter, and either _can_ be used to implement OO-style
> distributed systems.  But that's sort of like asserting that a
> function call is OO because OO languages make function calls.

You may think that nobody would describe DCE RPC as object
oriented.

There are also people that believe that the earth is flat.

But that does not really mean anything.

DCE was created by OSF.

OSF published a little book "Introduction to OSF DCE".

The 1.2.2 version (latest version) on page labeled 8 (page 26
from start) says:

<quote>
Objects are used to model the behavior of all sorts of application 
entities. In
object-oriented terminology, an object is simply an instance of its 
class. Each object
contains member functions (methods) that are only specified in the class as
operations. In the distributed object model, a DCE interface is a public 
set of
operations, but the methods of implementation are separate and application
specific. (Data types are usually application specific but the interface 
can specify
them as well.) A DCE interface specifies what is known as an abstract 
base class
because the class has a public interface and a hidden implementation.

Object-oriented applications make it easy to hide data and 
implementation details
by using hierarchies of classes and other object-oriented features. Thus
object-oriented applications can help minimize the exposure of network 
details and
the special DCE mechanisms of distributed computing. In DCE, the IDL 
compiler
generates a class hierarchy for applications. This hierarchy contains an 
interface
class derived from a DCE RPC base class. The interface class becomes 
part of an
application in such a way that the network details, mechanisms of data 
transfer, and
object location are hidden (encapsulated) in the base class.
</quote>

Arne







More information about the Info-vax mailing list