comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <rm-host.bauhaus@maps.futureapps.de>
Subject: Re: Securing type extensions
Date: Fri, 17 Sep 2010 10:45:48 +0200
Date: 2010-09-17T10:45:49+02:00	[thread overview]
Message-ID: <4c932abd$0$6987$9b4e6d93@newsspool4.arcor-online.net> (raw)
In-Reply-To: <got40q2d7jdy$.1tqapit9ardma$.dlg@40tude.net>

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"
and "spcification" and "implementation". (When I said something
about company representatives signing a legal contract
about software and why they feel they can trust each other to
a certain extent  ...).

Is "class of L" referring to {T1'Class, T2'Class}?

What are the clients and implementations in X.L.* and
Y, respectively?

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?



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

   Here's an example of trust, showing that trust is not a
binary thing (as  "trust more than" indicates):

   A thief engineer (E1) plans to rely on a few  other
thief engineers (E2, E3). They plan a technically challenging
robbery.  On site, E2 performs almost as expected, the robbery
succeeds, but E2 runs away with half of the haul when he was
supposed to carry one third.  Partial success.

  If and only if E1 and E3 can live with the result, trusting E2
was justified, whatever the concerns may have been, or will be.



> Do *you* trust Microsoft?

The one thing that does not matter in discussing general rules
should be one's own specific attitude.

Visual Studio is *of* *course* changed in incompatible ways!
You known that when you buy, you can trust they will have
made a few changes of this kind.  This is two-party business,
not one-group cooperation!  Interests will differ.

When dealing with MS products, many swear and curse, hate them,
the hatred being extended to Microsoft,
but they nevertheless buy because they trust programming with
MS VS will still provide for a living.

A good opportunity to remember the huge value of standardized
languages, and competing implementations, BTW.


>  Engineering is applying science to solving technical problems.

Which does not define engineering at all: there is no one way to "apply"
(whatever "apply" might mean) the one and only "science". Science,
a term, I think, that is defined only when engineers feel they need
to make a gesture of competence.

What we do when programming is between science and the ideal
of engineering.  Between science and engineering lies _craft_.
There is a preferred scientific method, there are scientific results,
some of them brittle, some preliminary, some rather vague,
many temporary.  Craftspeople deal with this.

If you remember the varied qualities of craftsmanship...

Which brings us back to software libraries and type extensions.

Georg



  reply	other threads:[~2010-09-17  8:45 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 [this message]
2010-09-17  9:39                                             ` Dmitry A. Kazakov
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