<div dir="ltr"><div><div><div><div>>>I find that people, once properly indoctrinated into object orientation >>dogmas,
are frequently painfully unaccepting of the notion that there are<br>>>
other programming
paradigms that might be of value, slavishly trying to >>force everything into the
procrustean bed represented by whichever "OO" >>language was the first one they
got excited about.<br><br></div>That also seems like a pretty opinion laden and heavy handed stereotype. I personally switch between Java, C, and tcl in my day to day and find that I take the approach that makes the most sense for the task at hand. I wouldn't force a C library into an object paradigm that would be best served with another model but I also wouldn't deny myself a simple object oriented approach in Java when it allows for large designs to be quickly templated and abstracted in some cases saving me hours of work that are replaced with fully featured and well planed for inherited objects.<br>
<br></div>Personally I believe each job should be evaluated as to what is the right tool for it. By your definition I must not be "properly indoctinated" as I maintain free choice about how I choose to approach problems. I would suggest though before completely dismissing a programing <br>
</div>paradigm that is very popular you consider that there is often a reason for such popularity. Sometimes it might be the right tool for the job.<br><br></div>William Weaver<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Feb 5, 2013 at 4:03 PM, Christopher Browne <span dir="ltr"><<a href="mailto:cbbrowne-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org" target="_blank">cbbrowne-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Tue, Feb 5, 2013 at 3:41 PM, William Weaver <<a href="mailto:williamdweaver-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org">williamdweaver-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org</a>> wrote:<br>
>> I consider objected oriented programming to be a Bad Thing in general.<br>
><br>
> I personally would like to know the reasoning for that. It seems a pretty<br>
> heavy handed dismissal of an approach to programming.<br>
<br>
</div>I find OO to be a dogma that's desperately in need of some actual theory to<br>
support it.<br>
<br>
I'm not aware that there are two notionally "object oriented" languages that<br>
have identical models for what "object oriented" means.<br>
<br>
- They always have some notion of "classes", but a class in C++ isn't the<br>
same as in Objective C or in Smalltalk or as in CLOS.<br>
<br>
Except, it's NOT true that they "always have some notion of classes," as<br>
Self, which is the basis for Javascript and Lua, doesn't have classes, using<br>
prototypes instead.<br>
<br>
- They always have some notion of "inheritance", but C++, Java, Ruby, CLOS<br>
have, across them, *extremely* different semantics. And inheritance<br>
requires having a class to inherit from, so "always" isn't quite as often as<br>
one might have imagined.<br>
<br>
I find that people, once properly indoctrinated into object orientation dogmas,<br>
are frequently painfully unaccepting of the notion that there are<br>
other programming<br>
paradigms that might be of value, slavishly trying to force everything into the<br>
procrustean bed represented by whichever "OO" language was the first one they<br>
got excited about.<br>
<br>
What with the absence of firm theory (go looking; you'll find a *tiny* number of<br>
books with genuinely theoretical material on OO; they'll all fit in a<br>
briefcase),<br>
why *wouldn't* it be more interesting to look at the broad set of programming<br>
paradigms, such as:<br>
- agent-oriented<br>
- flow-based<br>
- declarative<br>
- functional<br>
- event-driven<br>
- concurrency<br>
- parallelism (!= concurrency)<br>
- logic programming (& unification)<br>
- pattern matching<br>
- generative programming<br>
<div class="im HOEnZb"><br>
--<br>
When confronted by a difficult problem, solve it by reducing it to the<br>
question, "How would the Lone Ranger handle this?"<br>
</div><div class="HOEnZb"><div class="h5">--<br>
The Toronto Linux Users Group. Meetings: <a href="http://gtalug.org/" target="_blank">http://gtalug.org/</a><br>
TLUG requests: Linux topics, No HTML, wrap text below 80 columns<br>
How to UNSUBSCRIBE: <a href="http://gtalug.org/wiki/Mailing_lists" target="_blank">http://gtalug.org/wiki/Mailing_lists</a><br>
</div></div></blockquote></div><br></div>