comp.lang.ada
 help / color / mirror / Atom feed
From: NatarovVI <4KCheshireCat@gmail.com>
Subject: Re: fyi, very interesting Ada paper OOP vs. Readability
Date: Mon, 21 May 2012 17:23:24 +0000 (UTC)
Date: 2012-05-21T17:23:24+00:00	[thread overview]
Message-ID: <jpdtmc$2j6$1@speranza.aioe.org> (raw)
In-Reply-To: 1qkmythqujvoa$.h4megbum9r4c$.dlg@40tude.net

> ADT was.

in russian - О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫

> A poor abstraction also, because it fails to capture any types
> relations, beyond trivial containment.

do you really need other relations? type is builded from set's.

> How?

directly. parent, changing youself, can do any changes on child
functions. child incapsulation broken, because it contains parts defined
elsewhere. and it is not rigorously defined containment, it's
much stronger glue. that is bad. there is no more parent and child 
objects. there is now one, parent-child object. big and complicated.
and developed by more than one programmers independenly.

> Containment breaks information hiding principle, separation of interface
> and implementation, incapable to express referential semantics, enforces
> tree-like structure of objects, break proper abstraction of semantically
> integral types ... should I continue?

nope, all remains isolated in "subcontainer". and if we change it,
"subcontainer" module interface changes and clients see it.
what bad in tree-like?
sure you may continue))
i also may say - i know "karate", "ju-jutsu"... and many other cool 
words))
but all that words not changed my words.

> How reading can be context free?

here is difference i talked about. when you read non-polymorphic prog,
you have "one static context" - language definition. you constantly
use it and know it. in polymorphic prog you must also know and
remember parts of program with poly-func definition. and remember,
which definition (from all definitions) in action now.
one part is no bad. but when such parts from libs interfered 
combinatorically...mmm door to wonders open))

> Type are not forms of program.

types represents categories of expressions.
program steps changing data's. and their types makes very
simplified representation of program steps.
"get int and int, return float".
type is socket-standard for expression jack.

> Data does not exist without types, moreover they do not exist without
> the agents interested in these data. In a larger context there are only
> values, sets of values, types (sets of values bound by operations 
defined).

not exactly. data exist independently. then we attach types to it and can 
do operations (of type). one data can have more than one type.
and operations can be varied with time. f.e. integer or natural or even.
(types can contain other types)
and one type can be attached to different data.

> Data is a definite state of some input to some program. That state is
> described in terms of values of defined types from the problem domain.
> So 2 could be data for the left argument of integer +, or an ASCII
> character STX, or standard output descriptor, or whatever.

yep. data exist independently, and we attach types to it at any time.
and make propositions and state invariants from that moment.



  reply	other threads:[~2012-05-21 17:24 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-09 13:06 fyi, very interesting Ada paper OOP vs. Readability Nasser M. Abbasi
2012-05-09 13:19 ` Nasser M. Abbasi
2012-05-09 13:36   ` Dmitry A. Kazakov
2012-05-09 13:39     ` Patrick
2012-05-09 13:55       ` Egil Høvik
2012-05-10  2:33 ` Randy Brukardt
2012-05-10  6:33   ` Simon Wright
2012-05-12  0:37     ` Randy Brukardt
2012-05-30  2:09       ` BrianG
2012-05-30  7:29         ` Niklas Holsti
2012-05-30  7:54           ` Yannick Duchêne (Hibou57)
2012-05-30  7:59             ` Dmitry A. Kazakov
2012-05-30 12:45               ` stefan-lucks
2012-05-30 13:12                 ` Dmitry A. Kazakov
2012-05-30 19:11           ` Jeffrey Carter
2012-05-30 23:00           ` BrianG
2012-06-21 16:06             ` Randy Brukardt
2012-05-10  8:43   ` Maciej Sobczak
2012-05-15  6:16     ` Simon Wright
2012-05-10 11:46   ` Dmitry A. Kazakov
2012-05-10 14:23     ` Georg Bauhaus
2012-05-10 14:47       ` Nasser M. Abbasi
2012-05-10 15:11         ` Adam Beneschan
2012-05-10 16:06         ` Georg Bauhaus
2012-05-10 18:41           ` Niklas Holsti
2012-05-11  8:20             ` Georg Bauhaus
2012-05-10 20:11           ` Nasser M. Abbasi
2012-05-10 21:17             ` tmoran
2012-05-10 18:07         ` Jeffrey Carter
2012-05-11  7:32         ` Maciej Sobczak
2012-05-10 12:31 ` J-P. Rosen
2012-05-10 13:32 ` Yannick Duchêne (Hibou57)
2012-05-10 13:38   ` Nasser M. Abbasi
2012-05-10 23:42     ` Zhu Qun-Ying
2012-05-11  6:05   ` J-P. Rosen
2012-05-11  3:01 ` NatarovVI
2012-05-11  7:14   ` Dmitry A. Kazakov
2012-05-11  7:32     ` Nasser M. Abbasi
2012-05-11  7:58       ` Dmitry A. Kazakov
2012-05-13  3:11         ` NatarovVI
2012-05-13 10:03           ` Georg Bauhaus
2012-05-16 15:00             ` NatarovVI
2012-05-16 18:01               ` Georg Bauhaus
2012-05-21 16:35                 ` NatarovVI
2012-05-21 17:56                   ` Georg Bauhaus
2012-05-23 16:01                     ` NatarovVI
2012-05-23 16:12                       ` NatarovVI
2012-05-16 15:31     ` NatarovVI
2012-05-16 16:40       ` Dmitry A. Kazakov
2012-05-21 17:23         ` NatarovVI [this message]
2012-05-21 18:53           ` Dmitry A. Kazakov
2012-05-21 19:21             ` Nasser M. Abbasi
2012-05-23 17:59               ` NatarovVI
2012-05-23 18:45                 ` Dmitry A. Kazakov
2012-05-23 17:39             ` NatarovVI
2012-05-23 18:39               ` Dmitry A. Kazakov
2012-05-11  3:09 ` NatarovVI
replies disabled

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