Dan kirja (
Muutoksen odotetaan rikkovan suuren määrän CPAN-moduuleja Perl 7:ssä ja vaativan muutoksia jokaiseen moduuliin, mikä on epärealistista toteuttaa tavoitevuoden aikana, varsinkin kun kaikki kirjoittajat eivät ole saatavilla. Perl 7:n muutokset estävät myös sellaisten moduulien käytön, jotka on suunniteltu tukemaan muutakin kuin Perlin uusinta versiota.
Lisäksi mainitaan seuraavat mahdolliset ongelmat:
- Sekaannusta aloittelijoiden keskuudessa johtuen joistakin Perl 7:lle kirjoitetuista oppaista ja suosituksista, jotka eivät toimi Perl 5:ssä.
- Vaikutusta one-linerin kehitykseen ei ole tutkittu. Perliä käytetään aktiivisesti suurten skriptien kirjoittamisen lisäksi myös yksilinjaisten ja lyhyiden komentosarjojen luomiseen ylläpitäjien tarpeisiin, joissa tiukan tilan käyttö on tarpeetonta.
- Jakeluilla on ongelma suoritettavien tiedostojen toimittamisessa samanaikaisesti Perl 7- ja Perl 5 -skriptien suorittamiseen (tarinan odotetaan toistuvan Python 2:n ja 3:n kanssa).
- Perl 7:lle kirjoitetun koodin ei tarvitse erikseen mainita, että se ei toimi Perl 5:ssä; monet kehittäjät eivät määritä tuettua vähimmäisversiota.
- Useat Perl 5:een perustuvat apuohjelmat ja moduulit vaativat korjauksia.
- Perl 7:n valmistelu resurssien uudelleenjakamisen vuoksi jäädyttää uusien Perl-ominaisuuksien kehittämisen joksikin aikaa.
- Perl-tulkin, moduulien, työkalujen ja mukana tulevien pakettien aktiivisten kehittäjien loppuunpalamisen ja lähtemisen riski on olemassa suuren lisätyömäärän vuoksi ilman asianmukaista motivaatiota (kaikki eivät ole samaa mieltä Perl 7:n luomisen tarpeesta).
- Yhteisön kulttuuri ja asenne Perlin vakauteen muuttuvat perusteellisesti.
- Kielen arvovaltaa heikentää kritiikki, jonka mukaan Perl 7 ei ole yhteensopiva olemassa olevan koodin kanssa ilman jotain täysin uutta.
Tasoittaakseen kielteisiä seurauksia Dan Book ehdotti suunnitelmaansa, joka välttää yhteensopivuusvajeen. Ehdotetaan, että säilytetään sama kehitysprosessi ja 5.34.0:n sijaan annetaan seuraava julkaisunumero 7.0.0, jossa poistamme epäsuoran objektikutsun merkinnän tuen ja otamme käyttöön joitain uusia ominaisuuksia, kuten try/catch. Muutoksia, kuten "käytä sääntöä" ja "käyttövaroituksia", ehdotetaan säädeltäväksi määrittelemällä koodissa nimenomaisesti Perl-versio "use v7" -käytännön kautta (tiukka on jo oletusarvoisesti käytössä "use v5.12" ja uudemmissa julkaisuissa ).
Oletuksena on suositeltavaa, että tulkki säilyttää joukon parametreja, jotka eivät eroa Perl 5:stä, lukuun ottamatta aiemmin käytettyä vanhentuneen syntaksin puhdistusprosessia. Vanhojen ominaisuuksien ja vanhentuneen syntaksin tuki voidaan edelleen lopettaa olemassa olevien vanhentumissääntöjen mukaisesti. Uusien Perl 7 -elementtien käytöstä koodissa ehdotetaan signaloivan ja uudet ja vanhat tyylit erotetaan toisistaan "use v7" -käytännöllä.
Lähde: opennet.ru