I also was agreeing with Alex's critique of 6.c and then understanding Patrick's reply.
"Semantic Versioning" and Perl 5's versioning scheme is so thoroughly ingrained in me now that 6.c looked like a pre-production release number, and I was waiting for 6.0.0. After reading the explanation, it now looks "normal" to me. Alas there is new confusion. What does the "use v6....;" statement at the top of a Perl6 compunit mean? Require a version of the compiler, or semantics of a language spec? It can't mean both, because compiler version numbers eg 6.0.0.1.a are diverging from language spec identifiers eg 6.c. Seems like it would be useful to have different "use" statements to declare needed a certain compiler vs. language semantics, eg use 6.c, 'Perl'; # Use semantics of this spec use 6.0.0, 'Rakudo'; # Require the Rakudo compiler version 6.0.0 or higher use 6; # Require any compiler that implements any Perl 6 -y