C++0x in General

Experienced Elementalist
Joined
Jul 19, 2008
Messages
263
Reaction score
7
As some might know C++0x is scedueled for this year. So I searched around and found some info on the updated C++.

This is what we know:

- Most of the functionality will stay the same.
The core of the language will change a bit, making it faster and even more reliable.

- Extended library/drivers
The standard ammount of libraries added to C++0x will increase significantly. Giving you more options and saves you time. Also the language will have increased hardware-compatibility.

- Code Compatibility
Basicly when using C/C# codes in a C++ compiler. It will error. But for now the official Committee ensured that C++0x will be fully compatible when C++ sources. Making you able to use codes without having the adjust/rewrite them.

- Easier to use.
C++0x will be easier to learn for newcomers.
Also the types will become safer (bool/float, etc...), since everyone knows the bugs you can get when using them wrong.


That what I've learned from studying the official Comittee site, emails and some interviews. I hope it was helpfull and I hope this will inspire many beginners to start learning a powerfull, fast language.
 
They recently threw out sockets & threading from TR1. Those would've been the *BEST* possible additions, but nope, we still have to customize for OS for networking & threading -.-. Considering this change would've made thousands and thousands of projects work on windows & linux at the same time with NO specialized code, it would've been amazing.

Don't know wtf these guys are trying to do, but they apparently don't give a **** about cross-platform projects.
 
They're trying to market the next update to C#fags, javafags, and the newb in general. The sad part is, those of us who are stuck with the frustrating task of implementing multi-platform utilities which require reimplementation which only make perfect sense to be included in the C++0x specification are pretty much fucked by the new update because they've cut the meat of those good updates out. TR1 when first proposed was a holy grail of perfection, now it's just a small subsection of boost which isn't all that useful :\.

Kinda pisses me off tbh. I'd love to see fully portable networking and threaded code written purely in C++ compile and run perfectly on multiple platforms. Realistically, though, I understand. The TR1 used the ASIO and thread libs of boost, which are absolutely abysmal implementations of any kind of reasonable interface to networking and threading. But I would like to see some attempt from the ISO guys and maybe Bjarne to implement something that would satisfy us :(.
 
They're trying to market the next update to C#fags, javafags, and the newb in general. The sad part is, those of us who are stuck with the frustrating task of implementing multi-platform utilities which require reimplementation which only make perfect sense to be included in the C++0x specification are pretty much fucked by the new update because they've cut the meat of those good updates out. TR1 when first proposed was a holy grail of perfection, now it's just a small subsection of boost which isn't all that useful :\.

Kinda pisses me off tbh. I'd love to see fully portable networking and threaded code written purely in C++ compile and run perfectly on multiple platforms. Realistically, though, I understand. The TR1 used the ASIO and thread libs of boost, which are absolutely abysmal implementations of any kind of reasonable interface to networking and threading. But I would like to see some attempt from the ISO guys and maybe Bjarne to implement something that would satisfy us :(.

Do you have some sort of vendetta against other programming languages aside from c++? Most of your "facts" about other language are just assumptions.
 
Do you have some sort of vendetta against other programming languages aside from c++? Most of your "facts" about other language are just assumptions.

Are they? Considering I've been payed $20,000+ to write software for companies for them, I've had my code in those languages reviewed. Let me guess, you or any other person on here to defend C# or some other contrived language are persons who learned that language as a first language, and because it's so forgiving and noob-friendly, you learn how to abuse the .NET framework much like java beginners learn to google for classes in the JRE so that you can abuse the hell out of the size and capability of the provided library. How is this a bad thing? It teaches you to find a tool as if you were looking through a toolstore, then to apply it to a situation. It doesn't tell you how to do critical thinking or problem solving to solve the problem yourself, it literally preaches: "could you find anything in the framework that does that for you?"


And at the end of the day, you can make a bloated framework interpreter run some code that does something that you've told it to do, but if I asked you to do it using the language itself and without abusing the library you're given, you'd fail (most likely), and if you wouldn't, given that you have enough experience, you'd probably say "it'd be easier to do this in C++". And at once, I would completely agree with you.



I don't have a vendetta against anyone or any language. I hate ignorance. Ignorance in the sense of people believing they're correct with no foundation other than ignorance, if you're unwilling to learn or admit that you aren't correct, when you are completely biased in an argument (such as anyone on these boards who would argue that C# is better, because you're a C#fag, go learn C++ for 10 years and when you really are a master of it, if you can say C# is better, then I will listen to you). I know multiple people who have written more software than I have written code in all languages I know in MY ENTIRE LIFE, just in C#, who call the kids on this board stupid. And one who wrote a server emulator in C# who said "I'm waiting for an update in the game then I'm porting it to C++." This from a C#fag who has finally realized wow, maybe C# is REALLY BAD for this kind of project.
 
Do you have some sort of vendetta against other programming languages aside from c++? Most of your "facts" about other language are just assumptions.

Please don't say that to him :blink:

This isn't battle of the programming languages..

It would be nice to have a fully cross platform programming language, but at the current place in time, it's in Microsoft's best interest to keep as many functions tied to windows as they can. If 80% of the programs only work on Winows, then it just gives them a bigger ground to stand on during this economic downfall. If you get a new computer with Linux it's about [(computer_price-windows_price)+$10]. That's all pretty well known.. Windows dependency isn't forever. In fact, it should begin to end about 1-2 years from now according to my "Humanity Milestone Prediction" calendar.

Right now C++ is the closest to being there, right?

And Merlin, I predict your opinions of C# will change around the same time. Might want to tone down the resentment towards C# a bit.. but don't listen to me :P
Something tells me that C# will play a very large part in the fact that it will make all new versions of Windows unstable and... well like a very nice looking opperating system with a million and 1 bugs.. Large and small.

On top of that, it will take the same time it does to load things on a 500mb ram ubuntu as it will with a 1.5gb ram with Vista.. These are all only educated assumption, of course...

C# will help C++ be cross platform because it will make Windows *think they have the most superior format, so they don't need to keep C++ all windowized anymore.. Resulting in a better, more affordable, C++ Linux world. Right? I know I read something saying much of Vista is coded in C#. This helps me assume that Windows is coding in experiment within an experiment language. Right?
Wait, is C# really an experiment language? Umm...

First, what is an experiment?
a test, trial, or tentative procedure; an act or operation for the purpose of discovering something unknown or of testing a principle, supposition, etc.: a chemical experiment; a teaching experiment; an experiment in living.
2. the conducting of such operations; experimentation: a product that is the result of long experiment.
3. Obsolete. experience.
–verb (used without object)
4. to try or test, esp. in order to discover or prove something: to experiment with a new procedure.

Has it been tested?
Yes.

Did it pass the test?
It functions.. I guess.. It got a C.. Not a C+.

Is it thoroughly tested with an opperating system?
Now it is!

Did it pass the test?
Umm.. No, not really.. It got a D IMO.

Is it still an experiment?
It's under construction, yet still being used.
Not an experiment programming language.

Is it still an experiment language when it comes to coding an opperating system?
Yes.

This is my 420th post, Please excuse the stimulative content.
 
Are they? Considering I've been payed $20,000+ to write software for companies for them, I've had my code in those languages reviewed. Let me guess, you or any other person on here to defend C# or some other contrived language are persons who learned that language as a first language, and because it's so forgiving and noob-friendly, you learn how to abuse the .NET framework much like java beginners learn to google for classes in the JRE so that you can abuse the hell out of the size and capability of the provided library. How is this a bad thing? It teaches you to find a tool as if you were looking through a toolstore, then to apply it to a situation. It doesn't tell you how to do critical thinking or problem solving to solve the problem yourself, it literally preaches: "could you find anything in the framework that does that for you?"
It's called working efficiently. The framework makes programming a lot faster. In many projects you can sacrifice some performance for less programming. This is something I assume every proffesional knows. Why don't you?
 
It's called working efficiently. The framework makes programming a lot faster. In many projects you can sacrifice some performance for less programming. This is something I assume every proffesional knows. Why don't you?

I think he's implying that that's lazy and using memory that doesn't need to be used. As it appears to be non-redundant in the programming, actually the framework is performing many redundant tasks in the back-end that the programmer doesn't tend to think about.

Two wrongs don't make a right. Programmer doesn't need to know what the program is really doing = wrong. Framework loads tasks that don't need to be applied a program = wrong.
Therefore,
(Just because Program works --> Program is Right) == false.
 
why hate one language over the other, the most effective thing is to learn, and maybe, you might learn something if you open your mind and learn a bit about everything. I Favor ASM (Masm Compiler) and also C++ (Coding and Minor Networking). I shunned C#, Basic, and Java, but now I tend to see myself opening up a project for each of them. Of course I ant a god at coding, and prolly will never see myself get that far, but I tend to have expanded my knowledge, instead of closing my mind and becoming incapable.
 
why hate one language over the other, the most effective thing is to learn, and maybe, you might learn something if you open your mind and learn a bit about everything. I Favor ASM (Masm Compiler) and also C++ (Coding and Minor Networking). I shunned C#, Basic, and Java, but now I tend to see myself opening up a project for each of them. Of course I ant a god at coding, and prolly will never see myself get that far, but I tend to have expanded my knowledge, instead of closing my mind and becoming incapable.

Because I've probably used Java & C# more than anyone else on these forums :P. The more I use them, the more I despise them.

The efficiency trade off is enormous for any but the most mundane of GUI tasks, and so the extra "speed" in development is not warranted by a sluggish shitty application that end-users will complain about.
 
I don't have a vendetta against anyone or any language. I hate ignorance. Ignorance in the sense of people believing they're correct with no foundation other than ignorance, if you're unwilling to learn or admit that you aren't correct, when you are completely biased in an argument (such as anyone on these boards who would argue that C# is better, because you're a C#fag, go learn C++ for 10 years and when you really are a master of it, if you can say C# is better, then I will listen to you). I know multiple people who have written more software than I have written code in all languages I know in MY ENTIRE LIFE, just in C#, who call the kids on this board stupid. And one who wrote a server emulator in C# who said "I'm waiting for an update in the game then I'm porting it to C++." This from a C#fag who has finally realized wow, maybe C# is REALLY BAD for this kind of project.

I must admit i learned C# as my first main language and am currently learning C++ (5-6 months now) since i cbad with the clr anymore and i admit it is anoying the size of it etc but if your going to try to code a game use C or C++ in my opinion C# is realy only for networking on windows. Ive been programing C# for over a year or so now and i develop proffesionaly part time (messengers etc) and yes C++ is cross platform but it is alot less forgiving and it doesnt have as much memory management (cleanups etc) and tbh i find C++ good for some projects but i still prefer to use C# for some things.

And at your last post nillus / jeax use it alot and i use it for a hell of alot of projects. But if your going to hate a language hate VB.


Sorry if my spelling is **** its 1:30am :)
 
The problem would be companies writing actuall C++ compilers for new kernels, such as linux. About more than 80% of all servers is Unix, problem is most companies write scripts but only for own use. Most compilers are crap though, like the GNU compiler for C++ doesn't handle most than 40% of what Visual C++ can do and than comes the speed, about 60% of the capacity that Visual C++ can handle.
 
Well yeah, C# and Java and other higher level languages have their uses, nobody is arguing that, and I do use both of those a fair amount for what they're intended to do well.

Coming from a garbage collected language, you're bound to feel that way about C++. It isn't a lot less forgiving, it just doesn't impose itself, it assumes the programmer is in control of everything that happens. In general, I see lots of mistakes from Java programmers in C++ who don't clean up their objects, and who excessively use new/delete (because that's how you make an object instance in Java, you can do it on the stack in C++ which is exception safe and will not cause leaks). If you start with C++, you learn to do those things yourself from the beginning.

And yes, you can STILL have memory and resource leaks in C# :). I've done it by accident ^^.
 
The only real leaks are the 32-bit leaks.
Unix has reached it's 1234567890-timestamp-bug (in seconds, timer started 1970), caused by 32-bit usage. 64-bit is going to get very popular in the next decade, C++ has better support for that.
 
The only real leaks are the 32-bit leaks.
Unix has reached it's 1234567890-timestamp-bug (in seconds, timer started 1970), caused by 32-bit usage. 64-bit is going to get very popular in the next decade, C++ has better support for that.

We could just agree that those timestamps start @ January 1 2000, and delay the problem :P
 
Back