Whilst we are espousing opinions… On Fri, 2018-03-02 at 08:02 +0000, Paulo Pinto via Digitalmars-d- announce wrote: > On Friday, 2 March 2018 at 04:38:24 UTC, psychoticRabbit wrote: > > […] > > > > You can write pretty safe code in C these days, without too > > much trouble. We have the tooling and the knowledge to make > > that happen.. developed over decades - and both keep getting > > better, because the language is not subjected to a constant and > > frequent release cycle.
You can write safe code in assembly language and even machine code, but do you want to? The same applies to C. > > Ironically, the demands on programmers to adapt to constant > > change, is actually making applications less safe. - and least, > > that's my thesis ;-) > > > > The real problem with using C these days (in some areas), is > > more to do with its limited abstraction power, not its lack of > > safety. The problem with C these days is that people still use it when they really should not. C has it's place, and writing applications is not that place. > > And also C is frowned upon (and C++ too for that matter), cause > > most programmers are so lazy these days, and don't want to > > write code - but prefer to just 'link algorithms' that someone > > else wrote. Wrong, wrong, wrong. Those people using C these days either have to use it because a modern language can't yet target their platform, or they are too lazy to change their toolchain and continue with C in the face of overwhelming evidence it is the wrong thing to do. > > […] > > There are only two reasons we are stuck with C, until we get to > radically change computer architectures, UNIX like OSes, and > embedded developers that won't use anything else even at point > gun. > C is a portable assembly language, it is not really a high level language. There are those who will not change and will use C till they drop dead. That is their problem. There are those who use C because the only other option is assembly language, so they make the right decision. This is an indicator that high-level language toolchain manufacturers have failed to port to their platform. I'll wager there are still a lot of 8051s out there. I'll also wager the C++ compilers for that target do not realise C++, but a subset that is worse than using C. Even after 14 years of improvement. It is going to be interesting what happens when Rust begins to have to toolchains to deal with microcontrollers. Hopefully though ARM cores dominate now, especially given the silicon area is reputedly smaller than 8051. I've been out of the smartcard arena for over a decade now, and yet I bet it is all still very much the same. > […] > -- Russel. ========================================== Dr Russel Winder t: +44 20 7585 2200 41 Buckmaster Road m: +44 7770 465 077 London SW11 1EN, UK w: www.russel.org.uk
Description: This is a digitally signed message part