Danova kniha (
Očakáva sa, že zmena poruší veľké množstvo modulov CPAN v Perl 7 a bude vyžadovať zmeny v každom module, čo je nereálne implementovať v cieľovom roku, najmä preto, že nie všetci autori zostávajú k dispozícii. Zmeny v Perl 7 tiež zabránia použitiu modulov, ktoré sú navrhnuté tak, aby podporovali viac než len najnovšiu verziu Perlu.
Okrem toho sú uvedené nasledujúce možné problémy:
- Zmätok medzi začiatočníkmi v dôsledku niektorých príkladov a odporúčaní z manuálov napísaných pre Perl 7, ktoré nefungujú v Perl 5.
- Vplyv na vývoj jednovrstvových vložiek sa neskúmal. Perl sa aktívne používa nielen na písanie veľkých skriptov, ale aj na vytváranie jednoriadkových a krátkych skriptov pre potreby administrátorov, v ktorých je použitie prísneho režimu zbytočné.
- Distribúcie majú problém so súčasným doručovaním spustiteľných súborov pre spustenie skriptov Perl 7 a Perl 5 (očakáva sa, že príbeh sa bude opakovať s Pythonom 2 a 3).
- Kód napísaný pre Perl 7 nemusí špecificky uvádzať, že nebude bežať v Perle 5; mnohí vývojári nešpecifikujú minimálnu podporovanú verziu.
- Rôzne pomocné programy a moduly založené na Perl 5 budú vyžadovať opravy.
- Príprava Perlu 7 z dôvodu prerozdelenia zdrojov na nejaký čas zmrazí vývoj nových funkcií Perlu.
- Existuje riziko vyhorenia a odchodu aktívnych vývojárov interpreta Perl, modulov, nástrojov a sprievodných balíkov z dôvodu veľkého dodatočného pracovného zaťaženia bez náležitej motivácie (nie každý súhlasí s potrebou vytvárať Perl 7).
- Kultúra v komunite a postoj k stabilite Perlu sa zásadne zmení.
- Autorita jazyka bude podkopaná kvôli kritike, že Perl 7 je nekompatibilný s existujúcim kódom pri absencii niečoho zásadne nového.
Aby vyhladil negatívne dôsledky, Dan Book navrhol svoj plán, ktorý zabráni medzere v kompatibilite. Navrhuje sa zachovať rovnaký vývojový proces a namiesto 5.34.0 priradiť ďalšie číslo vydania 7.0.0, v ktorom zakážeme podporu zápisu nepriameho volania objektu a povolíme niektoré nové funkcie, ako napríklad try/catch. Zmeny ako „použiť prísne“ a „upozornenia na používanie“ sa navrhuje regulovať výslovným špecifikovaním verzie Perl v kóde prostredníctvom pragmy „použitie v7“ (prísne je už predvolene povolené pre „použitie v5.12“ a novšie vydania ).
Štandardne sa odporúča, aby si tlmočník zachoval sadu parametrov, ktoré sa nelíšia od Perlu 5, s výnimkou štandardného procesu čistenia zastaranej syntaxe, ktorý sa používal predtým. Podpora starších funkcií a zastaranej syntaxe môže byť naďalej ukončená v súlade s existujúcimi pravidlami ukončenia podpory. Navrhuje sa signalizovať použitie nových prvkov Perl 7 v kóde a oddeliť nové a staré štýly pomocou pragmy „use v7“.
Zdroj: opennet.ru