You know, I had endless discussions with other programmers about this issue. Unfortunately there are far too many of those who think that developing in C++ means that they have to implement everything as classes which of course is utter nonsense and more often than not creates really bad and inefficient code. I rarely write programs which have more than 50% of their code in classes. For too much stuff it's just not worth it.(When people say C++, they typically imply classes, etc, even though you don't have to use them -that's all).
[Fixed] Another Hexen ACS Bug
Moderator: GZDoom Developers
Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
-
- Lead GZDoom+Raze Developer
- Posts: 49183
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
C++ is C++, no matter how much C-compatible code is in there. As C++ is mostly a superset of C I really don't see the point of your extremely pedantic differentiation. As it is the code no longer compiles as C therefore it is no longer C. Period. It doesn't matter that large parts of it are converted C code. It's still C++.
-
- Posts: 10002
- Joined: Fri Jul 18, 2003 6:18 pm
- Location: Idaho Falls, ID
Let's not get into yet another pointless debate about semantics.
AFAIK, Doom was written entirely in C. If I'm wrong, I'm certain someone here will correct me, most likely in a rude manner. But I'm pretty sure I'm right on that point.
It would logically follow that the released source code was C. However, as Graf points out, enough C++ code has been added to it that trying to remove that code and get the code to compile as purely C code would be a pain, and probably just wasted effort. C++ is an upgrade to C and supports ~90% of its features, and then adds stuff that is either really useful or a waste of time depending on who you talk to.
But the short answer IS that ZDoom is written in C++.
AFAIK, Doom was written entirely in C. If I'm wrong, I'm certain someone here will correct me, most likely in a rude manner. But I'm pretty sure I'm right on that point.
It would logically follow that the released source code was C. However, as Graf points out, enough C++ code has been added to it that trying to remove that code and get the code to compile as purely C code would be a pain, and probably just wasted effort. C++ is an upgrade to C and supports ~90% of its features, and then adds stuff that is either really useful or a waste of time depending on who you talk to.
But the short answer IS that ZDoom is written in C++.
-
- Posts: 2033
- Joined: Sat Jul 19, 2003 6:15 am
- Operating System Version (Optional): Tumbleweed x64
- Graphics Processor: Intel with Vulkan/Metal Support
- Location: Central Germany
-
- Lead GZDoom+Raze Developer
- Posts: 49183
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
-
- Lead GZDoom+Raze Developer
- Posts: 49183
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
I have nothing further to say about that. That's 100% the way it is.HotWax wrote:Let's not get into yet another pointless debate about semantics.
AFAIK, Doom was written entirely in C. If I'm wrong, I'm certain someone here will correct me, most likely in a rude manner. But I'm pretty sure I'm right on that point.
It would logically follow that the released source code was C. However, as Graf points out, enough C++ code has been added to it that trying to remove that code and get the code to compile as purely C code would be a pain, and probably just wasted effort. C++ is an upgrade to C and supports ~90% of its features, and then adds stuff that is either really useful or a waste of time depending on who you talk to.
But the short answer IS that ZDoom is written in C++.
-
- Posts: 405
- Joined: Thu Jul 17, 2003 10:10 pm
Nope. You again are not attempting to understand what I wrote (just like the PWAD thing). Try reading the post and not have your mind made up what I'm saying.
At not time did I say ALL of it was C, just that some of it technically is C. Let's say I take a foo.C program, now I make it foo.CPP. Is it now C++? Of course not. It's that simple Graf. Edit: Nor does combining it with "real" C++ code make it C++, no more so than the ZLIB linking example that you acknowledge does. Think outside of the box.
The distinction is important to make to anyone not familiar with this topic, otherwise they might be led to the invalid conclusion later on. That you avoid the distinction is more a matter of stubborness vs a simple fact as clearly illustrated by my example. And yes some of the code in ZDOOM essentially underwent just that transformation. And NO, you can't compile ZDOOM as C - never ever said that anywhere at any time.
Just think about it. That's 100% the way it is.
Btw, your are the one being pedantic with your repeated "superset", etc (something that was clearly obvious in the context of my post need not be repeated over and over and over). I was merely pointing out that the code is technically C and renaming it to CPP does not make it C++ (edit left out the ++ ). Period. Now matter how stubborn you want to be.
And C++ support 99+% (maybe 100%) of the features of C AFAIK (assuming you fix type errors). Anyway, never had a problem changing from C to CPP (which is a lot of code).
I have written approximately 1 million lines of code none of which use "classes" yet all are CPP I could switch them to C with very little effort. In fact, I switched about 300,000 lines from C to C++ also with very little effort since they were devoid of "C++" specific features.
At not time did I say ALL of it was C, just that some of it technically is C. Let's say I take a foo.C program, now I make it foo.CPP. Is it now C++? Of course not. It's that simple Graf. Edit: Nor does combining it with "real" C++ code make it C++, no more so than the ZLIB linking example that you acknowledge does. Think outside of the box.
The distinction is important to make to anyone not familiar with this topic, otherwise they might be led to the invalid conclusion later on. That you avoid the distinction is more a matter of stubborness vs a simple fact as clearly illustrated by my example. And yes some of the code in ZDOOM essentially underwent just that transformation. And NO, you can't compile ZDOOM as C - never ever said that anywhere at any time.
Just think about it. That's 100% the way it is.
Btw, your are the one being pedantic with your repeated "superset", etc (something that was clearly obvious in the context of my post need not be repeated over and over and over). I was merely pointing out that the code is technically C and renaming it to CPP does not make it C++ (edit left out the ++ ). Period. Now matter how stubborn you want to be.
And C++ support 99+% (maybe 100%) of the features of C AFAIK (assuming you fix type errors). Anyway, never had a problem changing from C to CPP (which is a lot of code).
I have written approximately 1 million lines of code none of which use "classes" yet all are CPP I could switch them to C with very little effort. In fact, I switched about 300,000 lines from C to C++ also with very little effort since they were devoid of "C++" specific features.
Last edited by randomlag on Fri Nov 14, 2003 11:28 am, edited 3 times in total.
-
- Lead GZDoom+Raze Developer
- Posts: 49183
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
-
- Posts: 405
- Joined: Thu Jul 17, 2003 10:10 pm
-
- Lead GZDoom+Raze Developer
- Posts: 49183
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
-
- Posts: 405
- Joined: Thu Jul 17, 2003 10:10 pm
Puberty reaction? That wasn't rude at all. "AFAIK" is generally accepted to be a conversational tone except to those wanting some sort of hormone feud.
Seems like you can't actually do a 1-1 debate. Sometimes you just have to acknowledge the other guy Graf. 35 years isn't a very long time to be too cocky.
Seems like you can't actually do a 1-1 debate. Sometimes you just have to acknowledge the other guy Graf. 35 years isn't a very long time to be too cocky.
-
- Posts: 10002
- Joined: Fri Jul 18, 2003 6:18 pm
- Location: Idaho Falls, ID
It's not that he's not trying to understand you. It's that he doesn't give a shit what you say, and neither does anybody else.randomlag wrote:Nope. You again are not attempting to understand what I wrote (just like the PWAD thing). Try reading the post and not have your mind made up what I'm saying.
Do you wake up in the morning crying because no matter how much you flap your gums you just can't seem to gain acceptance from 100% of the world?randomlag wrote:At not time did I say ALL of it was C, just that some of it technically is C.
Nobody argued this point.randomlag wrote:Let's say I take a foo.C program, now I make it foo.CPP. Is it now C++? Of course not.
If the entire program won't compile in C, then it's not C. The fact that I can find this line (or something very similar) in just about every programming language on the planet:randomlag wrote:It's that simple Graf. Edit: Nor does combining it with "real" C++ code make it C++, no more so than the ZLIB linking example that you acknowledge does. Think outside of the box.
a = b + 2;
Does not suddenly mean that THAT PARTICULAR PART of the program is Java. Or C. Or C++. Or whatever. You have to take the entire project as a whole. You're not stupid enough not to understand this, you just keep opening your mouth making yourself look more petty and stupid by the minute, and then keep blabbing hoping to justify the drivel you keep spouting. It's a vicious cycle really. Perhaps you should just stop talking.
Do you honestly think anyone not intimitely familiar with these forums really reads your posts? Once, maybe, and then never, ever again.randomlag wrote:The distinction is important to make to anyone not familiar with this topic,
I can see it now. Some poor guy is going to be in councelling because he was MISLED by some forum which made him believe that CPP = C++. Maybe it'll all just drive him insane, and he'll go on a killing spree, preferably starting with you.randomlag wrote:otherwise they might be led to the invalid conclusion later on.
Look, everyone! RL is talking about OTHER people being stubborn!randomlag wrote:That you avoid the distinction is more a matter of stubborness
You jack off telling yourself how cool you are, don't you?randomlag wrote:vs a simple fact as clearly illustrated by my example.
What? Renaming from .C to .CPP, or commiting suicide after having to listen to you talk? I've stopped caring where you're going with this... No, wait... I've never cared.randomlag wrote:And yes some of the code in ZDOOM essentially underwent just that transformation.
Wow that's quite a concession for you. Maybe there's hope for you after all!randomlag wrote:And NO, you can't compile ZDOOM as C
Nevermind.randomlag wrote: - never ever said that anywhere at any time.
Wow, that was a really deep thought. Hey, what if something that is totally inconsequential was true? Holy shit, thanks man. Now let's move the fuck on.randomlag wrote:Just think about it. That's 100% the way it is.
...Sigh...randomlag wrote:Btw,
Good, then shutup.randomlag wrote:your are the one being pedantic with your repeated "superset", etc (something that was clearly obvious in the context of my post need not be repeated over and over and over).
...making a jackass of yourself.randomlag wrote:I was merely
...that no one cares?randomlag wrote:pointing out
Holy shit it's like we're on a never-ending merry-go-round sitting next to the most annoying person in hell.randomlag wrote:that the code is technically C and renaming it to CPP does not make it C++
There's that word again. I don't think it means what you think it means.randomlag wrote:Period. Now matter how stubborn you want to be.
Oh, so in other words, you could compile a C program as C++ with pretty much no problem, so it could be said that C == C++, and this whole argument is moot? In that case, will you please shutup? If not, will you shutup anyway? Just... you know....... shutup.randomlag wrote:]And C++ support 99+% (maybe 100%) of the features of C AFAIK (assuming you fix type errors).
... going and going and going and going and....randomlag wrote:Anyway, never had a problem changing from C to CPP (which is a lot of code).
Your mother must be really proud. 1 person down, 3,999,999,999 people to go.randomlag wrote:I have written approximately 1 million lines of code
Holy shit, you're inventing new arguments so that you can keep blabbering! Does the horror never end?!randomlag wrote:none of which use "classes" yet all are CPP
And as you just pointed out, you could switch C to CPP with very little effort. WHY WON'T YOU STOP TALKING?randomlag wrote:I could switch them to C with very little effort.
Yay, congratulations! You successfully converted files that required no conversion! What did you do, rename them from CPP to C and call it C? Good for you! Now if you'll excuse me, I'm going to go nail my testicles to a wall, because it's more enjoyable than what I'm doing right now.randomlag wrote:In fact, I switched about 300,000 lines from C to C++ also with very little effort since they were devoid of "C++" specific features.
-
- Lead GZDoom+Raze Developer
- Posts: 49183
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
The repetetiveness of this kind of discussion reminds me of an old saying:
In a discussion with RandomLag:
======================
§1 RandomLag is always right.
§2 When in doubt, see §1.
PS.
You won't get any more meaningful input from me regarding this topic! Although the last post by HotWax really made me laugh. That was great, dude!
In a discussion with RandomLag:
======================
§1 RandomLag is always right.
§2 When in doubt, see §1.
PS.
You won't get any more meaningful input from me regarding this topic! Although the last post by HotWax really made me laugh. That was great, dude!
-
- Posts: 1066
- Joined: Tue Jul 15, 2003 5:13 pm
- Location: That little island pritch created.
-
- Posts: 912
- Joined: Tue Jul 15, 2003 5:12 pm
well isn't C also valid C++, I mean you can compile pretty much any C code in a C++ compiler (as long as you don't have any C++ keywords like new, delete etc used in the C code), so anything in C is also in C++ (C++ is a superset of C, check)... but then if you code something in C++ that isn't valid C, it's in C++. So C is C++ but C++ is not C, unless you code the C++ to be valid C, because C is C++, so C++ can be C, but only because you've coded the C++ in C, and since C is valid C++ you now have code that is C and C++, even though it doesn't use anything specific to C++, because C is C++.
What were we talking about again?
What were we talking about again?
Have you guys still learned nothing? Look:
"randomlag" once said:
"randomlag" once said:
YHBT. YHL. HAND.I dont care about the paying thing. When I say I enjoy toying with
the replies, that's exactly what I mean. It's fun to twist their
words back at them and show them how contradictory it all becomes.
Yup, I'm just one SOB. Besides, I'm way too old to change now.
Don't tell.