>2016
>C89 is still a thing
How could you let this happen /g/?
>>54835372
C is not exactly a fast changing language.
There are only two reasons to use C. The first is if you're working with legacy code. The second is if you're a braindead masochistic retard. Which one applies to you, OP?
>>54835448
what am I even reading?
>>54835448
kill yourself phpfaglord
>>54835448
The only 2 valid reasons to use C nowdays is if you're programming embedded machines or writing a kernel. For everything else there are better languages.
>>54836047
>programming embedded machines or writing a kernel
There are better languages for those tasks too, anon.
Name 1 (1) good reason for an intelligent person (i.e., someone in the 95th percentile in coding ability) to use C over C++14.
Microsoft's Compiler doesn't support newer versions.
>>54836361
It's easy to call library from made with C from other languages.
Interfacing c++ is usually hard or impossible.
>>54836489
only if you're mentally impaired and i kno you are lol
Actually C99 is breddy gud, don't know why isn't it still widely adopted.
>>54836553
> what is ABI
>>54836361
>>54836222
- C++ has a shitton of features, most of them you will never use or are just there for backwards compatibility
- C++ is used by a shitton of "substandard programmers" (these arent my words this is what torvalds said: http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918 )
- this is probably not true for every case but C is/can be faster than C++
- There is no way to reference C++ stuff outside of C++, while you can use C from nearly any language you need to write bindings for C++
regarding the osdev: yes you can write kernels in other languages than C but only if you reduce everything you do to a minimum set of language features that work without a standard library so you can just use C straight away. I recall someone writing a kernel in D but because of the absense of a garbage collector etc. he couldnt use classes, strings etc. only structs and functions so in the end he couldve just used C in the first place.
>>54836664
Good writeup. C++ isn't best for every purpose, and unlike Java or Python, a shitty programmer won't be able to make decent code with it.
But for real why are so many people still writing OSes? Isn't Linux, the various BSDs, MacOS, the Microsoft OSes, Android, and whatever else is out there basically enough for virtually any purpose?
>>54836664
>he doesn't know about Ada
ok kid
>>54836762
sure they are, and i doubt that any hobby kernel will ever replace anything for real use but wiritng one teaches you how shit actually works.