whoa i forgot my umbrella, wasn't ready for this shitstorm
[QUOTE=ROBO_DONUT;16381369]
I'm sure you would react similarly if someone jumped into your mailing list and started telling you how wrong you were.[/QUOTE]
Me reacting similarly would look like this:
NO YOU'RE FULL OF BULLSHIT, ONLY IDIOT PROGRAMMERS USE C, C++ IS THE BEST
[editline]07:36PM[/editline]
[QUOTE=efeX;16381353]no guys C is better cause linus ssaid so! he made the linux kernel and stuff so he must be right.[/QUOTE]
And, really, the truth is is that no one but the Linux community really gives a shit about it.
Linux isn't Windows. Get over it.
[QUOTE=nullsquared;16381455]Me reacting similarly would look like this:
NO YOU'RE FULL OF BULLSHIT, ONLY IDIOT PROGRAMMERS USE C, C++ IS THE BEST
[editline]07:36PM[/editline]
And, really, the truth is is that no one but the Linux community really gives a shit about it.
Linux isn't Windows. Get over it.[/QUOTE]
You know, we were having a perfectly civil discussion before you jumped in and went completely insane.
[QUOTE=nullsquared;16380862]Linus said that because he's an idiot.
Use C++.[/QUOTE]
There's a difference between being arrogant and exaggerating and being an idiot. Linus is obviously much more capable than both of us are. He knows how a computer works better than we both know how to piss.
He's obviously not an idiot.
However, he *is* arrogant, and *does* over exaggerate about *everything*. You just need to extract the kernel of truth and run with it, instead of bothering yourself with every comment he makes about C++ programmers as if they were aimed at you particularly.
Linux (kernel) programmers are a community of C programmers. They deal with hard to write, hard to read, hard to debug, low-level code. Of *course* they'll see a lot of C++ programmers who just suck at that, since C++ programmers are typically dealing with higher-end code and nice OOP abstractions and neat templated libraries! They just aren't the kind of guys that are suited to understand how low-level shit really works.
Does this mean using C++ makes you a C newbie? Of course not! It just means that the average C++ programmer is just as good as the average Java / C# programmer at the low-level stuff. And since the kernel needs to be as good as it can realistically be, then in my opinion, C++ programmers just won't cut it.
Now you'll probably say that git isn't the kernel - No, but Linus wrote git. He's going to expect the same level of performance and code quality than the Linux kernel has (Don't confuse quality with design here).
That's how I see it, anyway.
[quote]And, really, the truth is is that no one but the Linux community really gives a shit about it.
Linux isn't Windows. Get over it. [/quote]
The linux community actually understands what Linus means to say and doesn't overreact about his rants. They don't use C because Linus said so, but because it's convenient.
[QUOTE=nullsquared;16381455]Me reacting similarly would look like this:
NO YOU'RE FULL OF BULLSHIT, ONLY IDIOT PROGRAMMERS USE C, C++ IS THE BEST
[editline]07:36PM[/editline]
And, really, the truth is is that no one but the Linux community really gives a shit about it.
Linux isn't Windows. Get over it.[/QUOTE]
you missed my sarcasm.
[QUOTE=gparent;16381540] since C++ programmers are typically dealing with higher-end code and nice OOP abstractions and neat templated libraries! They just aren't the kind of guys that are suited to understand how low-level shit really works..[/QUOTE]
You [b]do[/b] understand that C++ isn't any higher level than C, correct? Using C over C++ doesn't somehow make you a low-level programming god.
[QUOTE=nullsquared;16381899]You [b]do[/b] understand that C++ isn't any higher level than C, correct? Using C over C++ doesn't somehow make you a low-level programming god.[/QUOTE]
Of course I do. I'm sure you're aware that I'm not a C++ newbie.
But I'm not talking about the core language here. I'm talking about the exact reason why we tell people not to learn C before C++. Because C++ is usually done differently. It usually *is* about higher-level structures and ways of writing code, even when you could write the same thing in a low-level fashion.
The language has a lot less to do with it. Linus is perfectly aware you can write C in C++.
C# > c/c++
[QUOTE=gparent;16381940]Of course I do. I'm sure you're aware that I'm not a C++ newbie.
But I'm not talking about the core language here. I'm talking about the exact reason why we tell people not to learn C before C++. Because C++ is usually done differently. It usually *is* about higher-level structures and ways of writing code, even when you could write the same thing in a low-level fashion.
The language has a lot less to do with it. Linus is perfectly aware you can write C in C++.[/QUOTE]
You're right. And you just completely contradicted your previous post, which implied that using C++ means you're not suited to understand all of the low-level stuff.
[QUOTE=nullsquared;16382000]You're right. And you just completely contradicted your previous post, which implied that using C++ means you're not suited to understand all of the low-level stuff.[/QUOTE]
No, not at all. My previous post was talking about average C++ programmers, who typically aren't well grounded in C.
[QUOTE=gparent;16382085]No, not at all. My previous post was talking about average C++ programmers, who typically aren't well grounded in C.[/QUOTE]
Average C programmers aren't well grounded in low-level activities either. What's your point?
[QUOTE=nullsquared;16382102]Average C programmers aren't well grounded in low-level activities either. What's your point?[/QUOTE]
Average C programmers who aren't well versed in low-level activities aren't even working on the kernel, so that's irrelevant. My point is pretty damn clear - The average C++ programmer Linus sees is usually a high-level code-monkey, while the C programmers he deals with everyday are typically low-level gods. The very reason why the C++ programmers aren't working on the kernel either.
[QUOTE]Depends on what you want to do.[/QUOTE]
-A really simple shell
-A calculator
-Some cool apps
-Meaby a file managment system
-a DDoS Client :EVIL:
-A telnet, SSH and other stuff client
-General stuff
Not many games though, unless they are text based (text = simple), or unless I can find a good language for GUIs and stuff
I tend to think that C is the more pure experience. It really does feel like portable assembly, whereas C++ has all these hacks to make it seem easier to begin with, and don't get me wrong, C++ is easier to read.
However, when I add two things together, it does whatever it feels like doing. Operator overloading. However, I know when I add two things in C, it happens exactly the same way no matter what it is. It is just a bunch of data in a memory location to C. No v-tables, smart pointers, or any crazy thing like that.
C is more consistent in terms of implementation, but I just can't bear to see some things implemented structurally without OOP :psyduck:
(:911: alan cox)
[QUOTE=HubmaN V2;16386811]C is more consistent in terms of implementation, but I just can't bear to see some things implemented structurally without OOP :psyduck:
(:911: alan cox)[/QUOTE]
You can do OOP in C.
[QUOTE=jA_cOp;16387821]You can do OOP in C.[/QUOTE]
Yes, but it isn't implemented explicitly, nor is it one at heart.
Yo dawg use C#
yeah, use C# dawg.
[QUOTE=Eudoxia;16383178]-A really simple shell
-A calculator
-Some cool apps
-Meaby a file managment system
-a DDoS Client :EVIL:
-A telnet, SSH and other stuff client
-General stuff
Not many games though, unless they are text based (text = simple), or unless I can find a good language for GUIs and stuff[/QUOTE]
Yeah, use C# or Java for that.
[B]Edit:[/B]
Forgot to add a reason:
You don't have to care about memory managment and pointers and hard to find bugs that come with them. And the slight loss in speed doesn't matter for what you want to do with it.
And a few other reasons, but I don't have time to list them now.
[QUOTE=Cathbadh;16386148]
However, when I add two things together, it does whatever it feels like doing.[/QUOTE]
When I boot my computer, it does whatever it feels like doing. So instead I just manually flip switches on the motherboard.
c++ is much much much better, it's more versatile, compiling takes up less space (not much but still) there is about 300 advantages over C#
too, many, neeeeeeerds *explode*
[QUOTE=wingless;16391273]c++ is much much much better, it's more versatile, compiling takes up less space (not much but still) there is about 300 advantages over C#[/QUOTE]
While C++ might be faster, C# is really good for making applications or tools.
And in many cases you can do more with less code.
[QUOTE=noctune9;16391336]While C++ might be faster, C# is really good for making applications or tools.
And in many cases you can do more with less code.[/QUOTE]
s/C#/Objective-C/
And if you want to do otherwise with Apple frameworks there's Carbon.
[QUOTE=Cathbadh;16386148]However, when I add two things together, it does whatever it feels like doing. Operator overloading.[/QUOTE]
No, it doesn't. It does whatever the programmer felt like making it do. And there's absolutely no difference between making a "Vec3 Vec_Add(Vec3* left, Vec3* right)" and a "const Vec3 operator+(const Vec3& left, const Vec3& right)" except the syntax - In both cases the functions can be poorly written.
[quote]c++ is much much much better, it's more versatile, compiling takes up less space (not much but still) there is about 300 advantages over C#[/quote]
What? C# executables are a lot smaller than C++ executables due to (AFAIK) relying on .NET to execute what little bytecode is left in the exe.
[QUOTE=HubmaN V2;16392038]s/C#/Objective-C/
And if you want to do otherwise with Apple frameworks there's Carbon.[/QUOTE]
yeah, obj-c.. yeah.
Regarding C#...
I have problems installing all of Microsoft's Visual whatever stuff. Installer freezes when installing Microsoft .NET Framework
[QUOTE=gparent;16392147]No, it doesn't. It does whatever the programmer felt like making it do. And there's absolutely no difference between making a "Vec3 Vec_Add(Vec3* left, Vec3* right)" and a "const Vec3 operator+(const Vec3& left, const Vec3& right)" except the syntax - In both cases the functions can be poorly written.
[/QUOTE]
No argument here, my point is that it is always subject to change, especially with inheritance. Left-shifting cout "Hello, world" times? This isn't portable assembly.
[QUOTE=Eudoxia;16395863]Regarding C#...
I have problems installing all of Microsoft's Visual whatever stuff. Installer freezes when installing Microsoft .NET Framework[/QUOTE]
Is your computer by any chance, a pentium 2 or lower?
Sorry, you need to Log In to post a reply to this thread.