
David Abrahams wrote:
Hence, adding say regex to the standard doesn't add any code to the standard.
I don't know what you mean by "add code to the standard."
The standard include the implementation itself. Only the interface that any implemenation has to adhere to.
It just certifies that anything that claims to be compatible with the C++ regex standard works as the standard says it does.
No, it says that any C++ implementation that claims to be standard compliant contains a conforming regex implementation. There have as yet been no moves toward "subsetting" of the C++ standard (other than the "hosted"/"non-hosted" distinction -- look it up if you care). Either an implementation provides everything the standard specifies, and can therefore claim compliance, or not. There's not going to be a separate "C++ regex standard."
OK but this goes to the heart of my question. Suppose I start my new compiler company and I write a C++ compiler which correctly translate C++ language as defined by the C++ standard to some machine language. I don't know if there is any official designation for such a program such as "standard conformant C++ compiler" but that's what we'll call it here. Now I write the low-level code to implement things like fopen, etc in terms of the API of the OS it's going to run on. Its not a "conformant C++ implementation" because it doesn't include all the libraries. So, I just add STLPort and Boost libraries - which work with any "standard conformant C++ compiler". Now I have a "conformant C++ implementation". So once there exists a compiler which correctly implements the C++ language - the existence of a "conformant C++ implementation" is guarenteed. To summarize, having a) "standard conformant C++ compiler" b) a library implementation which is freely availble and depends only on having a above is equivalent to having "conformant C++ implementation" for Regex (and other libraries as well of course), we already have b) above - so what's the point "adding it to the standard" - which seems to me a lot of work for very little practical benefit. Robert Ramey