comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Securing type extensions
Date: Fri, 17 Sep 2010 11:39:23 +0200
Date: 2010-09-17T11:39:23+02:00	[thread overview]
Message-ID: <18zyxjr6frnae$.z29ue8w06mo1$.dlg@40tude.net> (raw)
In-Reply-To: 4c932abd$0$6987$9b4e6d93@newsspool4.arcor-online.net

On Fri, 17 Sep 2010 10:45:48 +0200, Georg Bauhaus wrote:

> On 9/16/10 11:37 PM, Dmitry A. Kazakov wrote:
>> On Thu, 16 Sep 2010 22:53:32 +0200, Georg Bauhaus wrote:
>>
>>> On 9/16/10 2:45 PM, Dmitry A. Kazakov wrote:
>>>
>>>>> Party X made a library, L, of O-O types, abstract or not.
>>>>> Party Y extends a type in L, say T
>>>>>
>>>>> I'm talking about how X and Y can trust each other before
>>>>> X licenses the library and before Y writes an extension.
>>>>
>>>> They need not.
>>>
>>> OK, each party to a legal contract may chose to not care
>>> about the consequences of joining untrusted partners in software.
>>
>> You missed the point,
> 
> I wonder if we are moving in the same plane at all. ;-)
> 
>> there is no such relation between specification
>> (class of L) and implementation (member of the class). There is one between
>> a client and the provider of an implementation.
> 
> -- Toulouse:
> package X.L.A is
> 
>    type T1 is tagged private;
>    -- description, ops
>    ...
> end X.L.A;
> 
> -- Hamburg:
> package X.L.B is
> 
>    type T2 is abstract tagged private;
>    -- description, ops
>    ...
> end X.L.B;
> 
> Company representatives from Toulouse and Munich sign a legal
> contract about terms and conditions for use of X.L.
> 
> -- Munich:
> with X.L.A;
> package Y is
> 
>     type T is new X.L.A.T1 with private;
>     -- overridings
>     ...
> end Y;
> 
> I am trying to understand what you are referring to using "class"

class = set of types

> and "spcification"

class specification = the interface of

> and "implementation"

class instance implementation = the implementation of a type, a member of
the class

> Is there a relation of (some) trust (state of a human being)
> between Munich's Y.T programmers/managers and Toulouse's X.L.A.T1
> programmers/managers?

When you derive from the interface of a class (technically you do from the
root type) you sign up to the contract the interface describes. The
contract relationship is not between you and the class designer because you
are among its designers as well. It is not between you and the designer of
the type you derive from. He has no responsibilities for you, which is an
important advantage for a long-term developing process. The contract is
between you and someone who uses the class in his code.

interface designer <-> state passing regulation rules for car safety
You <-> car manufacturer
client <-> car driver

>>> The purpose of signatures put under a software contract
>>> is to express something related to trust and mistrust.
>>> Typically, there is a sentence like "we cannot be held
>>> responsible for ... the usual stuff you have in software.
>>> But otherwise, ...".
>>
>> I see, when you sign up to a no-warranty software licensing agreement that
>> generates a huge amount of trust! Not to me, I know they swindled me again.
> 
> I see no reason to sign a contract absent any kind of
> obligation.

Sorry for that, but you have no choice.

>> Do *you* trust Microsoft?
> 
> The one thing that does not matter in discussing general rules
> should be one's own specific attitude.

Great, both of us do not trust them, but in our own interest they are
considered trustworthy. That sounds familiar... (:-))

> Visual Studio is *of* *course* changed in incompatible ways!

That "of course" directly follows from "trustworthiness", I bet? (:-))

> but they nevertheless buy because they trust programming with
> MS VS will still provide for a living.

No, they do because Microsoft maintains a monopoly.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2010-09-17  9:39 UTC|newest]

Thread overview: 107+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-12 10:18 Preventing type extensions Florian Weimer
2010-09-12 11:59 ` Ludovic Brenta
2010-09-12 12:53   ` Florian Weimer
2010-09-12 21:23     ` Maciej Sobczak
2010-09-13  5:32       ` Florian Weimer
2010-09-13  7:13         ` Dmitry A. Kazakov
2010-09-13  9:19           ` Georg Bauhaus
2010-09-13  9:42             ` Dmitry A. Kazakov
2010-09-13 10:23               ` Niklas Holsti
2010-09-13 12:55                 ` Cyrille
2010-09-13 13:55                   ` Dmitry A. Kazakov
2010-09-13 21:13                   ` J-P. Rosen
2010-09-21 13:57                     ` Cyrille
2010-09-21 14:19                       ` Dmitry A. Kazakov
2010-09-21 14:44                         ` Cyrille
2010-09-21 16:25                           ` Dmitry A. Kazakov
2010-09-21 17:11                             ` Georg Bauhaus
2010-09-21 18:11                               ` Dmitry A. Kazakov
2010-09-23 20:00                                 ` Simon Wright
2010-09-23 20:49                                   ` Dmitry A. Kazakov
2010-09-24  9:10                                     ` Georg Bauhaus
2010-09-24 10:24                                       ` Dmitry A. Kazakov
2010-09-24 13:30                                 ` Niklas Holsti
2010-09-24 16:27                                   ` Dmitry A. Kazakov
2010-09-24 17:47                                     ` Niklas Holsti
2010-09-24 19:42                                       ` Dmitry A. Kazakov
2010-09-21 14:32                       ` J-P. Rosen
2010-09-21 15:02                         ` Cyrille
2010-09-21 15:26                           ` J-P. Rosen
2010-09-21 16:18                             ` Cyrille
2010-09-22  8:01                               ` J-P. Rosen
2010-09-22 17:28                                 ` Cyrille
2010-09-22 19:30                                   ` Ludovic Brenta
2010-09-22 19:51                                     ` Florian Weimer
2010-09-22 20:14                                       ` Dmitry A. Kazakov
2010-09-22 20:25                                         ` Florian Weimer
2010-09-22 20:38                                           ` Dmitry A. Kazakov
2010-09-22 21:25                                             ` Vinzent Hoefler
2010-09-22 21:20                                           ` Georg Bauhaus
2010-09-22 20:16                                       ` Ludovic Brenta
2010-09-22 20:34                                         ` Florian Weimer
2010-09-22 22:45                                           ` Britt Snodgrass
2010-09-23  8:02                                           ` Ludovic Brenta
2010-09-23 16:51                                     ` Pascal Obry
2010-09-23 18:37                                       ` Florian Weimer
2010-09-23 18:55                                         ` Pascal Obry
2010-09-23 20:28                                       ` Ludovic Brenta
2010-09-24  9:20                                         ` Ludovic Brenta
2010-09-24 14:49                                           ` Simon Wright
2010-09-24 15:09                                             ` Ludovic Brenta
2010-09-24 16:21                                           ` Robert A Duff
2010-09-25  7:10                                         ` Pascal Obry
2010-09-25 12:03                                           ` Brian Drummond
2010-09-24  8:16                                   ` J-P. Rosen
2010-09-24  8:39                                     ` Cyrille
2010-09-24  9:27                                       ` Cyrille
2010-09-29 16:47                                         ` J-P. Rosen
2010-09-30 10:08                                           ` Cyrille
2010-10-05 17:02                                             ` J-P. Rosen
2010-10-08  7:50                                               ` Cyrille
2010-10-08 13:58                                               ` Cyrille
2010-10-08 20:12                                                 ` Dmitry A. Kazakov
2010-10-11  7:57                                                   ` Cyrille
2010-10-11  8:24                                                     ` Dmitry A. Kazakov
2010-10-12  5:23                                                   ` Shark8
2010-10-13  9:06                                                 ` J-P. Rosen
2010-10-13 17:37                                                   ` Cyrille
2010-10-13 18:50                                                     ` Dmitry A. Kazakov
2010-09-21 14:50                       ` (see below)
2010-09-21 17:37                         ` Cyrille
2010-09-21 19:07                           ` (see below)
2010-09-13 13:05                 ` Dmitry A. Kazakov
2010-09-13 20:21                   ` Niklas Holsti
2010-09-13 21:00                     ` Dmitry A. Kazakov
2010-09-13 21:10                 ` J-P. Rosen
2010-09-14 12:16                   ` Niklas Holsti
2010-09-14 16:46                     ` Dmitry A. Kazakov
2010-09-14 18:08                       ` Niklas Holsti
2010-09-14 18:32                         ` Niklas Holsti
2010-09-15  8:18                         ` Dmitry A. Kazakov
2010-09-14 17:04                     ` J-P. Rosen
2010-09-13 15:12               ` Securing type extensions (was: Preventing type extensions) Georg Bauhaus
2010-09-13 15:29                 ` Securing type extensions Dmitry A. Kazakov
2010-09-13 17:23                 ` Simon Wright
2010-09-13 20:22                   ` Georg Bauhaus
2010-09-13 20:41                     ` Dmitry A. Kazakov
2010-09-14 10:02                       ` Georg Bauhaus
2010-09-14 12:22                         ` Dmitry A. Kazakov
2010-09-14 21:18                           ` Georg Bauhaus
2010-09-15  8:15                             ` Dmitry A. Kazakov
2010-09-15 20:47                               ` Georg Bauhaus
2010-09-16  7:47                                 ` Dmitry A. Kazakov
2010-09-16 11:52                                   ` Georg Bauhaus
2010-09-16 12:45                                     ` Dmitry A. Kazakov
2010-09-16 20:53                                       ` Georg Bauhaus
2010-09-16 21:37                                         ` Dmitry A. Kazakov
2010-09-17  8:45                                           ` Georg Bauhaus
2010-09-17  9:39                                             ` Dmitry A. Kazakov [this message]
2010-10-05  5:59                     ` Randy Brukardt
2010-09-13 18:32           ` Preventing " Florian Weimer
2010-09-13 20:30             ` Dmitry A. Kazakov
2010-09-22 19:41               ` Florian Weimer
2010-09-22 20:34                 ` Dmitry A. Kazakov
2010-09-22 21:10                   ` Georg Bauhaus
2010-09-17  0:16           ` Shark8
2010-09-17  7:04             ` AdaMagica
2010-09-17 21:05               ` Shark8
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox