Category:Perl 6: Difference between revisions
m
updated info for new release, link to 6pad
(Todo) |
SqrtNegInf (talk | contribs) m (updated info for new release, link to 6pad) |
||
Line 15:
{{language programming paradigm|object-oriented}}
{{language programming paradigm|generic}}
{{infobox_begin}}[https://perl6.github.io/6pad/ Try this language on 6pad].{{infobox_end}}
Perl 6 is the up-and-coming little sister to Perl 5.
Though it resembles previous versions of [[Perl]] to no small degree, Perl 6 is substantially a new language; by design, it isn't backwards-compatible with Perl 5.
Line 21 ⟶ 22:
Damian Conway described the basic philosophy of Perl 6 as follows:
<blockquote>The Perl 6 design process is about keeping what works in Perl 5, fixing what doesn't, and adding what's missing. That means there will be a few fundamental changes to the language, a large number of extensions to existing features, and a handful of completely new ideas. These modifications, enhancements, and innovations will work together to make the future Perl even more insanely great -- without, we hope, making it even more greatly insane.</blockquote>
Major new features include multiple dispatch, declarative classes, grammars, formal parameters to subroutines, type constraints on variables, lazy evaluation, junctions, meta-operators, and the ability to change Perl's syntax at will.
The definition of Perl 6 is specified entirely by a test suite, so we could in theory have multiple implementations.
The current version of the language is 6.
Compiler releases have date-based versions, and these are typically used in Rosetta Code entries for the "works with" fields.
The only compiler implementing the full test suite,
Subsequent language revisions are planned
<br clear=right><!-- Stop the category list and infobox from overlapping -->
|