To: PieterCasparzen
Now, if your programming staff is a bunch of FREAKING MORONS, youll be buried in problems, to be sure. But then again, thats always been true and always will be.
But if you have a small team of SMART PEOPLE, who RTFM and program accordingly, performance SHOULD BE a non-issue.
It boggles the mind how stupid people can be. How smart is an industry which uses C/C++ for systems programming instead of Ada... or even LISP... or FORTH...?*
There is honestly no good reason that Systems should be written in C/C++, especially given the number of items that are implementation dependent.
* -- Being commissioned by the DOD, Ada was designed to allow exact representations so it could interface with hardware that had no standard. LISP was the system-language of the LISP-Machine, which had the ability to debug while running, even the system routines. FORTH is actually pretty amazing, allowing for entire systems to be built "in a matchbox".
26 posted on
05/16/2013 8:09:50 AM PDT by
OneWingedShark
(Q: Why am I here? A: To do Justly, to love mercy, and to walk humbly with my God.)
To: OneWingedShark
How smart is an industry which uses C/C++ for systems programming instead of Ada... or even LISP... or FORTH...?*
Every languange can work, of course, but today with the speed of hardware and the capabilities of all those languages there simply is no real driving need to go crazy looking for a "better language". If Ada were the ubiquitous language it would also work. What's far more important than choice of language is programmer's ability.
There is honestly no good reason that Systems should be written in C/C++, especially given the number of items that are implementation dependent.
Perhaps we can agree on IMHO...
Back in the '80s there was something that used to be talked about quite a bit - platform-independent code.
The human programmer, as opposed to the code monkey, knows to keep platform-dependencies isolated.
I do this whether I'm writing a database or writing a grocery list on paper. It's a way of life for a good programmer.
C is very sufficient for low-level programming and it's so ubiquitous that it's the only sensible choice. However, as I sit writing a database, I'm using C++. I'm just not going berserk with using inheritance and the more esoteric features of the language. Of course, the real acid test for platform dependence comes at the first port to a new platform. That's the time to completely rethink, redesign and rewrite to do a better job of isolating than was done the first time out. The key factor that ruins software projects is being under time pressure and the resultant negative impact on design decisions. Management seldom wants to hear "rethink"; they will gladly pay a penalty in lost time (time=money) for the next 25 years in exchange for saving 4 months right now.
That being said, certainly C/C++ sucks in various ways. Actually, most operating systems up until now suck in various ways, so the language is living in an inherently imperfect - and dangerous - OS world.
When I use a language, I first go about understanding it, finding the shortcomings that could hurt my project, then classifying them. Then, I devise coding approaches that eliminate the problems associated with each whole class of shortcomings. After that, I'm not "fighting" with my language du jour any more.
For example, in the C/C++ world, one simply does not malloc and then not make 100% sure that one will not also free. That would be like driving to the store, coming home with the groceries and bringing them inside - and forgetting to close the door on the car. I can truthfully say I've never done that.
If one has a program that is not 100% bug free, so it will respond predictably in 100% of the situations it could possibly encounter, then one is simply not finished writing that program.
Long story short, I find it simply mind-boggling that with today's $400 PC executing a billion instructions per second that any programmer would be struggling to find a solution. IMHO, if they are, they simply do not know the basic approaches to programming; they are seriously overcomplicating what they are trying to do, there is a much simpler solution that they are blind to. This Rube Goldberg school of software design has been the industry standard for the last 10-20 years.
33 posted on
05/16/2013 9:00:32 AM PDT by
PieterCasparzen
(We have to fix things ourselves)
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson