4 ms·
It's definitely not unique in that regard, C++ is the same way. The difference though is C++ is old and established. Perl 6 is relatively new, and it seems cra
by overgard 7y ago
It's definitely not unique in that regard, C++ is the same way.
The difference though is C++ is old and established. Perl 6 is relatively new, and it seems crazy to me to say it's "done" if the first iteration of the language spec hasn't even been fully implemented yet.
Also when the C++ committee says something like "C++ 20 is done", that news is generally not super useful to me. It's something I tuck away as something I might use eventually. I'm way more interested in "Clang/VC++ is now C++20 compliant", because then I can actually use it.
- raiph 7y agoIn P6 culture, the word "spec" is considered an ambiguous word that can mean several very different things including: * Specification. The P6 language is specified by a test suite called Roast. There are "release" tags, for example 6.c, 6.c.errata, and 6.d. If a program passes the suite it's "officially" entitled to call itself a P6 compiler for the language versions it passes. * Speculation. Discussion, ideas, RFCs, a large range of design documents written in English that were once called "specification" documents but were never intended to be a substitute for the binary precision and decision of a test suite, multiple compiler prototypes, etc. Thus: > the first iteration of the language spec hasn't even been fully implemented yet. Rakudo fully implemented 6.c, the first iteration of the electronic language spec, 3 years ago. > I'm way more interested in "Clang/VC++ is now C++20 compliant", because then I can actually use it. Exactly. P6 has focused on having a digital specification. If someone wants to know if a compiler is compliant, they can run a test and know within minutes. If you prefer a specification written in natural language, and claims of compliance to be relative to that natural language specification, and consider tests secondary, well, all I can say is that the P6 view is the other way around. If your point is that a couple hundred thousand tests isn't enough, then yes, you have a very good point, one can never have too few tests, but one has to start somewhere. (There's also Toast, which is like Roast, but applied to the entire ecosystem, running compilers against the test suites of all publicly available modules. cf cpantesters.)