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 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


Reply via email to