From: Shark8 <onewingedshark@gmail.com>
Subject: Re: Full view of a private partial view cannot be a subtype
Date: Tue, 5 Dec 2017 07:27:16 -0800 (PST)
Date: 2017-12-05T07:27:16-08:00 [thread overview]
Message-ID: <43498b2a-773c-454a-b0e7-ade5d6594bd4@googlegroups.com> (raw)
In-Reply-To: <p04frg$q8n$1@dont-email.me>
On Monday, December 4, 2017 at 2:48:34 PM UTC-7, Jeffrey R. Carter wrote:
> On 12/04/2017 09:41 PM, Jere wrote:
> >>
> > I don't disagree in general per say, but that is a very subjective thing. I
> > don't find composition nearly as readable as you do. It has it's place and
> > can be more readable, but (maybe it's just how I read and visualize) I find
> > extension to be more readable in probably more cases than you typically do.
> > It's just a personal thing with how I read. I've used and written both.
>
> I've never seen a realistic problem that was as readable when implemented with
> type extension as with composition.
>
> Perhaps the best fit of any problem with type extension is a GUI framework,
> since everything "is-a" widget. I have used 2 such frameworks implemented using
> type extension, Claw and Gnoga, and both are very difficult to understand. The
> derivation trees are very deep and there are a huge number of inherited
> operations. It's effectively impossible to know all the operations for the most
> commonly used types, which tend to be down at the leaves of the derivation tree.
One of the best GUI frameworks I've seen is Delphi's VCL -- it is very good in this respect having several "base level" types where you'll look for common operations. (There's one for visual-components, one for nonvisual-components, and they both share an ancestor that is [IIRC] higher than TObject.)
Besides UIs, the one problem that springs immediately to mind is the internals of a compiler's IR/parse-tree. Another is linguistics (though I haven't actually seen this used) where you are modelling language on a abstract/general level: Types Verb & Noun, descending from Word. Phrases, sentences, etc.
next prev parent reply other threads:[~2017-12-05 15:27 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-03 2:14 Full view of a private partial view cannot be a subtype Jere
2017-12-03 12:01 ` Jeffrey R. Carter
2017-12-03 13:33 ` Jere
2017-12-03 14:34 ` Jeffrey R. Carter
2017-12-03 17:44 ` Robert Eachus
2017-12-03 18:50 ` Simon Wright
2017-12-03 22:10 ` Robert Eachus
2017-12-03 19:03 ` Jeffrey R. Carter
2017-12-03 22:23 ` Jere
2017-12-04 8:25 ` Dmitry A. Kazakov
2017-12-04 18:04 ` Jeffrey R. Carter
2017-12-04 20:41 ` Jere
2017-12-04 21:48 ` Jeffrey R. Carter
2017-12-05 8:20 ` Dmitry A. Kazakov
2017-12-05 18:16 ` Jeffrey R. Carter
2017-12-05 20:39 ` Dmitry A. Kazakov
2017-12-05 21:38 ` Jeffrey R. Carter
2017-12-05 12:35 ` Jere
2017-12-05 18:40 ` Jeffrey R. Carter
2017-12-06 12:54 ` Jere
2017-12-06 18:03 ` Jeffrey R. Carter
2017-12-05 20:22 ` Randy Brukardt
2017-12-05 15:27 ` Shark8 [this message]
2017-12-05 18:50 ` Jeffrey R. Carter
2017-12-05 20:59 ` Randy Brukardt
2017-12-05 22:43 ` Shark8
2017-12-07 0:52 ` Randy Brukardt
2017-12-05 20:16 ` Randy Brukardt
2017-12-05 21:29 ` Jeffrey R. Carter
2017-12-07 0:04 ` Randy Brukardt
2017-12-04 20:49 ` Randy Brukardt
2017-12-05 12:56 ` Jere
2017-12-05 20:12 ` Randy Brukardt
2017-12-17 15:26 ` Jere
2017-12-17 15:39 ` Dmitry A. Kazakov
2017-12-18 22:47 ` Randy Brukardt
2017-12-19 1:22 ` Jere
2017-12-19 23:16 ` Randy Brukardt
2017-12-19 1:01 ` Jere
2017-12-19 9:08 ` Dmitry A. Kazakov
2017-12-19 13:08 ` Jere
2017-12-19 13:27 ` Dmitry A. Kazakov
2017-12-19 19:10 ` Stephen Leake
2017-12-18 20:45 ` Stephen Leake
2017-12-18 22:54 ` Randy Brukardt
2017-12-19 1:08 ` Jere
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox