Perl 7 が発表されました

昨夜のクラウドでの Perl とraku カンファレンスでは、 ソーヤーXが発表 Perl のメイン バージョンを 5 から 7 に変更します。作業はすでに進行中で、新しいバージョンは 7 年以内にリリースされる予定です。 簡単に言うと、多くの変更は期待しないでください。つまり、Perl 5.32 は、最新のデフォルト設定を備えた Perl XNUMX と同じです。 すでに使用している機能を明示的に有効にする必要はなくなり、自動的に有効になります。

何が含まれますか?

まだ完全なリストはありませんが、厳密で警告があることは確かです。 7 番目のリリースでは、署名は実験的なままになる可能性が高く、utf8 も含める時間がありません。

何が無効になりますか?

  • 間接メソッド呼び出し:

    {;
    パッケージ Foo;

    サブ新しい { 祝福 {} }
    sub bar { print "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($$) ($left, $right) {
    $left + $right を返します。
    }

    まず呼び出しのコンパイルに影響を与えるプロトタイプ、次に実行時に引数を適切な変数に配置するシグネチャです。

ただし、すべてを一括して返品する機会はまだあります。
compat::perl5 を使用します。
または一度に XNUMX つずつ。

Perl 5.32 は 5 年間の長期サポートに入ります。

ブライアン・D・フォイからの延長発表: 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

出所: linux.org.ru

コメントを追加します