Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Mod News New Jagged Alliance v1.13 version released

OSK

Arcane
Patron
Joined
Jan 24, 2007
Messages
8,004
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015 Codex 2016 - The Age of Grimoire Make the Codex Great Again! Serpent in the Staglands Dead State Divinity: Original Sin Project: Eternity Torment: Tides of Numenera Wasteland 2 Shadorwun: Hong Kong Divinity: Original Sin 2 BattleTech Pillars of Eternity 2: Deadfire
C++ fucking sucks.
 

talan

Augur
Joined
Nov 18, 2010
Messages
128
.NET is used everywhere - in enterprises, web sites, application development, research and even games (XNA, Unity).
It's not used in commercial software development. It's not used in operating system development. It's not used in device drivers. Basically, it's not used by anyone who needs to do real high performance programming. Why is that? Well, basically because it's not capable of it.
I don't understand your point. Because .NET isn't used in OS, device driver and high performance development; its not commerical software development? They're small sections of software development.

That's funny, because I used to be an assembly programmer and I switched to C the minute my boss showed me proof that C language ran just as fast. That was 1991. Prior to that the object code C language generated was not quite as efficient as assembly.
Quake 1 was released in 1996 and it was written in C and assembly because they couldn't get the performance out of C with what hand-crafted assembly could. If only John Carmack and Michael Abrash had your awesome boss they could have written it in just C.

Despite what you may think, C++ isn't the answer to everything. Not all operating systems are written in C++, Unix and unix-like OSs are written in C.
You think splitting hairs and arguing semantics will let you off the hook? :D
So I am splitting hairs because you said all OSs are written in C++, and I say thats wrong because some OSs are written in C?

Not all commercial software is written in C++, you're bullshitting completely.
Right! Some of it is still written in C! Oracle, for instance!
You're dodging like a motherfucker so I suspect you know the truth about commercial and industrial software development.
Funny you mention Oracle. Because they have products written completely in java (GlassFish, Netbeans, JDeveloper).


You want to say C++ is a good tool for certain jobs, go ahead, saying its the only tool for all programming is stupid. Really stupid. Only a delusional person could say that with a straight face

I didn't say that. In fact, I said that if Java had some better GUI layout tools and better runtime performance that I'd use it myself for small tasks. I hope your programming skills are better than your reading comprehension.
Fair enough. I didn't realise you were saying you'd use C++ and Java, and you'd only use java is it had better tools and performance. Thanks for clarifying that.

Let A, B be sets.
i) A is a subset of B.
ii) Therefore, B is a superset of A.


You assert that A is a subset of B, but A is a standalone set. It contains no part of B. B, on the other hand, incorporates A in its entirety and uses it as a base on which to expand. A is not derived from B but without A, B could not exist. B is a superset of A, but A is not a subset of B.
Set A can stand alone from B because A is a subset of B!

I'm skipping your a lot of your superset argument because you don't understand relationships between subsets and supersets.
Please have a look at this wikipedia article about subsets http://en.wikipedia.org/wiki/Subset and tell me the subset/superset aren't inter-related.

It's been 25 years since you could even BUY a C compiler that was not also a C++ compiler. It's the same compiler!
Found one: http://www.parallax.com/Store/Microcont ... roductName

ME: CLR isn't even RELATED to C/C++ except for Microsoft's pretentious and misleading branding.

YOU: I humbly disagree with you. Want to know who also disagrees with you? THE CREATOR OF C++

Bjarne Stroustrup: C++/CLI is a set of extensions to ISO C++ that provides an extremely complete "binding" of C++ to Microsoft's CLI (Common Language Infrastructure). It has been standardized by ECMA (ECMA-372). I am happy that it makes every feature of the CLI easily accessible from C++ and happy that C++/CLI is a far better language than its predecessor "Managed C++". However, I am less happy that C++/CLI achieves its goals by essentially augmenting C++ with a separate language feature for each feature of CLI (interfaces, properties, generics, pointers, inheritance, enumerations, and much, much more). This will be a major source of confusion (whatever anyone does or says). The wealth of new language facilities in C++/CLI compared to ISO Standard C++ tempts programmers to write non-portable code that (often invisibly) become intimately tied to Microsoft Windows.

I'm not sure where in there you think he's saying that CLI is related to C++. It seems to me he's talking about Microsoft building some extensions that provide a C++ interface for CLI.
So you agree C++CLI is an extension of C++, and not something that is related to C/C++ except for MS' branding efforts?


CLI itself has more in common with Pascal and Delphi,since they were all created by the same guy.
Pascal was developed by Niklaus Wirth, not Anders Hejlsberg (C# guy).

----

Also, you keep using the wrong names to describe the .NET framework. For example, you keep talking about programming the CLR when in fact the CLR is the runtime, not the programming language. And the CLI is the intermediate language that the CLR executes. And Anders Hejlsberg designed C#, not the entire CLI.

I understand you want to make an argument against .NET, but please read up about it so you know what you're referring to because it is a bit senseless at the moment.
 

foobie42

Novice
Joined
Feb 27, 2011
Messages
6
talan said:
Quake 1 was released in 1996 and it was written in C and assembly because they couldn't get the performance out of C with what hand-crafted assembly could. If only John Carmack and Michael Abrash had your awesome boss they could have written it in just C.

That was before GLQuake. Perhaps for software rendering it would matter.

Several years ago there was a simplistic port of Quake 2 to... Java, exceeding the original's memory usage, but performing very similarly.

Methinks performance matters critically only when it deals in orders of magnitude. If something approaches the speed of C or even is 2.5 times slower, it doesn't matter. I had a very good experience programming Common Lisp code which can't even fit a double-float value into a register, that is, without boxing.

Not to mention that higher levels of abstraction allow better algorithms. As well as less time spent on debugging, which more often than not is crucial. I'd rather cons carelessly in C# like there's no tomorrow than run valgrind and still not be sure about the software's correctness.

OldSkoolKamikaze said:
C++ fucking sucks.
 

CraigCWB

Educated
Joined
Apr 17, 2010
Messages
193
BlaineMono said:
CraigCWB said:
It isn't POSSIBLE for anything to ever be MORE efficient than assembly.

Oh my god, what a fucking retard.

Not that I'm against C++, I'm a C++ guy myself, but for jehowah's sake, how can you be so fucking stupid, so fucking misinformed and so fucking indignant at the same time?

Are you claiming that there is or could be code that runs better on computers than assembly? Don't know much about digital electronics and how they work, do you? Assembly is a good as it gets as far as runtime efficiency. It is possible for compiled languages to be AS GOOD, but it will never be possible for a compiled language to be better.

WTF do they teach people in school these days, anyway? Or maybe you didn't go to school? You learned about computers on wikipedia? :p
 

CraigCWB

Educated
Joined
Apr 17, 2010
Messages
193
Talan, in your previous comments you've been splitting hairs on semantic points and pretending you scored major points, you've misrepresented things I said, and worst of all you provided links on three separate occasions that you claimed proved me wrong when in fact they backed up what I had originally said and proved you wrong instead. I don't know what your problem is but I'm not wasting anymore time arguing with somebody who is not only wrong on the facts but who uses such sleazy methods to try to defend his (wrong) position.
 

BlaineMono

Liturgist
Joined
Aug 3, 2007
Messages
117
CraigCWB said:
Are you claiming that there is or could be code that runs better on computers than assembly? Don't know much about digital electronics and how they work, do you? Assembly is a good as it gets as far as runtime efficiency. It is possible for compiled languages to be AS GOOD, but it will never be possible for a compiled language to be better.

Yeah yeah yeah go climb a wall of dicks

More to the point, I'd like to see you code something as complex as, say, JA2 in assembly and make it run at least as fast as a C++ analog built with a modern compiler. Oh fuck, to hell with C++, I'd like to see you beat Python.
 

BlaineMono

Liturgist
Joined
Aug 3, 2007
Messages
117
Bro, I've read his posts in this thread. Do you really think watching him choke his Stroustrup will make things worse?
 

Orgasm

Barely Literate
Joined
May 4, 2010
Messages
1,360
CraigCWB
That's funny, because I used to be an assembly programmer and I switched to C the minute my boss showed me proof that C language ran just as fast. That was 1991. Prior to that the object code C language generated was not quite as efficient as assembly.
Oh boy oh boy, now I wanna know the name of that compiler from 19 fucking 91 that generated fast asm code. And I'd like to see the snipplets, man.

CraigCWB
Are you claiming that there is or could be code that runs better on computers than assembly? Don't know much about digital electronics and how they work, do you?
Do you? Lets make a contest. You write some cheapo lines with a bunch of loops and a sufficient runtime in whatever-asm and I do the same in a run-of-the-mill compiler. Lets see whose shit runs faster.

foobie42
Methinks performance matters critically only when it deals in orders of magnitude.
I dont think so. It matters where it actually matters. If you need! your stuff to be 5 percent faster, than you go the route that gives you 5 percent more.




.NET and JAVA suck
 

talan

Augur
Joined
Nov 18, 2010
Messages
128
CraigCWB said:
Talan, in your previous comments you've been splitting hairs on semantic points and pretending you scored major points, you've misrepresented things I said, and worst of all you provided links on three separate occasions that you claimed proved me wrong when in fact they backed up what I had originally said and proved you wrong instead. I don't know what your problem is but I'm not wasting anymore time arguing with somebody who is not only wrong on the facts but who uses such sleazy methods to try to defend his (wrong) position.
There were only two links and I was refering to one link twice. Complete non-issue and moving on;

The reason I skipped them is because if you spent a few minutes reading the definitions in the subset wiki link you would understand we are agreeing and you're just slightly confused on the definitions.

But, I'll take you through it then, from the subset wiki:
Code:
(i) If A and B are sets and every element of A is also an element of B, then:
   A is a subset of (or is included in) B;
or equivalently
   B is a superset of (or includes) A;

(ii) If A is a subset of B, but A is not equal to B (i.e. there exists at least one element of B not contained in A), then
   A is also a proper (or strict) subset of B;
or equivalently
   B is a proper superset of A;
Looking at (i), you'll see that saying A subset B is the equivalent of B superset A -- so you can't have B superset A without A subset B.
If we apply this to C and C++: You say C++ is a superset of C, therefore by definition, it is equivalent to saying C is a subset of C++.

Now, to Bjarnes FAQ. Highlighting a few words doesn't give you the complete picture (and amusingly, a complete contradiction). The whole paragraph is important to what he is saying. And I'll go through it:
In the strict mathematical sense, C isn't a subset of C++. There are programs that are valid C but not valid C++ and even a few ways of writing code that has a different meaning in C and C++
This is completely true because there are programs written in C which are not C++ programs. So strictly speaking, C is not a subset of C++. And that is the equivalent of saying, C++ isn't a superset of C.

However, C++ supports every programming technique supported by C. Every C program can be written in essentially the same way in C++ with the same run-time and space efficiency. It is not uncommon to be able to convert tens of thousands of lines of ANSI C to C-style C++ in a few hours.
He is making arguments that C++ is a superset of C; because they share programming techniques, the programs are written the same way with the same space and run-time, and converting code from C to C++ is trivial. As such, making C a subset of C++ through equivalence.

Thus, C++ is as much a superset of ANSI C as ANSI C is a superset of K&R C and much as ISO C++ is a superset of C++ as it existed in 1985.
a) ANSI C superset K&R C
b) C++ superset C++1985
c) C++ superset ANSI C
He regards each of these relations as true even if there any minor incompatibilities and different behaviors between them. He can't say they are strict subset/superset relations because of this, but he is saying it is good enough to hold the relationships true. Thus, proving you right and equivalently me right too.

In regards to my sibling remark, lets look at Bjarnes FAQ again:
C++ is not a descendant of C99; C++ and C99 are siblings. C99 introduces several novel opportunities for C/C++ incompatibilities.
He is saying C++ is not a descentant of C99 (modern C), and thus C++ isn't a superset of C and C isn't a subset of C++. As such, they are siblings because of incompatibilities.

Now, we can go back further to your jab at the JA2 guy, he is saying C is almost a subset of C++ because there are programs written in C have incompatibilities to regard them as C++ programs. So stricly speaking, C isn't a subset of C++.
 

SoupNazi

Guest
"Most stable version ever" my ass, fucker keeps crashing on me all the fucking time when the older versions never crashed.
 

SCO

Arcane
In My Safe Space
Joined
Feb 3, 2009
Messages
16,320
Shadorwun: Hong Kong
Problem, languages without array overflow protection?


Contracts are the next step.
 

AlaCarcuss

Arbiter
Joined
Jan 6, 2008
Messages
1,335
Location
BrizVegas, Australis Penal Colony
talan said:
CLI itself has more in common with Pascal and Delphi,since they were all created by the same guy.
Pascal was developed by Niklaus Wirth, not Anders Hejlsberg (C# guy).

I think he meant Anders Hejlsberg was the principle architect responsible for Object Pascal (Delphi).

Glad someone mentioned Delphi in this argument, you would be surprised at how many development houses use it as it's primary development tool. I was a C/C++ programmer since the early 80's till I was introduced to Delphi and Object Pascal in the mid 90's. IMHO, Object Pascal is a far more elegant and intuitive solution than C++ while being just as powerful and efficient.
 

felipepepe

Codex's Heretic
Patron
Joined
Feb 2, 2007
Messages
17,274
Location
Terra da Garoa
SoupNazi said:
"Most stable version ever" my ass, fucker keeps crashing on me all the fucking time when the older versions never crashed.

Yeah, there are about 10 things I figured out I cant do or else it's a CTD. It's almost unplayale. Gonna have to roll back to an older update...that sucks.
 

Prosper II

Educated
Joined
Jun 3, 2011
Messages
156
http://www.rpgcodex.net/gallery/8450.png
8450.png
 

sirfink

Scholar
Joined
Sep 10, 2008
Messages
290
And you guys thought it was bad when grammar nazis got into it on the Codex?
 

thursdayschild

Educated
Joined
Jun 17, 2011
Messages
121
Oh oh oh can I join in too?

First off C is not a subset of C++, nor is C++ a superset of C.

That was more or less the case for a long while but the C++ committee is so retarded the C committee has completely ignored them for a long time now.

It's also wrong about compilers, just stupid to say that. You also have the issue that code written that long ago might not even be compatible with C spec today. In fact I know it's not. But are they problematic incompatibilities, probably not, but might require tweaking.

I'm sure it's easier to port C to C++ but it still takes a little effort.

But I agree in spirit. A big change like that to .net is some seriously baffling stupidity. Not so much for performance or even the effort that takes, but because what is more stable the code of professional game programmers written in C and debugged for years or the .net code of some random asshat? The stability of JA is forever broken by this stupid move, not that there was any left at this point anyway. I'll take vanilla over what some idiot modder thinks is realistic any day of the week, anyhow.
 

SCO

Arcane
In My Safe Space
Joined
Feb 3, 2009
Messages
16,320
Shadorwun: Hong Kong
I use stracciatella, that is still the original c code, ported to sdl, minus some original bugs.

I prefer java though now with android i might say i prefer, "google java".

Hey guys have you heard about x10?

It has typed range "arrays".
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom