Π’Ρ‹ΡˆΠ΅Π» Perl 5.30.0


Π’Ρ‹ΡˆΠ΅Π» Perl 5.30.0

Π§Π΅Ρ€Π΅Π· Π³ΠΎΠ΄ послС Ρ€Π΅Π»ΠΈΠ·Π° Perl 5.28.0 состоялся Ρ€Π΅Π»ΠΈΠ· Perl 5.30.0.

Π’Π°ΠΆΠ½Ρ‹Π΅ измСнСния:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Unicode вСрсий 11, 12 ΠΈ Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° 12.1;
  • Π’Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΏΡ€Π΅Π΄Π΅Π» «n», Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΉ Π² ΠΊΠ²Π°Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ рСгулярного выраТСния Π² Ρ„ΠΎΡ€ΠΌΠ΅ «{m, n}», Π±Ρ‹Π» ΡƒΠ΄Π²ΠΎΠ΅Π½ Π΄ΠΎ 65534;
  • ΠœΠ΅Ρ‚Π°ΡΠΈΠΌΠ²ΠΎΠ»Ρ‹ Π² спСцификациях Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ свойств Unicode Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ частично ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° qr’N{name}’;
  • Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Perl, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ потокобСзопасныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΠΈ;
  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Π°Ρ Π΄Π»ΠΈΠ½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² сопоставлСнии с ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠΌ рСгулярного выраТСния Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ поддСрТиваСтся ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ;
  • Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ быстрый ΠΌΠ΅Ρ‚ΠΎΠ΄ для конвСртирования Π² UTF-8;
  • Π’ΡŽΡ€ΠΊΡΠΊΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΠΈ UTF-8 Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ;
  • Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ использованиС макроса opASSIGN ΠΈΠ· ядра;

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» ΡƒΠ΄Π°Π»Ρ‘Π½, ΠΈ нСсовмСстимыС измСнСния:

  • Π£Π΄Π°Π»Π΅Π½Ρ‹ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ: Math::BigInt::CalcEmu, arybase, Locale::Code, B::Debug;
  • Π Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ шаблонов Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π³Ρ€Π°Ρ„Π΅ΠΌΠ°ΠΌΠΈ;
  • Π Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π³Ρ€Π°Ρ„Π΅ΠΌΠ°ΠΌΠΈ;
  • НСкоторыС Ρ€Π°Π½Π΅Π΅ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ способы использования нСэкранированной Π»Π΅Π²ΠΎΠΉ скобки «{» Π² ΡˆΠ°Π±Π»ΠΎΠ½Π°Ρ… рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹;
  • НазначСниС Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ $[ (индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта массива) Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ„Π°Ρ‚Π°Π»ΡŒΠ½ΠΎ;
  • Π Π°Π½Π΅Π΅ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ sysread()/syswrite() ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ :utf8 Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹.
  • my() Π² Π»ΠΎΠΆΠ½Ρ‹Ρ… условиях Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Π°;
  • БчитаСтся ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ $* (пСрСмСнная использовалась для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ поиска многострочных соотвСтствий ΠΈ Π±Ρ‹Π»Π° ΡƒΠ΄Π°Π»Π΅Π½Π° Π² Perl v5.10.0) ΠΈ $# (пСрСмСнная использовалась для форматирования Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… чисСл ΠΈ Π±Ρ‹Π»Π° ΡƒΠ΄Π°Π»Π΅Π½Π° Π² Perl v5.10.);
  • БчитаСтся ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ Π½Π΅ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ использованиС dump();
  • Π£Π΄Π°Π»Π΅Π½Π° File::Glob::glob();
  • pack() большС Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΉ UTF-8;
  • Π›ΡŽΠ±ΠΎΠΉ Π½Π°Π±ΠΎΡ€ Ρ†ΠΈΡ„Ρ€ Π² ΠΎΠ±Ρ‰Π΅ΠΌ скриптС допустим Π² скриптС, выполняСмом Π΄Ρ€ΡƒΠ³ΠΈΠΌ скриптом;
  • JSON::PP ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ allow_nonref;

Π£ΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»:

  • Π’Π΅ΠΏΠ΅Ρ€ΡŒ нСльзя Π² ΠΊΠΎΠ΄Π΅ XS ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ макросы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ UTF-8;

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ