He thinks C is a difficult language to program in

>he thinks C is a difficult language to program in

>he think he's trolling

>C
More like D-

Bait thread

It's not that it's difficult.

It's just bad.

C++ is a horrible language. It's made more horrible by the fact that a lot of substandard programmers use it, to the point where it's much much easier to generate total and utter crap with it. Quite frankly, even if the choice of C were to do *nothing* but keep the C++ programmers out, that in itself would be a huge reason to use C.

In other words: the choice of C is the only sane choice. I know Miles Bader jokingly said "to piss you off", but it's actually true. I've come to the conclusion that any programmer that would prefer the project to be in C++ over C is likely a programmer that I really *would* prefer to piss off, so that he doesn't come and screw up any project I'm involved with.

C++ leads to really really bad design choices. You invariably start using the "nice" library features of the language like STL and Boost and other total and utter crap, that may "help" you program, but causes:

>infinite amounts of pain when they don't work (and anybody who tells me that STL and especially Boost are stable and portable is just so full of BS that it's not even funny)
>inefficient abstracted programming models where two years down the road you notice that some abstraction wasn't very efficient, but now all your code depends on all the nice object models around it, and you cannot fix it without rewriting your app.

In other words, the only way to do good, efficient, and system-level and portable C++ ends up to limit yourself to all the things that are basically available in C. And limiting your project to C means that people don't screw that up, and also means that you get a lot of programmers that do actually understand low-level issues and don't screw things up with any idiotic "object model" crap.

So I'm sorry, but for something like git, where efficiency was a primary objective, the "advantages" of C++ is just a huge mistake. The fact that we also piss off people who cannot see that is just a big advantage.

But I'm sure you'd like it more than git.

Write a program in C that takes a url to a Sup Forums thread and prints out the 5 post numbers with the most replies.

Hey where are you OP? I thought you were good at C.

How would you even do that? Wouldn't Javascript be massively more convenient?

It's one of the most user friendly languages ever, that's why it's bad for dangerous low level stuff.

>claims to know C
>can't even do basic tasks
You must be some super kernel driver expert then.

parse the html of the thread

I'm not OP. I don't know how to program.

>Wouldn't Javascript be massively more convenient?
Only if you're a nu-male but C would still be faster.

Faster at run time. But does it truly matter for such a trivial task?

Ok, you obviously seem to know what you are doing. Why don't you prove you're not a nu-male and write the program in C?

...

I like C, but this is just autism. Don't use JavaScript though, use Python.
Use the best tool for the job.

This was written by a systems programmer whose knowledge of C++ is grossly out of date, and whose pride and joy Git actually relies on shell scripts, Perl and Tcl, a tacit admission that maybe C isn't convenient or powerful enough for _everything_.

Git was also a trash fire of usability for many years (and still is, to some degree), and had it not been for Github, it would be relegated to being that weird tool you use to commit to the Linux kernel, with everybody else using Mercurial - written in PYTHON of all things.

Linus isn't just a C fanboy, he's a fanboy of the Unix way. Which means, use C when high-performance and/or bare-metal programming is needed, otherwise use interpreted scripting languages for routine tasks. It's not that languages other than C are bad, it's that there should be a clear division between high-level and low-level languages, rather than trying to be one-size fits all.

Your argument can stand on its own without mentioning some dumbass "UNIX way" that's an appeal-to-authority and a no-true-Scotsman on its face.

And that same strategy led UNIX to be wildly unportable to non-UNIX systems, to the point where ports to other systems need a little miniature UNIX environment to go with them. It's 2017 and Git for Windows still needs some dumbass "Git Bash" environment, as if I didn't already have 3-4 other UNIX-transplant environments already.

Your argument can stand on its own without mentioning some dumbass "UNIX way" that's an appeal-to-authority and a no-true-Scotsman on its face.

And that same strategy led git to be wildly unportable to non-UNIX systems, to the point where ports to other systems need a little miniature UNIX environment to go with them. It's 2017 and Git for Windows still needs some dumbass "Git Bash" environment, as if I didn't already have 3-4 other UNIX-transplant environments already.

NOT
AN
ARGUMENT

>he hates JavaScript

>look at this dumb fuck hating on python

>>Only if you're a nu-male but C would still be faster.
>Dumb fuck wastes 10x time writing in c as opposed to some higher level language on a trivial task.
>The c program implementation executes slightly more quickly, but the difference is sufficiently small that the user doesn't notice the difference

It must be nice to not have a strong dislike of python.

This.

I'd like to like Python, but I don't.

It's not hard, just cumbersome, and even the most minor mistake renders your program completely vulnerable to exploits. It's a shit language.

Haskell would be the perfect solution for git and for package managers in general