Re: Lahman, how ya doing?



In article <uyMie.7527$_f7.7408@trndny01>,
H. S. Lahman <hsl@xxxxxxxxxxxxxxxxx> wrote:
>Responding to Hansen...
>
>> I learned in comp.lang.c++ that should be
>>
>> dolt(const big_honking_data_structure_reference&);
>
>Right. Safety comes at an obscure price in C++.
>
>[Apocryphal anecdote. Back in the early '80s I was trying to sell my
>shop on doing OO development. I conned three managers to go with me to
>an OOPLSA conference. Two managers went to a C++ morning tutorial while
>I and the other went to an Eiffel tutorial. We met at lunch and the
>other two mangers got there first.
>
>As we walked up to the table the two managers were laughing
>hysterically. It seems the presentation had been pretty much typical
>C++ where there was ten minutes of description followed by thirty
>minutes of workarounds to avoid obscure problems. They regaled us for
>the entire lunch with anecdotes about having to do bizarre things to
>avoid foot shooting. One manager summarized with, "If I caught any of
>my people writing code like that I would break their thumbs." As a
>result I didn't get an OO pilot into the shop for another couple of
>years when both managers had moved on. (The manager who went with me to
>look at Eiffel was still there and ended up as a True Believer.)]

So it's not just me! I've been starting to notice that C++ seems to make
it harder than it has to be to do things that must be common in OOP. It
didn't take me long to realize that a generic pointer can only hold any
variety of classes if they were all derived from a single base class
(e.g. the recipient of an event, or the object to read data from), but
you can't invoke methods unique to a derived class with a pointer to the
base class. I suppose there's dynamic typecasting techniques to get
around that, but it just seemed easier to let my base class keep
accumulating virtual member functions as derived classes gained their own
functions.

--
"Will we be suturing the anus?"
.