Perl 7-ը հայտարարվեց

Անցած գիշեր Պերլի և Ռակուի համաժողովում ամպի մեջ, Sawyer X-ը հայտարարեց փոխելով Perl-ի հիմնական տարբերակը 5-ից 7-ի։Աշխատանքներն արդեն ընթանում են, նոր տարբերակը կթողարկվի մեկ տարվա ընթացքում։ Դուք չպետք է ակնկալեք շատ փոփոխություններ, մի խոսքով. Perl 7-ը դեռ նույն Perl 5.32-ն է՝ ժամանակակից լռելյայն կարգավորումներով: Այլևս կարիք չկա հստակորեն միացնել այն գործառույթները, որոնք արդեն օգտագործում եք, դրանք միացված կլինեն ձեզ համար:

Ի՞նչ է ներառվելու:

Դեռ ամբողջական ցուցակ չկա, բայց խիստ և զգուշացումներ հաստատ։ 7-րդ թողարկումում ստորագրությունները, ամենայն հավանականությամբ, կմնան փորձնական, utf8-ը նույնպես ժամանակ չի ունենա ներառվելու։

Ի՞նչն է անջատվելու:

  • Անուղղակի մեթոդի կանչեր.

    {;
    փաթեթ Foo;

    ենթ նոր { օրհնել {} }
    ենթագոտ { տպել «Hello from bar()!n» x pop }
    }

    # Սովորական զանգ
    իմ $foo = Foo->new();
    # Անուղղակի զանգ
    բար $foo 42;

  • Դատարկ բառեր (բաց բառեր) որպես նկարագրիչի նույնացուցիչ (բացառությամբ ստանդարտների (STDIN, STDOUT, STDERR))
  • Perl 4 ոճի կեղծ բազմաչափ հեշեր:

    # օրինակ վերցված perldoc perlvar-ից
    $foo{$x,$y,$z}
    # իրականում նշանակում է $foo{join($;, $x, $y, $z)}

  • Հին նախատիպեր Perl 4 ոճով: Այժմ ձեզ հարկավոր է գրել միայն այսպես.

    sub foo :prototype($$) ($ձախ, $աջ) {
    վերադարձնել $ձախ + $աջ;
    }

    Նախ նախատիպ, որն ազդում է կանչերի կազմման վրա, այնուհետև ստորագրություններ, որոնք արգումենտները տեղադրում են համապատասխան փոփոխականներում՝ գործարկման ժամանակ:

Այնուամենայնիվ, դեռ հնարավորություն կլինի մեծաքանակ վերադարձնել ամեն ինչ.
օգտագործել compat::perl5;
Կամ մեկ առ մեկ:

Perl 5.32-ն անցնում է երկարաժամկետ աջակցության 5 տարի ժամկետով:

Ընդլայնված հայտարարություն Բրայան Դ Ֆոյից. https://www.perl.com/article/announcing-perl-7/
TL;DR տարբերակը նրանից. http://blogs.perl.org/users/brian_d_foy/2020/06/the-perl-7-tldr.html

Source: linux.org.ru

Добавить комментарий