Why does this board shills it so much? It's not even that good

Why does this board shills it so much? It's not even that good.
>but muh performance
Juming through hoops and writing messy code isn'f worth saving a few cpu cycles.
>but muh memory management
Not important unless you really need to squeeze the maximum out of it. Also a giant footgun

Attached: cnile.png (840x859, 286.74K)

Also yes, I am a phonefag with fat fingers.

it just wrks

Should I learn this or C++?

The langauge you need to learn depends on what you need it for. It makes sence to learn C++ for gamedev but it's useless for web and mobile dev.

>muh design patterns
kys, the state of the software in 2022 shows that desing patterns are a fucking meme, spaghetti unbloated code is the way

You can write unbloated software in any language. The current state of software is due to companies caring more about appearance than performance.

There are two groups of shills.
Shill group 1 can barely write a fizzbuzz but is able to sound super smart by saying that {Python, Rust, JS} programmers are simply too stupid to understand it. You can start spouting whatever nonsense supports the point you're currently arguing even if you don't have any serious experience with it.
Shill group 2 has terminal Unixbrain. Some of them do genuinely know their shit, but they're allergic to modern complexity and wish to return to a time when all the details of a language could actually fit in your head. They don't even love modern C compilers. I'm sympathetic to this point of view (but I still think it's wrong). See Drew DeVault.

I guess C would be better for writing a compiler

>sence
beaner

It's a filter for separating script kiddies from actual programmers

>I guess C would be better for writing a compiler
A compiler can be written in any language that can output bytes. Python would be better than C.

If you can program in C you can program in anything. It's a great foundation language, that's why it's shilled so much.

>Juming through hoops and writing messy code isn'f worth saving a few cpu cycles.
Wrong.

>Writting compiler in an intepreted language written in C
Weak bait

If you can program you can program in anything. Learning syntax and some concepts you don't know is not hard.

>Jumping through hoops and writing messy code isn'f worth saving a few cpu cycles.

If you can't understand how to conceptualise and structure your code to take advantage of the ways C is simple, you probably aren't a great programmer to begin with. Design patterns are pleb filters.

Simply not true. Programming in Lisp is a totally different experience from programming in C. Totally different levels of abstractions. Programming in TCL is different from them both by a mile, everything is a string. Good luck programming in J.

Different languages have different faculties for how to organize code. You only think what you do because you've likely only used C-like languages, so you think "everything is like C". Everything that is C-like has the bit as its fundamental data type, but in TCL it's the string, in Lisp it's the list, in J it's a multidimensional array. These languages do not have any clue what a bit is.

Well, in that case this one is also wrong

This is pretty accurate I think (as someone who falls into the latter category). I wouldn't say I hate modern C compilers though. I love some of the more recent advances in C tooling, particularly address sanitizer which removed 99% of the pain of writing C for me.

Yeah it is

The real reason C is "shilled" so much is because it's the best general purpose language ... the problem with TCL, all Lisps, Perl, and the like, are that their "power" tends to make programs that are near impossible to understand and expand. Perl is my favorite scripting language but for some reason it fell to Python, still not sure why. I think Python makes people think they can make a program that makes sense, while perl embraces curtness

C is great; manual memory management isn't good because of "Maximum speed", and it's not a giant "footgun" unless you are an extremely (EXTREMELY) amateur programmer; it's great because it makes programs make more sense. When dealing with a string and you want to reference a section of it, that's a pointer at the starting letter and a length (or a pointer at the end). Dealing with filepaths is a breeze (something you do pretty fucking often when programming). You have a sequence of letters that's the whole path; the extension is just a pointer to the '.' before the extension; the filename is a pointer to the first letter of the filename; etc. You don't even need a length in this case because if you read the pointer at the filename it reads off the string until the terminating character.

Oh yeah the other great thing about C is its light ambiguity. It strikes the right balance between strict and not; maybe not strict enough sometimes. Go is total hell because you have to "catch" errors (whatever the fuck that means), and the errors are their own thing. Easier for a function to return a bad value that you can then check for. Less variables to handle, less codepaths to follow, and all you need to be able to do is remember to interpret a negative number as an error code instead of a real value (for example). Just give me a bad value and a manual to see what the bad value means went wrong.