Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

The C language is the most better best language in the world

Name: Anonymous 2018-12-26 17:49

Everything is possible in C.

And not just because it’s a Turing complete language. Brainfuck is, too, but I want to see how you program a Kernel driven hardware driver with that.

Just kidding. I love Brainfuck.

But Turing complete is just theoretical, so the real strength of C are not theoretical, they are practical. The design is simple. Most C tokens compile down to one assembly opcode, some to two, three. But that’s it. So it’s efficient and it’s machine-near. It gets to the metal, how some people express it.

And it’s not only that C is fast. It is capable to do everything that is going on in the computer on a hardware level. Up to programming a whole operating system. If there are some processor features, that are not directly supported by the language standard, you will find a week later an update of your GCC where it’s implemented as an intrinsic or if not, you just put it in inline assembly.

C has no problem with that. Because there is very few abstraction. C loves the machine, the machines loves C, the operating system is a product of C, the OS of this world love C and compilers are mostly made of C, and they in return - love C.

The true power comes with this universality. Everything that does something for real in done in C or is done in a way that is compatible with C, means also compatible with the system. So I got lying around libraries about AI programming, a whole text based web browser library, or the Gecko library from Mozilla/Chrome is also done in C. There is just a library for everything in C, you just have to quickly scan the repository, ah! There it is! Install, include, done.

Edit: Chrome and Firefox are done in C++, Chrome doesn’t use Gecko. My fault. But they should have used C :D They are prefect examples for it. Well, if you program C++ as “C with objects” it’s what I mean; keep it simple. C++ is acceptable if you don’t use all those complex features. And I think, they didn’t.

No waiting for some project that had it’s update five months ago and the people promised to port the function XYZ to your language. Which is something you will experience on Java or Python all the time. This doesn’t happen in C, because the mechanism how the system works is directly callable by C.

It’s the system language, so ka?

And while you have to learn months long certain programming paradigm before you can write something in other languages, you just are directly connected to the machine. You got an idea? You code it down.

There is nothing that C can’t do. And there’s nothing that C can’t do well. If it can’t do some weird thing not well, then teach it. Then it can. Like all those library coders have done before you. Oh! They planned to do a library for C++? Bummer. So we can’t access that?

Wrong. All doors are open.

It’s the pirate language. Just enter the enemy ship and get the booty!

Okay, to get a whole C++ library up and running isn’t that easy, I admit. But it’s done with some minimal header files. Whatever.

Every layer you put between you and the machine with a language will strip away things you can do with that language. It might be convenient for some small tasks but the general usefulness gets smaller and smaller. Best example Prolog.

So, without a paradigm you can do everything. It’s in your hand, commander. Program everything you want or you can think of, in every style or every method that the machine is capable of and you can do it with a maximum of efficiency.

That is C. C is extremely modern with this concept. It always was a revolutionary language. One, that is unique with this quality.

Name: Anonymous 2018-12-29 12:25

People often gripe about the STL but what Alex Stepanov created is truly a thing of beauty. It was truly radical at the time. It’s even radical now considering that generic programming is still not mainstream.

However, it isn’t what most people are used to. Most people still don’t understand what iterators are. For those that do not know, iterators are a generalization of a pointer. Pointers are a subset of iterators.

People don’t get the STL because people can’t math.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List