Perl 7 ragihand

Di konferansa virtual ya îro ya pêşdebirên zimanê Perl de ragihand projeyek Perl 7 ku dê pêşkeftina şaxê Perl 5 bi aramî berdewam bike bêyî ku guhartinên radîkal bike. Perl 7 dê serbestberdana wekhev be Perl 5.32.0, ji bilî mîhengên xwerû yên din ên ku bi pratîkên pêşkeftina nûjen re hevaheng in. Wekî din, Perl 7 dê wekî Perl 5 bimîne û dê bi serîlêdanên berê yên pêşkeftî re hevaheng bimîne.

Guherînek girîng di hejmara guhertoyê de dê wekî celebek veqetandî ji bo veguheztina modelek nû ji bo zêdekirina fonksiyona zimanê Perl bêyî binpêkirinek berbiçav a lihevhatina paşdemayî tevbigere.
Tê çaverêkirin ku serbestberdana Perl 7 bibe alîkar ku pêşdebirên nû li Perl bikişîne û bibe alîkar ku pêvajoya zêdekirina taybetmendiyên nû yên girîng li ziman di heman demê de hevahengiya bi bingeha koda projeyên heyî re biparêze. Jimar 7 hate hilbijartin ji ber ku Perl 6 ji bo pêşxistina zimanê ku niha tê bikar anîn pêşdikeve di bin navê cuda Raku. Yekem serbestberdana Perl 7 tê payîn ku sala bê. Şaxa Perl 5.32 dê di rêza Perl 5 de ya paşîn be û tê plan kirin ku ji 5 heta 10 salan were piştgirî kirin.

Guhertina herî berbiçav di Perl 7 de tevlêbûna "zexma", ku tê wateya kontrolkirina hişk a daxuyaniyên guhêrbar, karanîna nîşangirên sembolîk û peywirên jêrîn. Bikaranîna "bikaranîna hişk" rengek baş e û ji hêla pir pêşdebiran ve tê bikar anîn. Bi heman rengî, ji hêla xwerû ve ew plan dikin ku pêvajoyek hişyariyê çalak bikin ("hişyariyan bikar bînin").

Perl 7 di heman demê de hêvî dike ku hin taybetmendiyên ceribandinê yên berê yên heyî, wek mînak, aram bike û çalak bike îmzeyên fonksiyonê ("bikaranîna taybetmendiya 'îmzayan'"), ya ku dihêle, dema ku fonksiyonek diyar dike, argumanên hatinî diyar bike û jimareya wan bixweber kontrol bike (hûn dikarin li şûna "sub foo" binivîsin "sub foo ($çep, $rast) {" my ($çep, $rast) ) = @_;"). Ew plan dikin ku ji hêla xwerû ve piştgirî ji bo operatora "isa" vebigirin da ku kontrol bikin ka tiştek mînakek çînek diyarkirî ye an çînek jê hatî peyda kirin ("if($obj isa Package::Name)", û her weha paşnavkirina paşnavkirinê operasyonên (postderef) "$ sref->$*" li şûna "${ $sref }", "$aref->@*" li şûna "@{ $aref }" û "$href->%{ ... }" li şûna "%$href{ ... }"

Pêşniyarên ku di Perl 7-ê de ji hêla xwerû ve têne asteng kirin ev in:

  • Nîşana bangkirina neyekser ("bê taybetmendî qw (nerasterast)") rêyek mîrasî ye ji bo bangkirina tiştan, li şûna "->" ("rêbaza $object @param" li şûna "$object->$method(@param)" cîhek bikar tîne. Mînakî, li şûna "$cgi min = CGI-ya nû" hûn ê her gav "$cgi min = CGI->new" bikar bînin.
  • Danasînên pelê yên bare yên bêyî daxuyaniyên guhêrbar ("ne bareword::filehandle") - bikaranîna avahiyên mîna "vekirina FH, pelê $" dê bibe sedema xeletiyek, hûn hewce ne ku "pelê min $fh veke, $pelê min veke" bikar bînin. Guhertin dê bandorê li ravekerên pelê standard STDIN, STDOUT, STDERR, ARGV, ARGVOUT û DATA neke.
  • Perl 4 rêzikên piralî û haşe yên dummy ("ne piralî").
    Mînakî, destnîşankirina "$hash{1, 2}" dê bibe sedema xeletiyek; hûn hewce ne ku rêzek navîn bikar bînin, mînakî "$hash{join($;, 1, 2)}".

  • Daxuyankirina prototîpên bi şêwaza Perl 4 (hûn hewce ne ku "bikar bînin: prototype ()").

Di planên dûrtir de, ew li bendê ne ku piştgiriya Unicode-ê ji hêla xwerû ve çalak bikin, ku dê pêşdebiran ji diyarkirina "utf8 bikar bînin" di kodê de xilas bike. Ji bo modul û skrîptên ku bi mîhengên xwerû yên nû re pirsgirêk hene, mimkun e ku bi lê zêdekirina rêzika "bikaranîna compat::perl5" li kodê vegere tevgera Perl 5. Mîhengên takekesî jî dê bêne tomar kirin û dikarin bi rengek kesane werin guhertin.

Source: opennet.ru

Add a comment