Hacker News new | ask | show | jobs
by dragontamer 4458 days ago
And significant parts are written in Assembly as well. But Assembly isn't the "OS Language" of either Linux nor OSX :-p

What I mean by OS Language, is the language that interacts with core OS Libraries. The OS Language of Android is Java. iOS is ObjC. OSX core is either ObjC or C. Linux is definitely C based. (ioctl)

Microsoft is either C++ or C#. (DirectX, Ribbons, etc. etc. are behind COM interfaces that are most easily interfaced by C++ or C# code)

1 comments

If nothing else, OS X's I/O Kit API is C++ish (it's 'Embedded C++').
Wow, is that thing really embedded C++? Bjarne always said that embedded C++ deserved to die if it wasn't already dying, mainly because it appears to remove all the useful bits of C++ to make it some static-typed-only inheritance mush put on top of C, as I understand (most likely wrong).
Yup http://en.wikipedia.org/wiki/I/O_Kit. I mean Embedded C++ is not really a language, any C++ compiler can be turned into an "Embedded C++ compiler" by turning some features off. As to the Bjarne quote, a lot of things that are nice in application development can become tricky when you are closer to the metal.
Thanks for the link. The bare metal thing is probably why C guys typically see C++ as bloated and why I look at C and think "how do you write anything?!?!!"; I live happily in C++ land you see.