{"id":86435,"date":"2020-06-25T01:42:12","date_gmt":"2020-06-24T23:42:12","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/anonsirovan-perl-7"},"modified":"2020-06-25T01:42:12","modified_gmt":"2020-06-24T23:42:12","slug":"anonsirovan-perl-7","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/anonsirovan-perl-7","title":{"rendered":"Perl 7 has been announced","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>At today's virtual conference for Perl language developers <noindex><a rel=\"nofollow\" href=\"https:\/\/www.perl.com\/article\/announcing-perl-7\/\">announced<\/a><\/noindex> the Perl 7 project, which will smoothly continue the development of the Perl 5 branch without radical changes. Perl 7 will be similar to the release <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53207\">Perl 5.32.0<\/a><\/noindex>, except for different default settings that better align with modern development practices. In all other respects, Perl 7 will remain the same Perl 5 and maintain compatibility with previously developed applications.<\/p>\n<p>A significant change in the version number will act as a marker for the transition to a new model of enhancing the functionality of the Perl language without noticeably breaking backward compatibility.<br \/>\nIt is expected that the creation of Perl 7 will help attract new developers to Perl and facilitate the process of adding significant new features to the language while maintaining compatibility with the existing codebase. The number 7 was chosen since Perl 6 was used in the development of the language, which is now <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51679\">is being developed<\/a><\/noindex> under the separate name Raku. The first release of Perl 7 is anticipated next year. The Perl 5.32 branch will be the last in the Perl 5 series and is planned to be supported for 5 to 10 years.<\/p>\n<p>The most notable change in Perl 7 will be the default inclusion of the mode \u201c<noindex><a rel=\"nofollow\" href=\"https:\/\/perldoc.perl.org\/strict.html\">type manipulations,<\/a><\/noindex>\u201d, which implies strict checking of variable declarations, the use of symbolic references, and subroutine assignments. Using \u201cuse strict\u201d is considered good practice and is adopted by most developers. Similarly, it is planned to enable warning handling by default (\u201c<noindex><a rel=\"nofollow\" href=\"https:\/\/perldoc.perl.org\/warnings.html\">use warnings<\/a><\/noindex>&#171;).<\/p>\n<p> In Perl 7, they also plan to stabilize and include by default some already existing experimental features such as  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=39865\">function signatures<\/a><\/noindex> (\u201cuse feature \u2018signatures\u2019\u201d), allowing the specification of incoming arguments when defining a function and automating their count check (you will be able to write \u201csub foo ($left, $right) {\u201d instead of \u201csub foo { my($left, $right) = @_;}\u201d. Support for the \u201cisa\u201d operator will also be enabled by default for checking whether an object is an instance of a specified class or a derived class (\u201cif( $obj isa Package::Name )\u201d, as well as postfix dereferencing operations \u201c$sref-&gt;$*\u201d instead of \u201c${ $sref }\u201d, \u201c$aref-&gt;@*\u201d instead of \u201c@{ $aref }\u201d, and \u201c$href-&gt;%{ ... }\u201d instead of \u201c%$href{ ... }\u201d. <\/p>\n<p>The candidates for being disabled by default in Perl 7 are:<\/p>\n<ul>\n<li class=\"l\"> Indirect object notation (\u201c<noindex><a rel=\"nofollow\" href=\"https:\/\/metacpan.org\/pod\/indirect\">no feature qw(indirect)<\/a><\/noindex>\u201d) is an outdated way of calling objects, where a space is used instead of \u201c-&gt;\u201d (\u201cmethod $object @param\u201d instead of \u201c$object-&gt;$method(@param)\u201d). For example, instead of \u201cmy $cgi = new CGI\u201d, you will always need to use \u201cmy $cgi = CGI-&gt;new\u201d.\n<li class=\"l\"> Bare filehandles without variable declaration (\u201c<noindex><a rel=\"nofollow\" href=\"https:\/\/metacpan.org\/pod\/bareword::filehandles\">no bareword::filehandle<\/a><\/noindex>\u201d) \u2014 using constructs like \u201copen FH, $file\u201d will result in an error; you need to use \u201copen my $fh, $file\u201d. This change will not affect the standard filehandles STDIN, STDOUT, STDERR, ARGV, ARGVOUT, and DATA.\n<li class=\"l\"> Dummy multidimensional arrays and hashes in Perl 4 style (\u201c<noindex><a rel=\"nofollow\" href=\"https:\/\/metacpan.org\/pod\/multidimensional\">no multidimensional<\/a><\/noindex>&#171;).<br \/>\nFor example, referencing \u201c$hash{1, 2}\u201d will result in an error; you need to use an intermediate array, such as \u201c$hash{join($;, 1, 2)}\u201d.<\/p>\n<li class=\"l\"> Prototype declaration in Perl 4 style (you need to use \u201cuse :prototype()\u201d).\n<\/ul>\n<p>In further plans, it is expected to enable Unicode support by default, which will free developers from specifying \u201cuse utf8\u201d in their code. For modules and scripts that encounter issues with the new default settings, there will be the possibility to revert to Perl 5 behavior by adding the line \u201cuse compat::perl5\u201d in the code. Individual settings will also be preserved and can be modified separately.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Source: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53226\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0430 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0435\u0439 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u044f\u0437\u044b\u043a\u0430 Perl \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u0440\u043e\u0435\u043a\u0442 Perl 7, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043b\u0430\u0432\u043d\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u0432\u0435\u0442\u043a\u0438 Perl 5 \u0431\u0435\u0437 \u0432\u043d\u0435\u0441\u0435\u043d\u0438\u044f \u0440\u0430\u0434\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439. Perl 7 \u0431\u0443\u0434\u0435\u0442 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u0435\u043d \u0432\u044b\u043f\u0443\u0441\u043a\u0443 Perl 5.32.0, \u0437\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0438\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043b\u0443\u0447\u0448\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0412 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u043c Perl 7 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f \u0442\u0435\u043c \u0436\u0435 Perl 5 \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u0440\u0430\u043d\u0435\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-86435","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0430 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0435\u0439 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u044f\u0437\u044b\u043a\u0430 Perl \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u0440\u043e\u0435\u043a\u0442 Perl 7, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043b\u0430\u0432\u043d\u043e.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/anonsirovan-perl-7\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0410\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d Perl 7 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0430 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0435\u0439 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u044f\u0437\u044b\u043a\u0430 Perl \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u0440\u043e\u0435\u043a\u0442 Perl 7, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043b\u0430\u0432\u043d\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/anonsirovan-perl-7\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-06-24T23:42:12+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-06-24T23:42:12+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Perl 7 announced | ProHoster","description":"At today's ongoing virtual conference of Perl language developers, the Perl 7 project was announced, which will transition smoothly.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/anonsirovan-perl-7","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0410\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d Perl 7 | ProHoster","og:description":"\u041d\u0430 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0435\u0439 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u044f\u0437\u044b\u043a\u0430 Perl \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u0440\u043e\u0435\u043a\u0442 Perl 7, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043b\u0430\u0432\u043d\u043e.","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/anonsirovan-perl-7","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-06-24T23:42:12+00:00","article:modified_time":"2020-06-24T23:42:12+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"86435","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 14:15:25","updated":"2022-10-02 14:36:01","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/86435","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=86435"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/86435\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=86435"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=86435"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=86435"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}