On Thursday, 19 September 2013 at 23:50:04 UTC, H. S. Teoh wrote:
On Fri, Sep 20, 2013 at 12:18:22AM +0200, Szymon Gatner wrote:
I had similar thoughts when watching GoingNaive 2013:
http://bartoszmilewski.com/2013/09/19/edward-chands/
I was more and more scared with every talk and now I am
valualizing
my polymorphic types a'la Sean Parent
Quote:
There was so much talk about how not to use C++ that it
occurred
to me that maybe this wasn’t the problem of incompetent
programmers, but that straightforward C++ is plain wrong. So if
you just learn the primitives of the language and try to use
them, you’re doomed.
... [big snippage] ...
I can go on and on like this (and I often do!). Do you see the
pattern? Every remedy breeds another remedy. It’s no longer
just
the C subset that should be avoided. Every new language feature
or library addition comes with a new series of gotchas. And you
know a new feature is badly designed if Scott Meyers has a talk
about it. (His latest was about the pitfalls of, you guessed
it,
move semantics.)
This is sooo true. It reflects my experience with C++.
Honestly, it got
to a point where I gave up trying to following the remedy upon
the patch
to another remedy to a third remedy that patches yet another
remedy on
top of a fundamentally broken core. [... cutted]
I dislike C, and will take C++ safety and abstraction
capabilities over C, unless forced to do otherwise.
Now, having said this. I hardly write any C++ nowadays.
In the types of projects we do, it is all about JVM and .NET
languages.
Sometimes even replacing "legacy C++" systems by new systems done
in those languages.
So writing C++, or even C, tends to be restricted to a few method
calls.
For example, recently we had a project for real time data
analysis on Windows.
It was a C#/WPF application. C++ was only used for the hardware
interfaces and SIMD optimizations for a few algorithms.
Sounds like D's decision to go with a GC may not be *that* bad
after
all...
I like GC enabled systems programming languages since I used
Oberon, and had some contact with Modula-3.
Like many things in programming, the only way to convince other
developers is to have them use such systems.
--
Paulo