Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #31249
| Path | csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!eternal-september.org!feeder.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail |
|---|---|
| From | Jerry Stuckle <jstucklex@attglobal.net> |
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: About concurrency and functional programming |
| Date | Sun, 01 Mar 2015 11:29:52 -0500 |
| Organization | A noiseless patient Spider |
| Lines | 100 |
| Message-ID | <mcveon$m37$1@dont-email.me> (permalink) |
| References | <mcqnmv$9it$5@dont-email.me> <mcqogt$cea$8@dont-email.me> <mct30s$qhh$1@dont-email.me> <mctboa$tg5$1@dont-email.me> <mcttfj$pra$1@dont-email.me> <mcuja6$g6o$1@dont-email.me> <clgbqlFdk2iU1@mid.individual.net> <mcv7i8$nv1$1@dont-email.me> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=utf-8 |
| Content-Transfer-Encoding | 8bit |
| Injection-Date | Sun, 1 Mar 2015 16:29:11 +0000 (UTC) |
| Injection-Info | mx02.eternal-september.org; posting-host="f0ea22b8e90f9304762d4b6484233470"; logging-data="22631"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/lgeQM6irKRwswxcs2wL7y37Pc9JlPuIc=" |
| User-Agent | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 |
| In-Reply-To | <mcv7i8$nv1$1@dont-email.me> |
| Cancel-Lock | sha1:sTVLQoWxPEo/Ote4KuCh8fSqVc4= |
| Xref | csiph.com comp.lang.java.programmer:31249 |
Show key headers only | View raw
On 3/1/2015 9:26 AM, Robbie Brown wrote: > On 01/03/15 11:34, Robert Klemme wrote: >> On 01.03.2015 09:41, Robbie Brown wrote: >>> On 01/03/15 02:28, Jerry Stuckle wrote: >>>> On 2/28/2015 4:26 PM, Robbie Brown wrote: >>>>> On 28/02/15 18:56, Joshua Cranmer 🐧 wrote: >>>>>> On 2/27/2015 6:45 PM, Ramine wrote: >>>>>>> You will notice that "Bartosz Milewski" is saying that object >>>>>>> oriented > > <snip> > >>> Actually, I find that people often get composition and aggregation mixed >>> up, >> >> And now you even mix up the topic of the discussion: it was composition >> vs. inheritance. > > It was a passing comment. Your attempt at ridicule is disingenuous. > > <snip> > >>> C 'is a' B. Is C composite by inheritance? >> >> Not sure what that is supposed to mean. > > What is it you don't understand? I can't think of a clearer way to > express this in the English language. > > Instances of classes are implementation details. They are the result > of trying to express a real world, possibly infinite concept in a finite > approximation of that world (a computer). Don't get upset if you don't > understand it, it seems strange at first but it's quite simple really. > Anyway, I think I understand what the OP means. > >> C inherits B and as such >> instances of C contain an instance of A as well. So in sum, C makes use >> of both concepts but for different purposes. >> >>> C is certainly 'a B' but B can't 'exist' without C and dies when C dies. >> >> No, C does not die but _instances_ of C die! > > You shouldn't be thinking about 'instances' at a high level of > abstraction, that's the point of abstraction, you ignore irrelevant > details so you have space in your brain to consider higher level concerns. > >> That's a huge difference. > > No, there really isn't, not at a particular level of abstraction. > > <snip> > >>> B has no meaning or purpose in the >>> system without C, a classic description of composition. >> >> The purpose of B is to inherit from it (either because it represents an >> abstract concept or purely for implementation inheritance purposes). If >> there is no class inheriting it then it _may_ be superfluous but the >> fact does not change the purpose of B. Otherwise all interfaces defined >> in libraries are without purpose if not at least one class in the >> library implements it. That is silly. > > I see, an interface that nothing implements is not superfluous ... OK (?) > >> I recommend reading "Object Oriented Software Construction" by Bertrand >> Meyer. That is the most profound work on various aspects of OO and >> inheritance I am aware of. You'll be hard pressed to find a language >> that has more ways to do inheritance (and a few other things) than >> Eiffel. > > I have read many books on OO, written several manuals and training > courses on OO Software Engineering with Java and designed many computer > systems, and I have used Eiffel. I'm happy that I 'get' this stuff and > am always interested in what other people think. I have no entrenched > ideas and prefer to believe that I am free thinking and open to ideas > from experts and beginners alike, however, I do try to avoid personal > insults however as they serve no purpose. > > Rob > You should try to understand what you read. And contrary to your claim, you do have "entrenched ideas", as you show by arguing here. And BTW, your "entrenched ideas" are wrong. You do not "get" this stuff. For the record, I've been doing OO work since 1988, long before Java. I also spent 12 years as an independent consultant writing and teaching programming classes for corporations (mainly Fortune 500) in the U.S., Europe and Asia. These included Java, C++ and OOAD (using UML). The only reason I got out of it was I got tired of 75K+ air miles every year. -- ================== Remove the "x" from my email address Jerry Stuckle jstucklex@attglobal.net ==================
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: About concurrency and functional programming Joshua Cranmer 🐧 <Pidgeot18@verizon.invalid> - 2015-02-28 12:56 -0600
Re: About concurrency and functional programming Robbie Brown <rob@example.com> - 2015-02-28 21:26 +0000
Re: About concurrency and functional programming Jerry Stuckle <jstucklex@attglobal.net> - 2015-02-28 21:28 -0500
Re: About concurrency and functional programming Robbie Brown <rob@example.com> - 2015-03-01 08:41 +0000
Re: About concurrency and functional programming Robert Klemme <shortcutter@googlemail.com> - 2015-03-01 12:34 +0100
Re: About concurrency and functional programming Robbie Brown <rob@example.com> - 2015-03-01 14:26 +0000
Re: About concurrency and functional programming Joerg Meier <joergmmeier@arcor.de> - 2015-03-01 15:30 +0100
Re: About concurrency and functional programming Robbie Brown <rob@example.com> - 2015-03-01 14:31 +0000
Re: About concurrency and functional programming Robbie Brown <rob@example.com> - 2015-03-01 14:30 +0000
Re: About concurrency and functional programming Jerry Stuckle <jstucklex@attglobal.net> - 2015-03-01 11:29 -0500
Re: About concurrency and functional programming Robbie Brown <rob@example.com> - 2015-03-01 17:07 +0000
Re: About concurrency and functional programming Joerg Meier <joergmmeier@arcor.de> - 2015-03-01 20:12 +0100
Re: About concurrency and functional programming Robbie Brown <rob@example.com> - 2015-03-01 20:31 +0000
Re: About concurrency and functional programming Jerry Stuckle <jstucklex@attglobal.net> - 2015-03-01 16:13 -0500
Re: About concurrency and functional programming Jerry Stuckle <jstucklex@attglobal.net> - 2015-03-01 16:11 -0500
Re: About concurrency and functional programming Jerry Stuckle <jstucklex@attglobal.net> - 2015-03-01 16:17 -0500
Re: About concurrency and functional programming Joshua Cranmer 🐧 <Pidgeot18@verizon.invalid> - 2015-03-01 12:03 -0600
csiph-web