[Erik de Castro Lopo]
Tim Goetze wrote:
To be honest, I don't know if it's
undefined behaviour; I don't read
ISO compiler ABI standards (if they exist in the first place). I was
simply trusting that common sense would always allow this
cross-language subclassing, apparently I was wrong.
Trusting that unspecified/undocumented characteristics will remain
the same across versions is asking for trouble.
I readily admit I'm a fool, but I must insist that the g++ developers
are fools just the same (albeit of different caliber), even if that
offers me little consolation.
Well I really like to separate the C and C++. C is
unashamedly a
low level language. C++ OTOH tries to be both low level and high
level. In comparison to C, C++ is a poor low level language.
Compared to Python or Ocaml, C++ is a poor high level language.
C++ for all practical purposes simply does what I want and gives me
low-level control where I need it. I've never looked at -S output and
found that C would surely and significantly improve the output, it
was just what I expected and accepted.
The flaws I find with C++ are not with the language itself, I find
them clearly with the fickle gcc implementation. That's not to say
your point of view isn't valid, rather it is one I rarely if ever
assume.
I also find Ocaml a better high level language than
Python because
it is strictly and statically typed as well as compiling to native
binaries which come close to the speed of C.
A very valid point given your preferences; however what you perceive
as Python's flaws (most prominently easily provoked runtime errors) I
lightheartedly accept as necessary consequences of the language's open
and simple-minded character that I hold so dear.
I have done some seriously difficult code in Ocaml;
tasks that in
C or C++ would a nightmare of complexity and/or endless futzing
about with trivial minor details. It is not the ideal programming
language, but for some kinds of tasks it beats every other
programming language I've ever seen.
I can imagine it will be the closest to perfect solution in some
(maybe even many) circumstances and that it could be a welcome tool
for me too; however I'm pretty much sold on Python as my high-level
language of choice and very reluctant to diversify in computer
language literacy any further.
Cheers, Tim