[NBLUG/talk] If you love him/it so much, then defend him/it.

ME dugan at passwall.com
Fri May 23 22:15:01 PDT 2003


> Does Donald E. Knuth ever simplify anything?

Yes. You need proof? I got your proof right here:

http://www.ibiblio.org/Dave/Dr-Fun/df200002/df20000210.jpg

:-D

> Does C++ ever simplify anything?

C++ is not a person, so it can't simplify. ;-)

> Burdens of proof's on you.  From what I've seen,
> Knuth starts complex, stays complex and ends
> complex, and C++ is always getter *more* complex.

Complications with C++ exist with desires to add layers and hide how
things work from the coders. Certainly, this can be a benefit for coding
projects where you don't need to see how the internal workings actually
work, but can be a problem if you decide to actually learn every detail
for every part that you want to use.

C++ is not the only language guilty of this. (How can C++ be guilty if it
is not a person. Didn't I just complain about not applying things
associated with people to C++? Doh!) Nearly any language that offers
methods for solving problems, may grow to offer shortcuts for people who
wish to employ them. A tradeoff (by the coder) is made to use more
powerful tools not necessary to understand in order to save themselves
from re-inventing the wheel.

More descriptive:
A tradeoff is offered to exchange size in code for complexity. Built your
own ADTs and then support them all, or use the STL? Technically, you can
get away with using very uncomplicated methods to create algorithms for
ADT, but your speed for processing these may suffer.

Another way to look at it, is as a tradeoff of memorization vs skills at
implementation. Memorize classes, member functions, how they work and what
they do vs. solving problems on your own.

I would submit this: C++ is complex, was complex and has been complex. The
observation about it starting out simple and tends to become more complex
with time is just a side effect if digging through the "stuff" that is
normally hidden from you - to save you from re-inventing it and
maintaining your new re-invention in duality of an existing product.

-ME




More information about the talk mailing list