The Sorry State of C++ Portability by Jeff Wofford

J

Jorgen Grahn

It isn't clear whether some version of Windows was originally considered
as a target platform, or if he just decided to try porting to Windows
as an afterthought (the main target platform appears to be iOS).

But still, when you're going bleeding-edge you have to make conscious
decisions. In this case it would have been "I don't mind that I can't
port this to old systems, or to Windows within the next N years".

/Jorgen
 
B

Bo Persson

(e-mail address removed) skrev 2012-11-02 19:05:
I've wondered about their priorities also. I wouldn't
mind if they didn't get the variadics until later but
wish they had support for some of the other new parts
of the language.

It actually seems like they have reconsidered and are now going to
implement these features. CTP version already available!

http://www.microsoft.com/en-us/download/details.aspx?id=35515

Yay!
I think the operating system work must seem like a better
investment than C++ stuff.

That might be reasonable, but why adding C++/CX when everyone is asking
for C++11? And then blame lack of time.


Bo Persson
 
R

Rui Maciel

David said:
I think this is the most likely explanation. It is not easy to write
good compilers - there are few people who can do the hard stuff. I
could also imagine that such people could feel underappreciated working
at MS on their C or C++ compilers, and would prefer to work elsewhere
(there are lots of other companies that can use such expertise).

This is not the first time I have heard of such lack of expert resources
at MS, and certainly not the first time I have heard of it at other big
companies.

That is highly unlikely. We are talking about a company which employs a
hand full of renowned experts in the field, some of which directly
participate in the standardization process of multiple programming
languages.

But even considering this hypothesis, if the company failed to hire
competent people to work on the company's compiler then it is also a clear
sign that someone within their organization doesn't want their compiler to
support these standards. After all, if their organization fails to have the
necessary expertise and resources to update their compiler, how come they
manage to get the people and the resources to participate and influence the
standardization process?


Rui Maciel
 
K

Krice

After all, if their organization fails to have the
necessary expertise and resources to update their compiler,

Maybe they hate C++11. I think C++11 is an attempt to "modernize"
C++ and I don't think it went that well. Usually trying to be
something else will ruin the essence of what was before. Maybe in
a way C++ is close to perfect as it is and anything more
sophisticated is going to change things.
However I think the programmer should know the requirements
of compilers, libraries and platforms to write portable code.
In this case our friend Jeff made a beginner's mistake
when he thought something was supported.
 
W

woodbrian77

(e-mail address removed) skrev 2012-11-02 19:05:








It actually seems like they have reconsidered and are now going to

implement these features. CTP version already available!



http://www.microsoft.com/en-us/download/details.aspx?id=35515



Yay!

I'm working on updating some test results --
http://webEbenezer.net/comparison.html

using Boost 1.52.

In the past I had a problem getting a test of
the serialization library in Boost to work --
http://www.gamedev.net/topic/626097-build-problem-with-vs-11/

I'm revisiting this now and wondering what version of
the compiler to use. I've downloaded the CTP version
mentioned above but haven't started using it. I think
I still have the pre-release version of VS11 that I
had at the time of that thread --

Microsoft (R) C/C++ Optimizing Compiler Version 17.00.50214.1


My guess is if I use the CTP version it would also be a
pre-release version. Is there another version of VS11
I could get that's between these two and isn't a
pre-release version?

Also in that thread, the only way I was able to build
the test was by adding runtime-link=static when building
the serialization library in Boost. That was new to me.
I wasn't sure if Microsoft had stopped supporting
something or if there's a different way to build that
I have yet to find. Thanks.

Brian

Children deserve to have a father and a mother.
 
R

Rui Maciel

Bo said:
I think they just made a terrible mistake in their priority, similar to
what they did 10 years ago, when VC++ 2002 with managed extensions
flopped.

The reports say that MS started to implement key C++11 features like
variadic templates, but never finished because of lack of resources.

"Fortunately" they just had enough time to implement support for Windows
8, Windows RT, and the entirely new (and totally unasked for) C++/CX.

That's the "extend" step.

http://en.wikipedia.org/wiki/Embrace,_extend_and_extinguish


Rui Maciel
 
R

Rui Maciel

I think the operating system work must seem like a better
investment than C++ stuff.

It's not a "either/or" scenario. IIRC, Microsoft manages a wealth of dead-
end research projects, and Microsoft's IDE is a strategic basis for the
company's business plan. If they don't have people working on their C and
C++ compiler, it's because they explicitly decided not to work on it.


Rui Maciel
 
R

Rui Maciel

Bo said:
That might be reasonable, but why adding C++/CX when everyone is asking
for C++11? And then blame lack of time.

Quite true. Nonetheless, IMHO support for C99 or C11 should be a higher
priority than C++11. In addition, it's a bit worrysome that their idea of
supporting C++11 is to pick a set of C++11 features and leaving the rest to
be implemented somewhere in the future. Naturally, it isn't reasonable to
expect that they (or anyone ) could implement everything in one go, but by
relying on a poll to justify their "pick and choose" approach to C++11, it's
quite possible that they will end up not supporting C++11 by leaving behind
bits which they don't find as popular as the juiciest ones.


Rui Maciel
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,048
Latest member
verona

Latest Threads

Top