What on EARTH is that supposed to mean, "I have no place trying to interpret them"? This is maybe the biggest load of crap I have ever heard. Maybe I, you know, would like to read them? Maybe I would like to contribute to something to the standard libraries (something like GNU's C++ stdlib, or the LLVM projects libc++) or enhance them? What if I wanted to write my own implementation of the STL because none of the other ones fit my need (which isn't unrealistic, btw)? How dare you say I have no place in attempting to interpret these things, presumably because you believe I only mention this out of spite and not out of perhaps the need and want to actually do something with them? (because in some cases, I do.) This is an outrageously offensive thing to say quite frankly, and I'd appreciate it if you could not be an ivory-tower "you have no place being here" dickhead on the matter, because that's not an excuse for the C++ standard library header files looking like complete ass and hence making them unreadable and essentially illegible. Sorry.
And I've told you before on another thread, but you didn't listen; It's none of your business how the standard library headers look like. They are properly documented. You have no place trying to interpret them.
I didn't propose this as some sort of solution which should be implemented in C++ - I highlighted why I think the C preprocessor sucks, why it necessitates the need for something like 'namespace' to avoid naming conflicts all over the place and as a result makes many identifiers verbose, and why a proper module system (found in many programming languages) would alleviate many of these problems and still give your language just as much expressive power in the end.
To tell you frankly I find it increasingly annoying when i see C++ criticism the comes with proposed solutions that are perfectly capable of being dealt with by C++. We all heard it before; "C++ doesn't do this. C++ doesn't have that". And all the time the answer is either you can do it yourself using C++, or already someone did it for you and here's the library.
If I gave you the implication I wanted this in C++, I don't. It would never happen anyway. I was asked how I thought these things could be alleviated by Elysia, and I answered appropriately with what I think would solve it: a real module system. As opposed to crappy textual includes a la CPP (and luckily I think no other language in existence has really made the mistake of adopting CPP in this manner because it's a terrible solution to such a problem these days.)
I don't give a crap if I can reconstruct anything built by man to date with only a hammer and nails, it's damn obvious to me that I can get the job done easier, faster and better using a more modern tool. And I can. So I do.
The matter of the fact is that there is absolutely nothing stopping you from implementing this in C++. And that's precisely this programming language biggest strength. "There's nothing you can't do". Not many can claim the same.
None of these really have ANYTHING to do with what I was talking about. At all. Shared libraries and the like are totally orthogonal to having a real module system in your programming language. Go look into it.
- For one, you can simply use the linker: Want modules? Create your own DLLs and link in your project.
- Not good enough? Want runtime access? Use the compiler: Use dlopen() in unix or loadlibrary() in windows.
- Not good enough? Write your own interpreter.
Oh believe me, I'm sure it does have tools to do these things, even if those tools totally suck in almost every way. I'd rather just use something which sucks less.
3 different layered solutions to your problem. However you look at it, the programming language offers you the tools to do it.
What the hell? "Explain to me why you would want a module system in a general-purpose programming language"? Did you even READ anything I said on the matter, understand it, or even know what I'm talking about when I say a 'real module system', as opposed to 'totally crappy textual include systems a la CPP'? Maybe you should go use a programming language that, uh, isn't C++ or something. Go try Standard ML or something, it has an incredibly awesome module system, for example, and you'd probably better understand what I was talking about after the fact, because you clearly don't as evidenced by your rant about linkers/dlopen as a "solution" and now wonder why anybody would "want a module system" in a "general purpose language."
So why on earth would anyone (including the C++ standards committee) want to make your modules-thingy the new standard way of accessing libraries contents? Explain that to me in the context of a general-purpose language like C++.