Lies in education [was Re: The "loop and a half"]
On 11/10/17 01:48, Bill wrote:
> Steve D'Aprano wrote:
>> On Tue, 10 Oct 2017 06:06 am, Stefan Ram wrote:
>>> In his book about programming, Bjarne Stroustrup writes:
>>> |We try hard to avoid "white lies"; that is, we refrain from
>>> |oversimplified explanations that are clear and easy to
>>> |understand, but not true in the context of real languages and
>>> |real problems.
>> Bjarne Stroustrup is famous for designing one of the most heavyweight,
>> baraque, hard-to-understand, difficult-to-use programming languages in
>> use. While C++ has many excellent features, and is constrained by the
>> need to
>> be compatible with C, I don't think many people believe that it is a
>> well-designed language.
> It is a well-designed language.? It is and was carefully thought out.
I was manfully trying not to head off on another OT trail, but this is
simply not true. C++ is designed, true, but well designed? It has a
fundamental flaw; it wants to be both a high-level language and
compatible with C, under the mistaken impression that C is a high level
language. Since C is actually an excellent macro-assembler, this dooms
the exercise from the very start.
C++ lives in the no-man's land between programming languages that care
quite a lot what processor they are running on and programming languages
that wouldn't recognise hardware if it came up and bit them. It can be
used either way, but comes with all the baggage for both. I am yet to
see a C++ program that wasn't more comprehensible when rendered as
either C or Python (or the high-level language of your choice, I imagine).
Rhodri James *-* Kynesim Ltd