Re: why Obj-C
Re: why Obj-C
- Subject: Re: why Obj-C
- From: "David W. Halliday" <email@hidden>
- Date: Tue, 09 Apr 2002 20:12:14 -0500
- Organization: TNRCC
Andy Lee wrote:
>
At 3:23 PM +1000 4/5/02, Matthew Johnson wrote:
>
> >
>
> > How many languages do you know ? I say the more the better.
>
>>
>
[...]
>
>I disagree,
>
>
I don't necessarily agree with "the more [languages] the better"
>
either, though a lot of mega-black-belt programmers seem to feel that
>
way so I'm not going to argue too hard about it until I'm a lot
>
richer and more powerful than they are. ;)
I would have to agree that simply "the more [languages] the better" is not so
good. However, I would have to say that the more, different, programming paradigms
the better.
>
> The more languages I have under my belt the less expert I become in
>
>the lot. Maybe I am getting old and
>
>feeble but I seem to of reached a limit in which if I learn
>
>something new I forget something old ;)
>
>
I suspect it's healthier to keep learning new things even if it does
>
mean forgetting old things. Aren't there studies that say ongoing
>
learning helps you keep your marbles as you age? I could swear I
>
read that somewhere, but I, er, forget where.
This is certainly true (I do remember seeing at least one study supporting
this).
On the "if I learn something new I forget something old": Our brains are not
like computers with finite RAM. This is not to say that we tend to "forget" things
we don't access regularly (evidence is that we do retain the memories, they just
become more difficult to access: Like they were offloaded to an archive). If we
try to "learn" by memorization, we /may/ be doomed to forget old, but if we
/internalize/ information---which means the information causes a change in our
perspective and outlook---we don't have so much trouble (though we often find
ourselves having to mentally "shift gears" when trying to do things the "old
way"---yet we also find we can approach even old problems, even in the old language,
in new ways).
>
...
>
>
--Andy
>
...
Incidentally, Matt, I notice that your list of programming languages covers
primarily procedural, List processing (unless you simply used Lisp and Prolog simply
in a procedural way, which is all too easy to do), and assembly language paradigms.
C++ is not referred to as an Object Oriented language by its inventor (Stroustrup),
but as a "Multi-Paradigm Language" (to which I would have to agree), and while I
would tend to classify Java as more object oriented than the OO portions of C++,
it's still missing some when it comes to trying to use class objects (even
Objective-C is missing some things, when compared to the language for which "Object
Oriented" was coined, namely SmallTalk).
However, as you delve into the various programming paradigms, I feel confident
in suggesting you will become a better programmer in whatever language you choose
for a given task. Delve into List programming (especially look at how little of the
Lisp language needs to exist for a programmer to bootstrap the rest). Take a close
look at Modular programming (it was a stepping stone between Procedural and OO---in
fact, other than some missing pieces, I would say C++ tends to resemble Modular
programming more than OO). Look closely at SmallTalk (even if you will never
program in it). (Did you know that SmallTalk has no looping or conditional
constructs defined in the language? How can that be?) And, perhaps, take a look at
Stack Oriented languages (Forth and PostScript), as well as Imperative systems and
many others.
I really think it helps round out ones perspective. (Also, I've found, much
like those that learn multiple human languages, the more languages I learn the
easier it is to learn another.)
Have fun in exploring new world of programming (and other pursuits). :-)
email@hidden
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.