3 ms·
With modern day computing power and compilers there are better ways to tell the computer and explain your fellow programmer what you want the computer to do. In
by dep_b 10y ago
With modern day computing power and compilers there are better ways to tell the computer and explain your fellow programmer what you want the computer to do. In the end giving in the same (or even more efficient) CPU instructions.
Sniper rifles are improving every year. Yet a rifle from the 40's can kill people too. Both deadly in the hands of an expert and dangerous in the hands of an amateur. It's the same with C. You should be able to understand the computer on that level but you don't need C just to prove it.
- stinos 10y agoIn the end giving in the same (or even more efficient) CPU instructions. We both know that is not always true and heavily depends on the type of software though.. Take https://github.com/micropython/micropython https://github.com/micropython/micropython for instance: what higher level language but C would allow that to run with the same performance as it has now, on as much different devices? C++ would be a viable answer, but when used e.g. as C + templates it's basically still a form of C and anyway your complaints have been raised in nearly the exact same wordings about C++ laguage as well..
- pjmlp 10y agoTurbo Pascal, Think Pascal, Quick Pascal, FreePascal, Modula-2, Ada, Delphi, MikroElektronika Pascal The availability of compilers for a specific architecture is orthogonal to the language.
- stinos 10y agohmm got me there I guess. Never looked closely into those, can you summarize in what way thay are better than C? Less shoot-yourself-in-the-foot maybe?
- pjmlp 10y agoYes. Pascal dialects already in the late 80's, early 90's, allowed for: - type safe sub ranges - proper strings - type safe enumerations, enumerations as vector indexes - type safe allocation (new vs malloc) - type safe out parameters via references instead of pointers - bounds checking and checked arithmetic (you can explicit disable them if required for performance) - real modules via units - pointer arithmetic is more explicit As for MicroPython, MikroPascal from MikroElektronika supports all those tiny chips. http://www.mikroe.com/mikropascal/ http://www.mikroe.com/mikropascal/
- pjmlp 10y ago> With modern day computing power and compilers there are better ways to tell the computer and explain your fellow programmer what you want the computer to do. In the end giving in the same (or even more efficient) CPU instructions. It was already like that 10 years before C was invented, but their authors didn't want to invest too much resources creating an Extended Algol, PL/I or similar compiler. ESPOL and NEWP were already available in the 60's.
- quickben 10y agoModern day CPUs are improving 3% a generation, and modern day compilers capped off looooong time ago. Better programming practices will return simply because people will want more and won't be able to get it. This CPU power galore is just a short lived period before people want full phone VR on a battery for two hours or what have you. You can sort of see what's in demand now for $200k jobs and the tools there don't appear to be very high level or user friendly. If anything they all require few heavy courses in statistics.