Perl 7 do të vazhdojë zhvillimin e Perl 5 pa prishur kompatibilitetin e prapshëm

Këshilli drejtues i projektit Perl përmbledh planet për zhvillimin e mëtejshëm të degës Perl 5 dhe krijimin e degës Perl 7. Gjatë diskutimeve, këshilli ra dakord se nuk është e pranueshme të shkelet kompaktibiliteti me kodin e shkruar tashmë për Perl 5, përveç rasteve kur shkelja e kompaktibilitetit është e nevojshme për të eliminimin e dobësive. Këshilli gjithashtu arriti në përfundimin se gjuha duhet të zhvillohet dhe duhet të promovohen më intensively mundësitë e reja, duke e bërë më të lehtë aksesin në risitë e reja dhe duke stimuluar implementimin e tyre.

Ndryshe nga qëllimet fillestare, të cilat parashikonin përfshirjen si parazgjedhje të ndryshimeve që shkelin kompaktibilitetin në degën Perl 7, plani i ri parashikon një kalim progresiv të degës Perl 5 në Perl 7 pa shkelur kompaktibilitetin me kodin ekzistues. Lëshimi i Perl 7.0 konceptualisht nuk do të ndryshojë nga dega tjetër e Perl 5.xx.

Zhvillimi i lĂ«shimeve tĂ« reja tĂ« Perl 5 do tĂ« vazhdojĂ« si mĂ« parĂ« — mundĂ«sitĂ« e reja qĂ« nuk janĂ« tĂ« komaptibilshme me kodin e vjetĂ«r do tĂ« pĂ«rfshihen vetĂ«m me tregimin e qartĂ« nĂ« kodin e pragmĂ«s «use version» ose «use feature mundĂ«si». PĂ«r shembull, nĂ« versionin Perl 5.010 u prezantua fjala e re kyçe «say», por pĂ«r shkak se nĂ« kodin ekzistues mund tĂ« ishin pĂ«rdorur funksione me emrin «say», mbĂ«shtetje pĂ«r fjalĂ«n e re kyçe pĂ«rfshihej vetĂ«m me tregimin e qartĂ« tĂ« pragmĂ«s «use feature ‘say'».

Sintaksa e re që po i shtohet gjuhës, e cila në manipulimin e lëshimeve të kaluara çonte në shfaqjen e një gabimi, bëhet e aksesueshme menjëherë pa nevojën për të treguar pragmat speciale. Për shembull, në Perl 5.36 do të shfaqet sintaksa e thjeshtëzuar për përpunimin një herë të disa vlerave të listës («foreach my ($key, $value) (%hash) {«), e cila do të jetë menjëherë e aksesueshme, përfshirë në kodin pa pragmën «use v5.36».

NĂ« formĂ«n e tanishme nĂ« Perl 5.36, kur pĂ«rdoret pragma «use v5.36» aktivizohen 13 mundĂ«si qĂ« shkelin kompaktibilitetin (‘say’, ‘state’, ‘current_sub’, ‘fc’, ‘lexical_subs’, ‘signatures’, ‘isa’, ‘bareword_filehandles’, ‘bitwise’, ‘evalbytes’, ‘postderef_qq’, ‘unicode_eval’ dhe ‘unicode_strings’), aktivizohen si parazgjedhje modelet «use strict» dhe «use warnings» dhe ndalohet mbĂ«shtetje pĂ«r notimin e vjetĂ«r tĂ« thirrjes pĂ«r objekte (kur nĂ« vend tĂ« «->» pĂ«rdoret njĂ« hapĂ«sirĂ«) dhe pĂ«rmasat dhe hash-et nĂ« stilin Perl 4 («$hash{1, 2}»).

Kur të grumbullohen mjaft ndryshime, në vend të lëshimit tjetër Perl 5.x do të formohet një version Perl 7.0, i cili do të bëhet një lloj prerje e gjendjes, por do të mbetet plotësisht e kompaktibilitetit të mbrapshtë me Perl 5. Për të përfshirë ndryshimet dhe konfigurimet që shkelin kompaktibilitetin do të kërkohet tregim i qartë në kodin e pragmës «use v7». Pra, kodi me pragmën «use v7» mund të interpretohet si «Perl modern», në të cilin janë të aksesueshme ndryshimet që shkelin kompaktibilitetin të gjuhës, ndërsa pa - «Perl konservator», i cili do të mbetet plotësisht e kompaktibilitetit të mbrapshtë me lëshimet e kaluara.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster