AgTalk Home
AgTalk Home
Search Forums | Classifieds (73) | Skins | Language
You are logged in as a guest. ( logon | register )

Python, the preferred programming language skill
View previous thread :: View next thread
   Forums List -> Computer TalkMessage format
 
WYDave
Posted 10/12/2017 16:55 (#6303912 - in reply to #6287900)
Subject: RE: Python, the preferred programming language skill


Wyoming

C++ is a language that cannot decide what it wants to be: A dessert topping, a floor wax, or a nitrate-based plastic explosive.

C++ has two paradigms of programming - OO inheritance and template. I see far too many systems where the combination of the two has resulted in huge, automatically-generated bloat in the resulting object - which many modern programmers don't appreciate, because hey, memory is now so cheap.

The C++ manner of handling exceptions is bloated and expensive.

The other thing I really dislike about C++ is that it didn't provide for automatic garbage collection. In a language with as many ways to create an object instance as C++ has, there should be automatic garbage collection by default. They could have put this into the language with a way to override it, but instead they left it out and said "Well, you can just invent your own by overriding object creation/destruction..." 

No, wrong answer. Most programmers aren't blessed with enough schedule time to do that, and in a modern language, it should just be done.

There's just so much wrong with C++... I barely know where to start. I followed (and used) the language from late in the 80's, when it started as "C with classes," and watched it become the monstrosity that is modern C++. Even after they finished the language spec, it took years before there was a fully compliant compiler for C++'s full spec. It's a great case of a language trying to be everything to everyone - and no programming language can do that and succeed. They tried with PL/I and Algol-68 - and Pascal was the resulting push-back from that. C++ became what it is, and C#, Objective-C and now Swift are the resulting push-back from C++.

One of the biggest bits of political drama I had with C++ was when I was sent to Japan in the late 90's with several other people from several other companies involved in the Cygnus toolchain, in order to lay out a "real-time subset" of C++, which we were going to call "C+-." The Japanese consumer-device system programmers were our guests, because, hey, when Sony (or someone else) is designing a system with a small CPU and small memory that's a wart on the side of a consumer appliance, they want to keep the memory size (and costs) down.  The Japanese wanted a programming language in which they could develop OO class libraries to handle specific consumer product tasks, but in a very small memory footprint.

We were going to eliminate templates, exceptions, run-time type ID, and some other esoteric issues, add in a default memory management library, and call it good. C++ advocates, including the author of the C++ spec, got wind of this and had a hissy fit - and the result was the fracturing of the C++ "marketplace" with results like C# and other languages that were less bloated.



Edited by WYDave 10/12/2017 17:25
Top of the page Bottom of the page


Jump to forum :
Search this forum
Printer friendly version
E-mail a link to this thread

(Delete cookies)