Newsgroup: it.comp.lang.c++
Titolo: C++ using a Mac

My son wants to teach himself C++ at home.
We have a Mac LC475 running OS7.6.
Is this a possibility and what would he need (share/freeware if
possible!)
Thanks

You should probably use MetroWerks CodeWarrior "Discover Programming"
edition. It's cheaper than the professional edition which probably has
lots of stuff you won't need. However, CW certainly is an advanced tool
not necessarily best suited to beginners, although the Discover
Programming edition is packaged that way. But then again, C++ has little
to recommend it as a teaching language and even has serious drawbacks
for professional programming. So, don't set your sights on C++ alone.
Pete Mungall wrote:

--
Ian Joyner
i.jo...@acm.org
http://homepages.tig.com.au/~ijoyner/
Objects Unencapsulated -- The book
http://www.prenhall.com/allbooks/ptr_0130142697.html
http://www.elj.com/oue1/
 (review)

possible!)
Metrowerks have several versions of CodeWarrior, the CodeWarrior Discover
Programming for Macintosh might be a good one for you to try. I think it
requires Mac OS 7.6.1 as a minum and PowerPC for sure.  However if you buy
from Metrowerks we may be able to send you a 68k version as well.
Apple also has MPW it is a free download and while a bit hard for a
beginner there is help online.   I wouldn't recommend it for C++ as it is
not real modern there.  But it is free and it does do C very well.
Hope this helps,
Ron
-- 
Visit us at MacWorld, San Francisco, January 4-7
Metrowerks, a Motorola Company   -  Ron Liechty
"Software Starts Here"  -  
MW...@metrowerks.com

 Thanks

 for professional programming.
May I ask what they are???
-Mike

 May I ask what they are???
Complexity, complexity, and complexity:-).
I use C++ a lot, but that's because I do a lot of low-level
'system' kind of work and computationally intensive stuff.
C++ is wonderful at that -- its complexity is then fully
justified, and you get to deploy it to good purpose.
Where that is not the case (and it isn't for 90% of
professional programming, and 99.44% of teaching:-),
languages such as Java, or Python, are IMHO better.
Alex

 'My language can beat up your language' :-)
Nope, because I don't 'have' ONE language, singular.  I'm
quite as comfortable with Italian as with English, and
_almost_ as much with French... I use the right one_s_ for
the job at hand -- plural, again.
It would be as silly to choose a priori to use "one"
programming language for whatever given task, when
multiple ones can do the job better, as it would be
to do the same with natural languages -- I work in
a multinational company, and on a given task I had
better write the comments in English (so everybody
can review them), but chat with local coworkers in
Italian (because they handle it far better), and if I
need to call up another colleague from France, of
course I'll speak with him in French on the phone --
it just works better.
People who choose to be monolingual are doing
themselves a great disservice, whether we're speaking
of  natural languages, or of programming ones.
Alex

 which case C++'s complexity is an *asset*, not a drawback.
There are two kinds of complexity in computing (or any field). Complexity
because the subject itself happens to be complex and complexity due to the
solution itself being complex (thereby making the complexity of the subject
even harder to understand). We ever need more elegant solutions so the base
complexity itself can be addressed.


 languages such as Java, or Python, are IMHO better.
As a C++ student who's also my school's webmaster, I
prefer to use C++ for programming some of the CGIs that we
need for our school website now. It's a conceptual snap,
knowing that all one needs to do for output is just send
HTML tags to cout. The fact that we have overloaded <<
output operators makes it even easier.



Have you used the cgicc library from gnu?
Do you know how useful it is?
-- 
Barnabas T. Rumjuggler
There aint that many sir prizes in life if you take noatis of every thing.
Every time wil have its happenings out and every place the same.  What ever
eats mus shit..
 -- Russell Hoban, _Riddley Walker_

on without the language getting in the way of the easy stuff.
I've made this point many times and have responsed just to highlight it.
Of course, it's not picture perfect, but what is...
- Greg
-- 
       Comeau Computing, 91-34 120th Street, Richmond Hill, NY, 11418-3214
          Producers of Comeau C/C++ 4.2.42 -- NOTE 4.2.42 NOW AVAILABLE
    Email: 
com...@comeaucomputing.com
 / Voice:
718-945-0009
 / Fax:
718-441-2310
                *** WEB: 
http://www.comeaucomputing.com
 *** 

 Of course, it's not picture perfect, but what is...
Nothing is perfect, but, "horses for courses" -- you *cannot* really
push C++'s complexity aside, so it's anything BUT irrelevant when
C++ is taught as a first programming language.  Yes, it's better than
C (because you _can_ make a gamely attempt to hide the complexity
under the carpet, which in C you can't even really try), but that's
not saying much.
Sooner or later (in my experience, _sooner_) the beginner will do
some perfectly innocuous mistake, such as forgetting a semicolon,
and the compiler will "throw the book at him" (that's how it feels
like from a beginner's perspective) -- if he's unlucky enough to
forget the semicolon where it counts, e.g., right after a class
declaration, the error message will leave him befuddled.  Or, he'll
miscount the '}'s somewhere, and the compiler will severely
inform him that he cannot define nested functions ("what ARE
nested functions?!", the poor beginner will wail).  And so on,
ad infinitum.  Worst of all, of course, the typical beginner errors
that do allow the program to compile and link, but then give
strange (for the beginner) results -- "="/"==" confusion, etc.
C++ is my language of choice for the kind of low-level
components and close-to-the-metal-infrastructure that I
mostly develop these days, but using it as a first language
to teach beginners "is worse than a crime -- it's an error"
(to quote, I believe, Talleyrand).  Using C++ decently takes
high "maturity" as a programmer -- having more than one
language under your belt is among the pre-reqs of such
maturity, IMHO.  Start him off with either a high-level,
easy, high-productivity scripting language, such as Python;
or, with a rigid, strictly constrained, guide-you-all-the-way
one, such as Pascal (I respect the arguments on both sides
of this apparently irreconciliable divide, and I suspect the
relative effectiveness of either approach ultimately comes
down to the different mindsets and abilities of individuals);
but NOT with a sharp-shiny-blades-are-the-only-tools kind
of language such as C or assembly, or an anything-but-the-
kitchen-sink one such as C++, or you strongly risk unwittingly
contributing to the current shortage of programmers...:-).
Alex

output operators makes it even easier.
Perl still seems better suited for the job, although
if you're more proficient in C++, it might not be a bad
choice. But this has nothing to do with C++ being a
good language for teaching.