473,395 Members | 1,484 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

c++ and target environment

Lot of changes are happening to c++, nowadays. Even after the
standardization, we see many interesting things, like, threading,
regex, rope, etc. I read some TR1 and TR2 proposals, and I am not very
sure, we are going to get all this into c++.

These are not brand-new concepts, but why these things took this many
years to get into c++?.

Is still the c++ target environment now same as the target environment
before the standardization?

Sep 4 '07 #1
8 1570
On 2007-09-04 11:16, v4vijayakumar wrote:
Lot of changes are happening to c++, nowadays. Even after the
standardization, we see many interesting things, like, threading,
regex, rope, etc. I read some TR1 and TR2 proposals, and I am not very
sure, we are going to get all this into c++.
All the stuff in TR1 will be in the next standard (along with a lot of
other things), those in TR2 will have to wait a while.
These are not brand-new concepts, but why these things took this many
years to get into c++?.
Because a committee have to approve them, not all members are convinced
that all the features are needed. And since there is not enough time to
get all of them in compromises have to be be made. Remember also that
all the members in the committee are doing this on their spare time or
the time their companies allows them to spend, none of them are working
full time on the standardisation.

Another problem is that all the feature have to be examined to determine
of they actually add any value, or if they would just be bloat in the
standard. And all feature have to be examined so that they work together
with the other features in the standard. Many libraries have lots of
functions/classes that does not work together with other parts of the
library or more than one function for doing something.

And all the already existing feature have to be retrofitted to work with
new ones, just imagine the work needed to make the existing containers
and algorithms work with Concepts. And when all that is done one have to
check for inconsistencies and ambiguities, considering that the current
working paper is nearly 1200 pages that's no easy task.
Is still the c++ target environment now same as the target environment
before the standardization?
C++ is a multipurpose programming language with focus on systems
programming and allows for usage of multiple programming paradigms, and
I think that has been the goal for quite some time. IT does not target
any specific environment that I'm aware of, but as I said, it is
primarily a systems programming language, though the Performance TR
describes how to efficiently use it in an embedded environment.

--
Erik Wikström
Sep 4 '07 #2
On 2007-09-04 06:56:38 -0400, Erik Wikström <Er***********@telia.comsaid:
On 2007-09-04 11:16, v4vijayakumar wrote:
>Lot of changes are happening to c++, nowadays. Even after the
standardization, we see many interesting things, like, threading,
regex, rope, etc. I read some TR1 and TR2 proposals, and I am not very
sure, we are going to get all this into c++.

All the stuff in TR1 will be in the next standard (along with a lot of
other things), those in TR2 will have to wait a while.
Just a minor note: all the stuff in TR1 except the special math
functions will be in the next standard. The special math functions will
go into their own separate standard.

--
Pete
Roundhouse Consulting, Ltd. (www.versatilecoding.com) Author of "The
Standard C++ Library Extensions: a Tutorial and Reference
(www.petebecker.com/tr1book)

Sep 4 '07 #3
On Sep 4, 12:56 pm, Erik Wikström <Erik-wikst...@telia.comwrote:
On 2007-09-04 11:16, v4vijayakumar wrote:
....
These are not brand-new concepts, but why these things took this many
years to get into c++?.

Because a committee have to approve them, not all members are convinced
that all the features are needed. And since there is not enough time to
get all of them in compromises have to be be made. Remember also that
all the members in the committee are doing this on their spare time or
the time their companies allows them to spend, none of them are working
full time on the standardisation.

Another problem is that all the feature have to be examined to determine
of they actually add any value, or if they would just be bloat in the
standard. And all feature have to be examined so that they work together
with the other features in the standard. Many libraries have lots of
functions/classes that does not work together with other parts of the
library or more than one function for doing something.

And all the already existing feature have to be retrofitted to work with
new ones, just imagine the work needed to make the existing containers
and algorithms work with Concepts. And when all that is done one have to
check for inconsistencies and ambiguities, considering that the current
working paper is nearly 1200 pages that's no easy task.
Are these reasons for c++ community, with such a huge developer base,
has to wait decades for just to get templates and regex?

Why isn't yet there a open c++ standard?

Sep 4 '07 #4
On Sep 4, 12:56 pm, Erik Wikström <Erik-wikst...@telia.comwrote:
On 2007-09-04 11:16, v4vijayakumar wrote:
....
Is still the c++ target environment now same as the target environment
before the standardization?

C++ is a multipurpose programming language with focus on systems
programming and allows for usage of multiple programming paradigms, and
I think that has been the goal for quite some time. IT does not target
any specific environment that I'm aware of, but as I said, it is
primarily a systems programming language, though the Performance TR
describes how to efficiently use it in an embedded environment.
I thought that c++ target environment is too general to implement
anything, like threading and networking, that requires special
instructions to execute. If it is possible now, why not then?

Sep 4 '07 #5
On 2007-09-04 14:34, v4vijayakumar wrote:
On Sep 4, 12:56 pm, Erik Wikström <Erik-wikst...@telia.comwrote:
>On 2007-09-04 11:16, v4vijayakumar wrote:
...
These are not brand-new concepts, but why these things took this many
years to get into c++?.

Because a committee have to approve them, not all members are convinced
that all the features are needed. And since there is not enough time to
get all of them in compromises have to be be made. Remember also that
all the members in the committee are doing this on their spare time or
the time their companies allows them to spend, none of them are working
full time on the standardisation.

Another problem is that all the feature have to be examined to determine
of they actually add any value, or if they would just be bloat in the
standard. And all feature have to be examined so that they work together
with the other features in the standard. Many libraries have lots of
functions/classes that does not work together with other parts of the
library or more than one function for doing something.

And all the already existing feature have to be retrofitted to work with
new ones, just imagine the work needed to make the existing containers
and algorithms work with Concepts. And when all that is done one have to
check for inconsistencies and ambiguities, considering that the current
working paper is nearly 1200 pages that's no easy task.

Are these reasons for c++ community, with such a huge developer base,
has to wait decades for just to get templates and regex?

Why isn't yet there a open c++ standard?
There is, in fact there are two, ISO/IEC 14882:1998 and the more recent
ISO/IEC 14882:2003. Both have included templates and I think the second
one included regex.

--
Erik Wikström
Sep 4 '07 #6
On 2007-09-04 14:40, v4vijayakumar wrote:
On Sep 4, 12:56 pm, Erik Wikström <Erik-wikst...@telia.comwrote:
>On 2007-09-04 11:16, v4vijayakumar wrote:
...
Is still the c++ target environment now same as the target environment
before the standardization?

C++ is a multipurpose programming language with focus on systems
programming and allows for usage of multiple programming paradigms, and
I think that has been the goal for quite some time. IT does not target
any specific environment that I'm aware of, but as I said, it is
primarily a systems programming language, though the Performance TR
describes how to efficiently use it in an embedded environment.

I thought that c++ target environment is too general to implement
anything, like threading and networking, that requires special
instructions to execute. If it is possible now, why not then?
There's a difference between threading and networking in that threading
can be abstracted to a level where it becomes platform independent (you
can fake threading on almost any architecture) which the same is not
true for networking.

The reason that threading has not been included until now is probably
that there has not been any need for standardised threading until now.

--
Erik Wikström
Sep 4 '07 #7
On 2007-09-04, Erik Wikström <Er***********@telia.comwrote:
>
There is, in fact there are two, ISO/IEC 14882:1998 and the more recent
ISO/IEC 14882:2003. Both have included templates and I think the second
one included regex.
I'm fairly sure that 14882:2003 does not include regex, it's still a
TR1 feature.
Sep 4 '07 #8
On Sep 4, 5:31 pm, Erik Wikström <Erik-wikst...@telia.comwrote:
On 2007-09-04 14:40, v4vijayakumar wrote:
On Sep 4, 12:56 pm, Erik Wikström <Erik-wikst...@telia.comwrote:
On 2007-09-04 11:16, v4vijayakumar wrote:
...
Is still the c++ target environment now same as the target environment
before the standardization?
C++ is a multipurpose programming language with focus on systems
programming and allows for usage of multiple programming paradigms, and
I think that has been the goal for quite some time. IT does not target
any specific environment that I'm aware of, but as I said, it is
primarily a systems programming language, though the Performance TR
describes how to efficiently use it in an embedded environment.
I thought that c++ target environment is too general to implement
anything, like threading and networking, that requires special
instructions to execute. If it is possible now, why not then?
There's a difference between threading and networking in that threading
can be abstracted to a level where it becomes platform independent (you
can fake threading on almost any architecture) which the same is not
true for networking.
The reason that threading has not been included until now is probably
that there has not been any need for standardised threading until now.
Possibly, too, because the technology wasn't all that mature,
and there was no consensus as to what was required. Java, for
example, can move a lot faster, because they target a lot less
varied community, and aren't necessarily concerned about
possible side effects or undesirable repercusions outside of
that community. And because they don't have an ISO standard,
nothing is cast in stone; they can easily go back and change
things which didn't work.

--
James Kanze (GABI Software) email:james.ka...@gmail.com
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

Sep 4 '07 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
by: Plumer | last post by:
Good morning everyone, I am having difficulty distributing a Release version of an application. System info C# DOTNET, MDE 2002, Version 7.0.9466 .Net Framework, version 1.0.3705 My...
1
by: Trent | last post by:
Hello,everyone. I'm setting a db2 replication environment using UDB version 8.1.5 running on Windows 2000 servers. The source server is on a Windows server with the capture program running while...
4
by: Barry Young | last post by:
I have Access 2000 installed on a machine and I create the MDE just fine. When I copy the MDE file over to another machine that has Access 2000 installed, the references are hosed and I get unable...
2
by: scrodchunk | last post by:
I'm currently building a project in the gcc environment on unix and getting the simulation phase of my work done. After it's nice and clean, I'll be moving into an embedded environment and...
2
by: peter | last post by:
Is it possible to create a drop target on a client computer's desktop so that if a user drags or drops a file jpeg on it will be used by the target program? IE. User drags a file to the icon...
0
by: Sherry | last post by:
We are using the sample code "AsynchronousClient" from http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconnon-blockingclientsocketexample.asp. It works for the wired...
2
by: David | last post by:
Hi, Would someone please mind showing me how to obtain the absolute path to a folder that is created under the application folder at install time. ie. On my development machine the path is...
1
by: Pim Sohful | last post by:
Hi, I have a website full of external links. On the site I have a checkbox where users can indicate that they want to have the link opened in a new window or in the same window. It is rather...
92
by: Erwin Moller | last post by:
Hi group, I encoutered page validation error, but I don't know a way around. The page has the following doctype: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.