An interesting observation
David B. Held
dheld at codelogicconsulting.com
Fri Nov 9 01:53:03 PST 2007
Derek Parnell wrote:
> [...]
> The moral of the story : the better programs are those that are truly
> useful rather than those that deliver what engineers believe would be
> useful, no matter how 'superior' those programs might be.
And I think the metamoral of the story is that programmers tend to
overgeneralize because that makes problems more interesting and
challenging and elegant, when most of the the time the generalizations
aren't used. Like the human brain, a good programming language is one
that has a lot of specific tools that do their job well, rather than one
big generic tool that looks like a hammer and expects everything to look
like specializations of a nail.
The tendency to generalize is quite natural and is part of what makes a
programmer a good thinker. It's the ability to abstract away detail and
find the commonality in a structure. The problem is when it goes too
far, and important details are sacrificed on the altar of elegance,
which turns out to be an illusion anyway.
This is why academic languages tend to not be successful. They are good
at being elegant, but not so good at being useful. You rarely use
pieces of art to dig a ditch or frame a house, because most of it
couldn't stand up to the work.
Dave
More information about the Digitalmars-d
mailing list