рдкрд░реНрд▓ 7 рдХреА рдШреЛрд╖рдгрд╛ рдХреА рдЧрдИ

рдХрд▓ рд░рд╛рдд рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рдкрд░реНрд▓ рдФрд░ рд░рд╛рдХреВ рд╕рдореНрдореЗрд▓рди рдореЗрдВ, рд╕реЙрдпрд░ рдПрдХреНрд╕ рдиреЗ рдШреЛрд╖рдгрд╛ рдХреА рдкрд░реНрд▓ рдХреЗ рдореБрдЦреНрдп рд╕рдВрд╕реНрдХрд░рдг рдХреЛ 5 рд╕реЗ 7 рдореЗрдВ рдмрджрд▓рдиреЗ рдкрд░ рдХрд╛рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдПрдХ рд╕рд╛рд▓ рдХреЗ рднреАрддрд░ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдкрдХреЛ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ: рдкрд░реНрд▓ 7 рдЕрднреА рднреА рдЖрдзреБрдирд┐рдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рд╡рд╣реА рдкрд░реНрд▓ 5.32 рд╣реИред рдЕрдм рдЖрдкрдХреЛ рдЙрди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рдирдХрд╛ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╡реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рдХрд░ рджреА рдЬрд╛рдПрдВрдЧреА!

рдХреНрдпрд╛ рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛?

рдЕрднреА рддрдХ рдХреЛрдИ рдкреВрд░реА рд╕реВрдЪреА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдЦреНрдд рдФрд░ рдЪреЗрддрд╛рд╡рдиреА рдЬрд╝рд░реВрд░ рд╣реИ! 7рд╡реАрдВ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ, рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╕рдВрднрд╡рддрдГ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдмрдиреЗ рд░рд╣реЗрдВрдЧреЗ; utf8 рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рднреА рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдХреНрдпрд╛ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

  • рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд╡рд┐рдзрд┐ рдХреЙрд▓:

    {;
    рдкреИрдХреЗрдЬ рдлреВ;

    рдЙрдк рдирдпрд╛ { рдЖрд╢реАрд░реНрд╡рд╛рдж рджреЗрдВ { } }
    рд╕рдм рдмрд╛рд░ {рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ "рд╣реИрд▓реЛ рдлреНрд░реЙрдо рдмрд╛рд░()!рдПрди" рдПрдХреНрд╕ рдкреЙрдк }
    }

    # рд╕рд╛рдорд╛рдиреНрдп рдХреЙрд▓
    рдореЗрд░рд╛ $foo = Foo->new();
    # рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рдХреЙрд▓
    рдмрд╛рд░ $рдлреВ 42;

  • рд╡рд░реНрдгрдирдХрд░реНрддрд╛ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЦрд╛рд▓реА рд╢рдмреНрдж (рдирдВрдЧреЗ рд╢рдмреНрдж) (рдорд╛рдирдХ рд╢рдмреНрджреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ (STDIN, STDOUT, STDERR))
  • рдкрд░реНрд▓ 4 рд╢реИрд▓реА рдЫрджреНрдо рдмрд╣реБрдЖрдпрд╛рдореА рд╣реИрд╢ред

    # рдЙрджрд╛рд╣рд░рдг perldoc perlvar рд╕реЗ рд▓рд┐рдП рдЧрдП рд╣реИрдВ
    $рдлреВ{$x,$y,$z}
    # рдХрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд░реНрде рд╣реИ $foo{join($;, $x, $y, $z)}

  • рдкрд░реНрд▓ 4 рд╢реИрд▓реА рдореЗрдВ рдкреБрд░рд╛рдиреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдкред рдЕрдм рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛:

    рдЙрдк рдлреВ :рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк($$) ($рдмрд╛рдПрдВ, $рджрд╛рдПрдВ) {
    рд╡рд╛рдкрд╕реА $рдмрд╛рдПрдБ + $рджрд╛рдПрдБ;
    }

    рдкрд╣рд▓реЗ рдПрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдЬреЛ рдХреЙрд▓ рдХреЗ рд╕рдВрдХрд▓рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдЬреЛ рд░рдирдЯрд╛рдЗрдо рдкрд░ рддрд░реНрдХреЛрдВ рдХреЛ рдЙрдЪрд┐рдд рдЪрд░ рдореЗрдВ рд░рдЦрддрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЕрднреА рднреА рд╕рдм рдХреБрдЫ рдереЛрдХ рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реЛрдЧрд╛:
compat::perl5 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ;
рдпрд╛ рдПрдХ рд╕рдордп рдореЗрдВ рдПрдХ.

рдкрд░реНрд▓ 5.32 5 рд╡рд░реНрд╖реЛрдВ рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд╕рдорд░реНрдерди рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИред

рдмреНрд░рд╛рдпрди рдбреА рдлрд╝реЛрдп рдХреА рдУрд░ рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдШреЛрд╖рдгрд╛: https://www.perl.com/article/announcing-perl-7/
рдЙрдирд╕реЗ рдЯреАрдПрд▓; рдбреАрдЖрд░ рд╕рдВрд╕реНрдХрд░рдг: http://blogs.perl.org/users/brian_d_foy/2020/06/the-perl-7-tldr.html

рд╕реНрд░реЛрдд: linux.org.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ