Perl 5.36.0 luqadda barnaamijka ayaa diyaar ah

Sannad ka dib horumarinta, sii deynta laan cusub oo xasilloon oo ka mid ah luqadda barnaamijka Perl - 5.36 - ayaa la daabacay. Diyaarinta sii deynta cusub, qiyaastii 250 kun oo xariiq oo kood ah ayaa la beddelay, isbeddelada ayaa saameeya 2000 faylasha, 82 horumariyayaal ayaa ka qayb qaatay horumarinta.

Laanta 5.36 ayaa la siidaayay iyadoo la raacayo jadwalka horumarinta go'an ee la ansixiyay sagaal sano ka hor, taasoo ka dhigan in la sii daayo laamo cusub oo xasilan sanadkiiba hal mar iyo siideynta sixitaanka saddexdii biloodba mar. Qiyaastii hal bil gudaheed, waxaa la qorsheeyay in la sii daayo sixitaanka ugu horreysa ee Perl 5.36.1, taas oo sixi doonta khaladaadka ugu muhiimsan ee la aqoonsaday intii lagu jiray hirgelinta Perl 5.36.0. Marka lagu daro sii deynta Perl 5.36, taageerada laanta 5.32 waa la joojiyay, taas oo cusbooneysiinta mustaqbalka laga yaabo in la sii daayo kaliya haddii dhibaatooyinka amniga muhiimka ah la ogaado. Habka horumarinta laanta tijaabada ah ee 5.37 ayaa sidoo kale bilaabatay, taas oo ku saleysan siideynta xasilloon ee Perl 2023 ayaa la sameyn doonaa May ama Juun 5.38, haddii aan go'aan laga gaarin in loo beddelo lambarrada 7.x.

Isbeddellada muhiimka ah:

  • Taageerada saxeexyada shaqada waa la xasiliyay oo hadda waa la heli karaa marka la tilmaamayo "isticmaalka v5.36" pragma, taas oo kuu ogolaanaysa inaad si cad u qeexdo liiska doorsoomayaasha loo isticmaalo shaqada oo aad otomaatig u sameyso hawlgallada hubinta iyo qoondaynta qiyamka ee kala duwan xuduudaha soo galaya. Tusaale ahaan, koodhka hore loo isticmaalay: sub foo { die " doodo aad u badan oo loogu talagalay subroutine" ilaa @_>= 2; dhiman "Dood aad u yar oo loogu talagalay subrootine" ilaa @_ <= 2; my($bidix, $right) = @_; ku celi $bidix + $midig; }

    marka la isticmaalayo saxiixyada, waxaa lagu bedeli karaa:

    sub foo ($bidix, $right) { soo celi $bidix + $right; }

    Haddii aad wacdo foo oo leh wax ka badan laba dood, turjumaanku wuxuu tuurayaa qalad. Liisku wuxuu sidoo kale taageeraya doorsoome gaar ah "$", kaas oo kuu ogolaanaya inaad iska indhatirto qaar ka mid ah doodaha, tusaale ahaan, "sub foo ($ bidix, $, $right)" waxay kuu ogolaaneysaa inaad nuqul ka sameyso oo kaliya doodaha koowaad iyo saddexaad ee doorsoomayaasha. , halka saxda ah saddex waa in loo gudbiyaa doodda shaqada.

    Saxeexa saxeexa wuxuu kaloo kuu ogolaanayaa inaad qeexdo doodaha ikhtiyaariga ah oo aad qeexdo qiimaha caadiga ah haddii dood la waayo. Tusaale ahaan, adoo qeexaya "sub foo ($ bidix, $ right = 0)" doodda labaad waxay noqotaa ikhtiyaari haddii ay maqan tahay, qiimaha 0 waa la gudbay. Hawlgalka meelaynta, waxaad qeexi kartaa tibaaxo aan sabab lahayn, oo ay ku jiraan isticmaalka doorsoomayaasha kale. laga bilaabo liiska ama doorsoomayaasha caalamiga ah. Cadaynta xashiish ama array halkii doorsoome (tusaale, "sub foo ($bidix, @right)") waxay u oggolaan doontaa hal ama dhowr doodood in la gudbiyo.

  • Hawlaha lagu dhawaaqay iyadoo la adeegsanayo saxeexyada, taageerada meelaynta cabbirka dheeraadka ah ee "@_" array waxaa lagu dhawaaqaa inay tahay tijaabo waxayna keeni doontaa digniin (digniinka waxa la bixiyaa kaliya haddii @_ loo isticmaalo hawlaha lagu dhawaaqay iyadoo la isticmaalayo syntax cusub). Tusaale ahaan, digniin ayaa loo soo bandhigi doonaa shaqada: isticmaal v5.36; sub f ($x, $y = 123) { dheh "Doodda kowaad waa $_[0]"; }
  • Deggan oo la heli karo marka la tilmaamayo "isticmaalka v5.36" pragma, hawlwadeenka infix "isa" si loo hubiyo in shay uu yahay tusaale fasalka la cayimay ama fasalka laga soo qaatay. Tusaale ahaan: haddii ( $obj isa Xidhmada :: Magaca ) { … }
  • Marka la tilmaamayo pragma-ka β€œisticmaalka v5.36”, ka shaqaynta digniinta waa la daminayaa (qaabka β€œdigniinta isticmaalka” waa la hawlgeliyay).
  • Marka la tilmaamayo pragma-ka β€œisticmaalka v5.36”, taageerada tilmaanta aan tooska ahayn ee sheyga loogu yeero ("qaab aan toos ahayn") waa naafo - hab duug ah oo loogu yeero walxaha, kaas oo boos loo isticmaalo halkii "->" ("hab $ shayga @param" halkii "$ object-> $ hab (@param)"). Tusaale ahaan, halkii "my $cgi = CGI cusub" waxaad u baahan tahay inaad isticmaasho "my $cgi = CGI->cusub".
  • Marka la tilmaamayo "isticmaalka v5.36" pragma, taageerada ku dayashada arrays badan oo kala duwan iyo xashiishka qaabka Perl 4 ("feature multidimensional") waa naafo, taas oo u oggolaanaysa tilmaanta furayaal dhowr ah in loo turjumo qaab dhexdhexaad ah (tusaale, " $ hash{1, 2}") ayaa loo beddelay "$ hash{ku biir($;, 1, 2)}").
  • Marka la tilmaamayo "isticmaalka v5.36" pragma, taageerada farsamada laanta tijaabada ah ("bedelida muuqaalka"), oo la mid ah wareejinta iyo bayaannada kiiska, waa naafo (Perl wuxuu adeegsadaa erayga la bixiyay iyo marka ereyada muhiimka ah). Si aad u isticmaasho sifadan, laga bilaabo Perl 5.36, waa in aad si cad u qeexdaa 'use feature "switch", oo haddii aad qeexdo "nooca isticmaal", mar dambe si toos ah uma shaqayn doono.
  • Taageerada fasallada jilayaasha dheeraadka ah ee xargaha labajibbaaran ee tibaaxaha caadiga ah waa la dajiyay oo waa la heli karaa. Sifada ayaa kuu ogolaanaysa inaad samayso tartamo adigoo isticmaalaya shuruuc horumarsan ee isgoysyada, ka saarida, iyo midowga jilayaasha. Tusaale ahaan, '[AZ - W]' - jilayaasha A ilaa Z marka laga reebo W.
  • Taageerada hawlgallada "(?","()","{}"iyo"[]" qayb ahaan waa la xasiliyey oo si toos ah ayaa loo heli karaa; waxaad isticmaali kartaa calaamadaha """", """, iwm. Tusaale ahaan. , "qr"pat"
  • U yeedhida nooca shaqada bilaa dood waa mamnuuc, taas oo hadda keeni doonta khalad. @a = kala saar @madhan; # way sii socon doontaa @a = nooc; # khalad ayaa la daabici doonaa @a = sort(); # khalad ayaa la daabici doonaa
  • Calan cusub oo talis ah "-g" ayaa la soo jeediyay, kaas oo awood u siinaya habka loo raro guud ahaan feylka, halkii laga isticmaali lahaa xariiq. Ficilka calanku wuxuu la mid yahay tilmaanta "-0777".
  • Taageerada qeexitaanka Unicode ayaa la cusboonaysiiyay nooca 14.0.
  • Waxay ku siisaa maaraynta degdega ah ee ka reeban meelaha sabbaynaya (SIGFPE) oo la mid ah alaarmiyadaha kale sida SIGSEGV, taasoo kuu ogolaanaysa inaad ku xidho hawlwadeenadaada SIGFPE adoo sii maraya $SIG{FPE}, tusaale ahaan soo saarida lambarka khadka ee ay dhibaatadu ka dhacday.
  • Noocyada la cusboonaysiiyay ee cutubyada ku jira xirmada aasaasiga ah.
  • Kordhinta waxqabadka Awoodda lagu kaydiyo furayaasha xashiishka waaweyn si hufan iyada oo aan la isticmaalin miisaska xargaha la wadaago ayaa la bixiyay. Waxqabadka abuurista qiimayaal cusub ayaa si weyn loo hagaajiyay, tusaale ahaan koodhka soo socdaa wuxuu hadda ku socdaa 30% dhakhso: $str = "A" x 64; loogu talagalay (0..1_000_000) {@svs = kala qaybsanaan //, $str }
  • Koodhka turjubaanka wuxuu bilaabay adeegsiga qaar ka mid ah dhismooyinka lagu qeexay heerka C99. Dhismaha Perl hadda wuxuu u baahan yahay iskuduwe taageeraya C99. Taageerada lagu dhisayo noocyadii hore ee MSVC++ (VC12 ka hor) waa la joojiyay. Taageero lagu daray dhismaha Microsoft Visual Studio 2022 (MSVC++ 14.3).
  • Taageerada AT&T UWIN, DOS/DJGPP iyo aaladaha Novell NetWare waa la joojiyay.

Source: opennet.ru

Add a comment