5 ms·
Here is the paper on metaclasses: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0707r0.pdf http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0
by vowelless 9y ago
Here is the paper on metaclasses: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0707r0.pdf http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p070...
- kccqzy 9y agoWow, this looks like a huge change to the language. Reminds me of macros done well though.
- pjmlp 9y agoYes, it is quite nice. But how good things go, this might just be standardized post C++20.
- VHRanger 9y ago"3years is not a long time" says the std committee. If it's in standard in 2023 we can use it at work in 2025-2027 for those of us at particularly fast companies
- pjmlp 9y agoI only use C++ for native libraries accessed from Java/.NET, so it doesn't hurt me that much, given the average code size. But things are much nicer nowadays than on the late 90's when I had to use the OS vendor C++ compiler for each system we were targeting, while ANSI was still designing what would become C++98. Or the C compilers transitioning between some kind of K&R C support and ANSI C89.
- hellofunk 9y agoI know a lot of companies that immediately adopt the new standards in C++, sometimes as soon as the compiler supports them, even if the standards aren't official yet. For example, I was working at a company that was using C++14 features in 2013.
- zarkov99 9y agoRight. We now have two world class compilers, gcc and clang, which both track the standard closely and this has forced Microsoft to improve their compliance as well. It is a golden age for C++ right now.
- harry8 9y agoThe golden age of C++ is that java, python, ruby, clojure javascript and so on all exist so developers who have a dislike and/or perhaps low aptitude for C++ aren't in your codebase because it really isn't the only game in town. Compiler support, standardisation of things we needed in the late 80s sure. great, yeah, all good and helpful. Not having a constant standing fight to keep the worst nasty rubbish out of your codebase so you can get on with writing code that achieves something useful in a manner that's not hideous. That's a change that didn't come from within C++. C++ culture from Bjarne on down is still hideous. Arrogant, aggressive and generally nasty. Fix that and we'd really get the golden age. I stay as far away from C++ "people", committees, conferences etc. as I can. Yeah "No loss" would be the usual response and I'm sure that's true, I'm not such a genius that the loss of me matters at all. There will be plenty more, some of whom have great contributions they will make elsewhere, to think otherwise is just the usual C++ "smart people" nasty, competitive arrogance.
- pjmlp 9y agoC++ is pretty much the only game in town for those having those alternative languages running at all. When LLVM, GCC, JVM and CLR stop being written in C++, then we have sound alternatives. Java Metropolis or .NET Native with Rosyln are not there yet. Rust doesn't seem to be taking over systems development at any major commercial OS for the time being. Hopefully it will, if Fuchsia ever becomes a commercial product. Swift is pretty much an Apple only language and isn't fully stable yet. So until then, I rather take a polyglot approach C++ and Language X, while helping drive away the C style coding that plagues our stacks.
- UnpossibleJim 9y ago
- snaky 9y agoThere's no much hope C++ to go away any time soon, so C++20 is fine, there are C++25, C++30 and C++48 for more features to add.
- pjmlp 9y agoAs polyglot dev, I am kind of ok with C++17 and beyond, as ANSI C++ groups at least care about improving the security story, not like ANSI C.
- snaky 9y agoI know it's unpopular, but I think security is overrated. No, I don't like the way it is, but really - do we know a company that gone bankrupt due the security breach? Do we know a single mobile app that lost it's major audience due the data exposure, or broken crypto implementation? Do we know any business that gone out of business due the security related reasons? I'm not saying we should not care, but I'm convinced we can't turn the table over by polishing the tools. The user's perception of security is a show stopper as for now.
- lomnakkus 9y ago> I'm not saying we should not care, but I'm convinced we can't turn the table over by polishing the tools. Why? We know for a fact that GC'ed langauges can e.g. prevent double-free for ever and ever. Obviously, this is modulo the language/runtime implementation, but if there are bugs there you fix them once and every single program out there gets the fix instantly. Similarly for many other types of 'dangerous' bugs.