рдкрд░реНрд▓ 7 рдЪреА рдШреЛрд╖рдгрд╛ рдХреЗрд▓реА

рдкрд░реНрд▓ рднрд╛рд╖рд╛ рд╡рд┐рдХрд╕рдХрд╛рдВрдЪреНрдпрд╛ рдЖрдЬрдЪреНрдпрд╛ рдЖрднрд╛рд╕реА рдкрд░рд┐рд╖рджреЗрдд рдШреЛрд╖рд┐рдд рдХреЗрд▓реЗ рдПрдХ рдкрд░реНрд▓ 7 рдкреНрд░рдХрд▓реНрдк рдЬреЛ рдЖрдореВрд▓рд╛рдЧреНрд░ рдмрджрд▓ рди рдХрд░рддрд╛ рдкрд░реНрд▓ 5 рд╢рд╛рдЦреЗрдЪрд╛ рд╡рд┐рдХрд╛рд╕ рд╕реБрд░рд│реАрддрдкрдгреЗ рд╕реБрд░реВ рдареЗрд╡реЗрд▓. Perl 7 рд╕рдорд╛рди рд░рд┐рд▓реАрдЭ рдЕрд╕реЗрд▓ рдкрд░реНрд▓ 5.32.0, рдЖрдзреБрдирд┐рдХ рд╡рд┐рдХрд╛рд╕ рдкрджреНрдзрддреАрдВрд╢реА рдЕрдзрд┐рдХ рд╕реБрд╕рдВрдЧрдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдЗрддрд░ рдбреАрдлреЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рд╡рдЧрд│рддрд╛. рдЕрдиреНрдпрдерд╛, Perl 7 Perl 5 рдкреНрд░рдорд╛рдгреЗрдЪ рд░рд╛рд╣реАрд▓ рдЖрдгрд┐ рдкреВрд░реНрд╡реА рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрд╢реА рд╕реБрд╕рдВрдЧрдд рд░рд╛рд╣реАрд▓.

рдЖрд╡реГрддреНрддреА рдХреНрд░рдорд╛рдВрдХрд╛рдордзреНрдпреЗ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдмрджрд▓ рд╣реЗ рдкрд░реНрд▓ рднрд╛рд╖реЗрдЪреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╡рд╛рдврд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА рдирд╡реАрди рдореЙрдбреЗрд▓рдордзреНрдпреЗ рд╕рдВрдХреНрд░рдордгрд╛рд╕рд╛рдареА рдПрдХ рдкреНрд░рдХрд╛рд░рдЪреЗ рд╡рд┐рднрд╛рдЬрдХ рдореНрд╣рдгреВрди рдХрд╛рд░реНрдп рдХрд░реЗрд▓, рдЬреЗ рдорд╛рдЧрд╛рд╕ рдЕрдиреБрдХреВрд▓рддреЗрдЪреЗ рд▓рдХреНрд╖рдгреАрдп рдЙрд▓реНрд▓рдВрдШрди рди рдХрд░рддрд╛.
рдкрд░реНрд▓ 7 рдЪреНрдпрд╛ рд░рд┐рд▓реАрдЭрдореБрд│реЗ рдирд╡реАрди рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрдирд╛ рдкрд░реНрд▓рдХрдбреЗ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдгреНрдпрд╛рдд рдорджрдд рд╣реЛрдИрд▓ рдЖрдгрд┐ рд╡рд┐рджреНрдпрдорд╛рди рдкреНрд░рдХрд▓реНрдкрд╛рдВрдЪреНрдпрд╛ рдХреЛрдб рдмреЗрд╕рд╢реА рд╕реБрд╕рдВрдЧрддрддрд╛ рд░рд╛рдЦреВрди рднрд╛рд╖реЗрдордзреНрдпреЗ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдирд╡реАрди рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрд▓рдн рдХрд░рдгреНрдпрд╛рдд рдорджрдд рд╣реЛрдИрд▓ рдЕрд╢реА рдЕрдкреЗрдХреНрд╖рд╛ рдЖрд╣реЗ. рдХреНрд░рдорд╛рдВрдХ 7 рдирд┐рд╡рдбрд▓рд╛ рдЧреЗрд▓рд╛ рдХрд╛рд░рдг рдкрд░реНрд▓ 6 рдЪрд╛ рд╡рд╛рдкрд░ рдЖрддрд╛рдЪреА рднрд╛рд╖рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреЗ рд░рд╛рдХреВ рдпрд╛ рд╡реЗрдЧрд│реНрдпрд╛ рдирд╛рд╡рд╛рдиреЗ. рдкрд░реНрд▓ 7 рдЪреЗ рдкрд╣рд┐рд▓реЗ рдкреНрд░рдХрд╛рд╢рди рдкреБрдвреАрд▓ рд╡рд░реНрд╖реА рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрд╣реЗ. Perl 5.32 рд╢рд╛рдЦрд╛ Perl 5 рдорд╛рд▓рд┐рдХреЗрддреАрд▓ рд╢реЗрд╡рдЯрдЪреА рдЕрд╕реЗрд▓ рдЖрдгрд┐ рддреА 5 рддреЗ 10 рд╡рд░реНрд╖рд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдпреЛрдЬрдирд╛ рдЖрд╣реЗ.

рдкрд░реНрд▓ 7 рдордзреАрд▓ рд╕рд░реНрд╡рд╛рдд рд▓рдХреНрд╖рдгреАрдп рдмрджрд▓ рдореНрд╣рдгрдЬреЗ "рдХрдареЛрд░", рдЬреНрдпрд╛рдЪрд╛ рдЕрд░реНрде рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рдбрд┐рдХреНрд▓реЗрд░реЗрд╢рдиреНрд╕рдЪреА рдХрдбрдХ рддрдкрд╛рд╕рдгреА, рдкреНрд░рддреАрдХрд╛рддреНрдордХ рдкреЙрдЗрдВрдЯрд░ рдЖрдгрд┐ рд╕рдмрд░реВрдЯреАрди рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯреНрд╕рдЪрд╛ рд╡рд╛рдкрд░. "рд╡рд╛рдкрд░ рдХрдареЛрд░" рд╡рд╛рдкрд░рдгреЗ рд╣рд╛ рдЪрд╛рдВрдЧрд▓рд╛ рдкреНрд░рдХрд╛рд░ рдЖрд╣реЗ рдЖрдгрд┐ рдмрд╣реБрддреЗрдХ рд╡рд┐рдХрд╛рд╕рдХ рд╡рд╛рдкрд░рддрд╛рдд. рддреНрдпрд╛рдЪрдкреНрд░рдорд╛рдгреЗ, рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рддреЗ рдЪреЗрддрд╛рд╡рдгреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рдЪреА рдпреЛрдЬрдирд╛ рдХрд░рддрд╛рдд (тАЬрдЗрд╢рд╛рд░реЗ рд╡рд╛рдкрд░рд╛).

рдкрд░реНрд▓ 7 рджреЗрдЦреАрд▓ рдЖрдзреАрдЪ рдЕрд╕реНрддрд┐рддреНрд╡рд╛рдд рдЕрд╕рд▓реЗрд▓реА рдХрд╛рд╣реА рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ рдЬрд╕реЗ рдХреА рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рд╕реНрдерд┐рд░ рдЖрдгрд┐ рд╕рдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╢рд╛ рдХрд░рддреЗ рдлрдВрдХреНрд╢рди рд╕реНрд╡рд╛рдХреНрд╖рд░реНрдпрд╛ (тАЬрд╡реИрд╢рд┐рд╖реНрдЯреНрдп 'рд╕реНрд╡рд╛рдХреНрд╖рд░реА' рд╡рд╛рдкрд░рд╛ my($left, $right) ) = @_;"). рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡рд░реНрдЧрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ рдХреА рддреНрдпрд╛рдкрд╛рд╕реВрди рдкреНрд░рд╛рдкреНрдд рдХреЗрд▓реЗрд▓реЗ рд╡рд░реНрдЧ (тАЬif( $obj isa Package::Name)тАЭ, рддрд╕реЗрдЪ рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕ рдбреАрд░реЗрдлрд░рдиреНрд╕рд┐рдВрдЧрдЪреЗ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ рдХреА рдирд╛рд╣реА рд╣реЗ рддрдкрд╛рд╕рдгреНрдпрд╛рд╕рд╛рдареА тАЬisaтАЭ рдСрдкрд░реЗрдЯрд░рд╕рд╛рдареА рдбреАрдлреЙрд▓реНрдЯ рд╕рдорд░реНрдерди рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рддреНрдпрд╛рдВрдЪреА рдпреЛрдЬрдирд╛ рдЖрд╣реЗ. рдСрдкрд░реЗрд╢рдиреНрд╕ (рдкреЛрд╕реНрдЯрдбреЗрд░реЗрдл) "${ $sref } рдРрд╡рдЬреА "$ sref->$*", "$aref->@*" рдРрд╡рдЬреА "@{ $aref }" рдЖрдгрд┐ "$href->%{ ... "%$href{ ... }" рдРрд╡рдЬреА }"

рдкрд░реНрд▓ 7 рдордзреНрдпреЗ рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рдЕрдХреНрд╖рдо рд╣реЛрдгреНрдпрд╛рдЪреЗ рджрд╛рд╡реЗрджрд╛рд░ рдЖрд╣реЗрдд:

  • рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЙрд▓рд┐рдВрдЧ рдиреЛрдЯреЗрд╢рди ("рдХреЛрдгрддреЗрд╣реА рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдирд╛рд╣реА qw(рдЕрдкреНрд░рддреНрдпрдХреНрд╖)") "->" ("$object->$method(@param)" рдРрд╡рдЬреА "рдкрджреНрдзрдд $object @param" рдРрд╡рдЬреА рд╕реНрдкреЗрд╕ рд╡рд╛рдкрд░реВрди, рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЙрд▓ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдПрдХ рд╡рд╛рд░рд╕рд╛ рдорд╛рд░реНрдЧ рдЖрд╣реЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, "my $cgi = new CGI" рдРрд╡рдЬреА рддреБрдореНрд╣реА рдиреЗрд╣рдореА "my $cgi = CGI->рдирд╡реАрди" рд╡рд╛рдкрд░рд╛рд▓.
  • рдХреЛрдгрддреЗрд╣реА рд╡реЗрд░рд┐рдпреЗрдмрд▓ рдбрд┐рдХреНрд▓реЗрд░реЗрд╢рди рдирд╕рд▓реЗрд▓реЗ рдмреЗрдЕрд░ рдлрд╛рдЗрд▓ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░реНрд╕ ("рдХреЛрдгрддреЗрд╣реА рдмреЗрдЕрд░рд╡рд░реНрдб::рдлрд╛рдЗрд▓рд╣рдБрдбрд▓ рдирд╛рд╣реА") - "рдУрдкрди рдПрдлрдПрдЪ, $рдлрд╛рдЗрд▓" рд╕рд╛рд░рдЦреНрдпрд╛ рдмрд╛рдВрдзрдХрд╛рдорд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓реНрдпрд╛рдиреЗ рддреНрд░реБрдЯреА рдпреЗрдИрд▓, рддреБрдореНрд╣рд╛рд▓рд╛ "рдУрдкрди рдорд╛рдп $рдПрдлрдПрдЪ, $рдлрд╛рдЗрд▓" рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ. рдмрджрд▓рд╛рдЪрд╛ рдкрд░рд┐рдгрд╛рдо STDIN, STDOUT, STDERR, ARGV, ARGVOUT рдЖрдгрд┐ рдбреЗрдЯрд╛ рдпрд╛ рдорд╛рдирдХ рдлрд╛рдЗрд▓ рд╡рд░реНрдгрдирд╛рдВрд╡рд░ рд╣реЛрдгрд╛рд░ рдирд╛рд╣реА.
  • рдкрд░реНрд▓ 4 рд╢реИрд▓реАрдЪреЗ рдбрдореА рдмрд╣реБрдЖрдпрд╛рдореА рдЕреЕрд░реЗ рдЖрдгрд┐ рд╣реЕрд╢ ("рдмрд╣реБрдЖрдпрд╛рдореА рдирд╛рд╣реА).
    рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, "$hash{1, 2}" рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реНрдпрд╛рдиреЗ рддреНрд░реБрдЯреА рдпреЗрдИрд▓; рддреБрдореНрд╣рд╛рд▓рд╛ рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдЕреЕрд░реЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде "$hash{join($;, 1, 2)}".

  • рдкрд░реНрд▓ 4 рд╢реИрд▓реАрдордзреНрдпреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдШреЛрд╖рд┐рдд рдХрд░рдгреЗ (рддреБрдореНрд╣рд╛рд▓рд╛ "us :prototype()" рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ).

рдЕрдзрд┐рдХ рджреВрд░рдЪреНрдпрд╛ рдпреЛрдЬрдирд╛рдВрдордзреНрдпреЗ, рддреЗ рдпреБрдирд┐рдХреЛрдб рд╕рдкреЛрд░реНрдЯ рдмрд╛рдп рдбреАрдлреЙрд▓реНрдЯ рд╕рдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рдЪреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛рдд, рдЬреЗ рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрдирд╛ рдХреЛрдбрдордзреНрдпреЗ "utf8 рд╡рд╛рдкрд░рд╛" рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдкрд╛рд╕реВрди рд╡рд╛рдЪрд╡реЗрд▓. рдирд╡реАрди рдбреАрдлреЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрдЬрдордзреНрдпреЗ рд╕рдорд╕реНрдпрд╛ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдореЙрдбреНрдпреВрд▓реНрд╕ рдЖрдгрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕рд╕рд╛рдареА, рдХреЛрдбрдордзреНрдпреЗ "compat::perl5 рд╡рд╛рдкрд░рд╛" рдУрд│ рдЬреЛрдбреВрди рдкрд░реНрд▓ 5 рд╡рд░реНрддрдирд╛рд╡рд░ рдкрд░рдд рдпреЗрдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ. рд╡реИрдпрдХреНрддрд┐рдХ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рджреЗрдЦреАрд▓ рдЬрддрди рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддреАрд▓ рдЖрдгрд┐ рд╡реИрдпрдХреНрддрд┐рдХрд░рд┐рддреНрдпрд╛ рдмрджрд▓рд▓реНрдпрд╛ рдЬрд╛рдК рд╢рдХрддрд╛рдд.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛