İngilizceFransızcaİspanyolca

OnWorks favicon'u

perl581delta - Bulutta Çevrimiçi

OnWorks ücretsiz barındırma sağlayıcısında perl581delta'yı Ubuntu Online, Fedora Online, Windows çevrimiçi öykünücüsü veya MAC OS çevrimiçi öykünücüsü üzerinden çalıştırın

Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen perl581delta komutudur.

Program:

ADI


perl581delta - perl v5.8.1 için yenilikler

TANIM


Bu belge, 5.8.0 sürümü ile 5.8.1 sürümü arasındaki farkları açıklar.

5.6.1 gibi daha eski bir sürümden yükseltme yapıyorsanız, önce perl58delta'yı okuyun,
5.6.0 ve 5.8.0 arasındaki farkları açıklar.

Eğer 5.6.1'i merak ediyorsanız, hata düzeltme açısından oldukça aynıydı.
geliştirme sürümü 5.7.1. Kafası karışmış? Bu zaman çizelgesinin biraz yardımcı olacağını umuyorum:
yeni büyük sürümler, bunların bakım sürümleri ve geliştirme sürümleri.

Yeni Bakım Geliştirme

5.6.0 2000-Mart-22
5.7.0 2000-Eylül-02
5.6.1 2001-Nis-08
5.7.1 2001-Nis-09
5.7.2 2001-Tem-13
5.7.3 2002-Mart-05
5.8.0 2002-Tem-18
5.8.1 2003-Eylül-25

Uyumsuz değişiklikler


Esrar randomizasyon
Esas olarak güvenlik nedenleriyle karmaların "rastgele sıralaması" daha da artırıldı
rastgele. Daha önce hash öğelerinin sırası anahtarlar(), değerler (), ve her biri() oldu
aslında rastgele olmasına rağmen yine de tekrarlanabiliyordu. Ancak şimdi sıra şu şekilde değişir:
Perl'ün farklı sürümleri.

Perl vardır asla garanti herhangi sipariş of the esrar anahtarlar, ve sipariş zaten
Perl 5'in ömrü boyunca birkaç kez değişti. Ayrıca hash anahtarlarının sıralaması da değişti
kampanya siparişinden her zaman etkilenmiştir ve etkilenmeye devam etmektedir.

Eklenen rastgelelik uygulamaları etkileyebilir.

Olası bir senaryo, bir uygulamanın çıktısının karma verileri içermesidir. İçin
örneğin, verileri farklı dosyalara aktarmak için Data::Dumper modülünü kullandıysanız ve
daha sonra verilerin değişip değişmediğini görmek için dosyaları karşılaştırdık, şimdi yanlış olacak
Karmaların atılma sırası değişeceği için olumludur. Genel olarak tedavi
anahtarları (veya değerleri) sıralayın; özellikle Data::Dumper'ın "Sıralama Tuşlarını" kullanması için
seçenek. Belirli bir sıralama gerçekten önemliyse, bağlı karmaları kullanın: örneğin
Varsayılan olarak karma öğelerinin sırasını koruyan Tie::IxHash modülü
eklendi.

Daha incelikli sorun, "küresel yıkım" düzenine güvenmektir. işte bu
yürütmenin sonunda gerçekleşir: Perl, kullanıcı verileri dahil tüm veri yapılarını yok eder.
Yıkıcılarınız (YOK ET altprogramları) herhangi bir özel sıralamayı üstlendiyse
küresel yıkım, ileride sorunlar olabilir. Örneğin, bir yıkıcıda
nesnesini kullanmadığınız sürece, başka herhangi bir sınıftan nesnelerin hala kullanılabilir olduğunu varsayamazsınız.
onlara bir referans tutun. PERL_DESTRUCT_LEVEL ortam değişkeni bir olarak ayarlanmışsa
sıfır olmayan bir değer veya Perl oluşturulmuş bir iş parçacığından çıkıyorsa, bu aynı zamanda sıradan olanı da yok edecektir.
artık kullanılmayan referanslar ve sembol tabloları. Bir sınıf yöntemini çağıramazsınız
veya bu şekilde toplanmış bir sınıftaki sıradan bir işlev.

Karma rastgeleleştirmenin bazı belirli konularla ilgili gizli varsayımları ortaya çıkaracağı kesindir.
karma öğelerinin sıralanması ve doğrudan hatalar: Perl çekirdeğinde birkaç hata ortaya çıkardı ve
çekirdek modüller.

Çalışma zamanında karma rastgeleleştirmeyi devre dışı bırakmak için PERL_HASH_SEED ortam değişkenini ayarlayın
Perl'ü çalıştırmadan önce 0'a (sıfır) (daha fazla bilgi için Perlrun'daki "PERL_HASH_SEED" konusuna bakın) veya
özelliği derleme zamanında tamamen devre dışı bırakmak için "-DNO_HASH_SEED" ile derleyin (bkz.
INSTALL).

Bunun arkasındaki orijinal mantık için perlsec'teki "Algoritmik Karmaşıklık Saldırıları" konusuna bakın
değiştirin.

UTF-8 On eğe tutamaçları Yok hayır Uzun Aktive By Yerel
Perl 5.8.0'da standart dosya tanıtıcıları da dahil olmak üzere tüm dosya tanıtıcıları örtülü olarak şu şekilde ayarlandı:
Yerel ayarlar UTF-8 kullanımını gösteriyorsa Unicode UTF-8 olmalıdır. Bu özellik
çok fazla soruna neden olduğundan özellik kapatıldı ve yeniden tasarlandı: bkz. "Çekirdek
Geliştirmeler".

Tek numara v-dizeleri vardır yok hayır uzun v-dizeleri önce "=>"
Sürüm dizeleri veya v-dizeleri (perldata'daki "Sürüm Dizgileri" bölümüne bakın) özelliği
Perl 5.6.0 bazı karışıklıkların kaynağı olmuştur, özellikle de kullanıcı bunu yapmak istemediğinde
onu kullan, ama Perl onun daha iyisini bildiğini düşünüyordu. Özellikle zahmetli olan şey şuydu:
"=>" işaretinden önce bir sürüm dizesi (bir "v" ve ardından rakamlar) şu şekilde yorumlanmıştır:
bir dize değişmezi yerine v-string. Başka bir deyişle:

%h = ( v65 => 42 );

Perl 5.6.0'dan beri bu anlama geliyor

%h = ( 'A' => 42);

(en azından ASCII neslinin platformlarında) Perl 5.8.1 daha doğal olanı geri yükler
yorumlama

%h = ( 'v65' => 42 );

V65.66 ve 65.66.67 gibi çok sayıdaki v-dizeleri Perl'de hâlâ v-dizeleri olmaya devam ediyor
5.8

(Kazan32) The -C anahtar Has Olmuştur başka bir amaca uygun
-C anahtarı uyumsuz bir şekilde değişti. Bu anahtarın yalnızca eski semantiği
Win32'de ve 8.x sürümlerinde yalnızca "utf5.6 kullan" evreninde anlamlıydı ve anlamlı değildi
5.8.0'daki Unicode uygulaması için anlamlıdır. Bu anahtar kullanılamadığı için
herhangi biri tarafından yeniden tasarlandı. Bu anahtarın 5.6.x'te etkinleştirdiği davranış
sürümler gelecekteki bir sürümde şeffaf, verilere bağlı bir şekilde desteklenebilir.

Bu anahtarın yeni ömrü için bkz. "UTF-8 artık UTF-8 yerel ayarlarında varsayılan değil" ve
Perlrun'da "-C".

(Kazan32) The /d anahtar Of cmd.exe
Perl 5.8.1, cmd.exe kabuğunu dahili olarak çalıştırırken /d anahtarını kullanır. sistem(),
geri tıklamalar ve boruları harici programlara açarken. Ekstra anahtar devre dışı bırakır
AutoRun komutlarının kayıt defterinden yürütülmesi, ki bu genellikle istenmeyen bir durum olarak kabul edilir
harici programları çalıştırırken. Daha eski sürümlerle uyumluluğu korumak istiyorsanız
davranışı için ortamınızdaki PERL5SHELL'i "cmd /x/c" olarak ayarlayın.

çekirdek Donanımlar


UTF-8 yok hayır uzun varsayılan altında UTF-8 yerel
Perl 5.8.0'da birçok Unicode özelliği tanıtıldı. Birinin daha fazla olduğu belirlendi
faydadan çok sıkıntı: dosya tanıtıcılarının otomatik sihirli (ve sessiz) "UTF-8-ifikasyonu",
Kullanıcının yerel ayarlarında UTF-8 kullanımı belirtiliyorsa, standart dosya tanıtıcıları dahil.

Örneğin, yerel ayarınız "en_US.UTF-8" ise, STDIN'iniz ve STDOUT'unuz
otomatik olarak "UTF-8", başka bir deyişle örtülü bir binmode(..., ":utf8") yapıldı. Bu
demek ki yazdırmaya çalışmak demekti, chr(0xff), 0xc3 0xbf baytlarını yazdırdı. Zorlu
Perl 5.8.0'ın bu özelliğinin farkında olmadığınız sürece aklınızda olan şey. Problem şu
insanların büyük çoğunluğu öyle değildi: örneğin RedHat'ın 8. ve 9. sürümleri
varsayılan yerel ayar UTF-8'dir, dolayısıyla tüm RedHat kullanıcıları UTF-8 dosya tanıtıcılarına sahiptir.
isteyip istemediğini. Sorun, Perl 5.8.0'ın Unicode uygulamasıyla daha da arttı
(hala) özellikle s/// ve tr// kullanımıyla ilgili kötü hatalar mevcut/. (Bu hatalar
5.8.1'de düzeltilmiştir)

Bu nedenle özelliğin geri izlenmesine ve örtülü sessizden değiştirilmesine karar verildi
varsayılan olarak açık bilinçli seçeneği kullanın. Yeni Perl komut satırı seçeneği "-C" ve onun
karşı ortam değişkeni PERL_UNICODE artık Perl ve
Unicode, G/Ç gibi arayüzlerde ve örneğin komut satırı argümanlarında etkileşime girer. Görmek
Daha fazla bilgi için Perlrun'da "-C" ve Perlrun'da "PERL_UNICODE".

emniyetsiz sinyalleri tekrar mevcut
Perl 5.8.0'da "güvenli sinyaller" adı verilen sinyaller tanıtıldı. Bu şu anlama gelir: Perl hayır
artık sinyalleri hemen yönetir, bunun yerine "işlem kodları arasında", güvenli olduğunda
Bu yüzden. Daha önceki acil işlem, Perl'ün dahili durumunu kolayca bozabilir,
gizemli kazalara neden oluyor.

Ancak daha güvenli olan yeni modelin de sorunları var. Çünkü artık bir işlem kodu, temel bir birim
Perl yürütmesi hiçbir zaman kesintiye uğramaz, bunun yerine tamamlanana kadar çalıştırılmasına izin verilir.
Uzun sürebilecek operasyonlar artık gerçekten çok uzun sürüyor. Örneğin, belirli
ağ işlemlerinin kendi engelleme ve zaman aşımı mekanizmaları vardır ve
onları hemen kesmek iyi olurdu.

Bu nedenle Perl 5.8.1, 5.8.0 öncesini (gerçekten 5.7.3 öncesi) geri yüklemek için bir "arka kapı" sunar
sinyal davranışı. PERL_SIGNALS ortam değişkenini "güvensiz" olarak ayarlamanız yeterlidir;
anında (ve güvensiz) sinyal işleme davranışı geri döner. Perlrun'da "PERL_SIGNALS" konusuna bakın
ve perlipc'de "Ertelenmiş Sinyaller (Güvenli Sinyaller)".

Tamamen ilgisiz haberlerde artık POSIX::SigAction ile güvenli sinyalleri kullanabilirsiniz. Görmek
POSIX'te "POSIX::SigAction".

bağlı Diziler ile Negatif Dizi Endeksler
Eskiden endeksler bağlı olarak "FETCH", "STORE", "EXISTS" ve "DELETE" yöntemlerine aktarılıyordu.
dizi sınıfı her zaman negatif değildi. Eğer gerçek argüman olumsuz olsaydı, Perl
FETCHSIZE'ı dolaylı olarak çağırın ve sonucu dizine aktarmadan önce sonucu dizine ekleyin.
bağlı dizi yöntemi. Bu davranış artık isteğe bağlıdır. Bağlı dizi sınıfı bir içeriyorsa
Gerçek değere ayarlanmış $NEGATIVE_INDIICES adlı paket değişkeni, negatif değerler
"FETCH", "STORE", "EXISTS" ve "DELETE" öğelerine değiştirilmeden aktarılacaktır.

yerel ${$x}
Söz dizimleri

yerel ${$x}
yerel @{$x}
yerel %{$x}

$x'in geçerli bir değişken adı olduğu göz önüne alındığında, şimdi değişkenleri yerelleştirin.

Unicode Karakter veritabanı 4.0.0
Perl 5.8'de bulunan Unicode Karakter Veritabanının kopyası 4.0.0'e güncellendi
3.2.0'dan itibaren. Bu, örneğin Unicode karakter özelliklerinin aşağıdaki gibi olduğu anlamına gelir:
Unicode 4.0.0.

karşı koyma Uyarılar
Yeni bir özelliğin kullanımdan kaldırılması var. Perl 5.8.0 bazı kullanımdan kaldırma uyarılarını eklemeyi unuttu,
bu uyarılar artık eklendi. Son olarak, yaklaşmakta olan bir özelliğin kaldırılacağına dair bir hatırlatma.

(Hatırlatma) sözde karmalar vardır önerilmiyor (Gerçekten mi)

Sözde karmalar Perl 5.8.0'da kullanımdan kaldırıldı ve Perl 5.10.0'da kaldırılacak, bkz.
Ayrıntılar için perl58delta. Sahte karmalara erişmeye yönelik her girişim, uyarıyı tetikleyecektir
"Sözde karmalar kullanımdan kaldırıldı". Gerçekten sahte karmaları kullanmaya devam etmek istiyorsanız, ancak
Kullanımdan kaldırma uyarılarını görmemek için şunu kullanın:

hiçbir uyarı 'kullanımdan kaldırıldı';

Veya alanların pragmasını kullanmaya devam edebilirsiniz, ancak lütfen veri yapılarını beklemeyin.
artık sahte karmalar olmak.

(Hatırlatma) 5.005 tarzı Konuları vardır önerilmiyor (Gerçekten mi)

5.005 tarzı iş parçacıkları ("kullanılan iş parçacığı;" ile etkinleştirilir) Perl 5.8.0'da kullanımdan kaldırılmıştır ve
Perl 5.8'den sonra kaldırıldı, ayrıntılar için perl58delta'ya bakın. Her 5.005 tarzı iş parçacığı oluşturma
"5.005 iş parçacığı kullanımdan kaldırıldı" uyarısını tetikleyecektir. Eğer gerçekten devam etmek istiyorsan
5.005 iş parçacığını kullanarak ancak kullanımdan kaldırma uyarılarını görmemek için şunu kullanın:

hiçbir uyarı 'kullanımdan kaldırıldı';

(Hatırlatma) The $* değişken is önerilmiyor (Gerçekten mi)

Çok satırlı eşleştirmeyi kontrol eden $* değişkeni kullanımdan kaldırıldı ve kaldırılacak
5.8'den sonra. Değişken uzun süredir kullanımdan kaldırıldı ve kullanımdan kaldırılma uyarısı verildi
"$* kullanımı artık kullanımdan kaldırıldı" ifadesi verildi, şimdi değişken nihayet kaldırılacak.
işlevselliğin yerini, kalıp eşleştirmede "/s" ve "/m" değiştiricileri almıştır. Eğer
$* değişkenini gerçekten kullanmaya devam etmek istiyorsunuz ancak kullanımdan kaldırılma uyarılarını görmek istemiyorsunuz,
kullanımı:

hiçbir uyarı 'kullanımdan kaldırıldı';

Diğer Donanımlar
Geçersiz bağlamda "harita" artık pahalı değil. "harita" artık içeriğe duyarlıdır ve
geçersiz bağlamda çağrılırsa bir liste oluşturun.

Bir yuva, yazdırma sırasında sunucu tarafından kapatılırsa istemci artık bir SIGPIPE alır.
Bu yeni özellik planlanmamış olsa da, doğal olarak PerlIO değişikliklerinin bir sonucuydu ve
tesadüfi bir özellik olarak kabul edilebilir.

PerlIO::get_layers(FH), bir dosya tanıtıcısında etkin olan PerlIO katmanlarının adlarını döndürür.

PerlIO::via katmanları artık katmanın uygun olup olmadığını belirtmek için isteğe bağlı bir UTF8 yöntemine sahip olabilir.
akışı "auto-:utf8" yapmak istiyor.

utf8::is_utf8() bir skalerin kodlanıp kodlanmadığını test etmenin hızlı bir yolu olarak eklenmiştir
dahili olarak UTF-8'de (Unicode).

Modüller ve Pragmat


Güncellenmiş Modüller Ve Pragmat
Aşağıdaki modüller ve pragmata, Perl 5.8.0'dan beri güncellenmiştir:

baz
B::bayt kodu
Eskisinden çok daha iyi durumda. Hala mükemmel olmaktan uzak ama belki de değer
Deneyin.

B::Özlü
B::Ayrılmak
kıyaslama
İsteğe bağlı bir özellik olan ":hireswallclock" artık yüksek çözünürlüklü duvar saatine olanak tanıyor
kez (Time::HiRes kullanır).

Bayt Yükleyici
Bkz. B::Bayt kodu.

bayt
Artık bytes::substr var.

CGI
karakter isimleri
Artık özel karakter adı takma adlarına sahip olunabilir.

CPAN
Artık CPAN.pm modülünün basit bir komut satırı ön ucu var: PAN.

Veri :: Damper
Yeni bir seçenek olan Eşleştir, karma anahtarlar ve değerler arasındaki ayırıcının seçilmesine olanak tanır.

DB_Dosyası
Geliştirme::PPPort
Özet::MD5
Kodlamak
Kodlama pragma işlevselliğinde (tr/// ve DATA) önemli güncellemeler
dosya tanıtıcısı, formatlar).

Bir dosya tanıtıcısı kodlamaya sahip olacak şekilde işaretlenmişse eşlenemeyen karakterler
zaten giriş sırasında algılandı, daha sonra değil (bozuk veriler kullanıldığında).

ISO 8859-6 dönüşüm tablosu düzeltildi (0x30..0x39 hatalı şekilde eşlendi)
U+0660..U+0669 yerine U+0030..U+0039'a). GSM 03.38 dönüşümü gerçekleşmedi
kaçış dizilerini doğru şekilde ele alın. UTF-7 kodlaması eklendi (Encode
Unicode::String ile özellik tamamlandı).

alanları
kütüphane
Matematik::BigInt
Perl v1.60'da yer alan v5.8.0 sürümünden bu yana pek çok hata düzeltildi.
Calc'ta div ve modun bazı kullanıcılar için başarısız olmasına neden olan hata özellikle dikkat çekicidir.
büyük değerler ve hatalı girdilerin işlenmesine yönelik düzeltmeler.

Bazı yeni özellikler eklendi, örneğin kök() yöntem, artık parametreleri iletebilirsiniz
yapılandırma() çalışma zamanında bazı ayarları değiştirmek için artık
NaN ve sonsuzluğun yaratılması.

Her zamanki gibi bazı optimizasyonlar yapıldı ve genel matematik biraz daha hızlı hale getirildi. İçinde
bazı durumlarda aslında çok daha hızlı. Özellikle alternatif kütüphaneler
Math::BigInt::GMP bundan faydalanır. Ayrıca oldukça hantal rutinlerin çoğu
sevmek fsqrt() ve kırbaç() artık çok daha hızlılar.

MIME::Base64
SONRAKİ
Elmas mirası artık çalışıyor.

Ağ::Ping
PerlIO::skaler
Dize olmayan skalerlerden okuma (özel değişkenler gibi, bkz. perlvar) artık çalışıyor.

podlatörler
Bölme::LaTeX
PodParser'lar
Bölme::Perldoc
Yeniden yazmayı tamamlayın. Bir yan etki olarak, root tarafından çalıştırıldığında artık başlatmayı reddetmiyor.

Skaler::Util
Yeni yardımcı programlar: refaddr, isvstring,look_like_number, set_prototype.

depolanabilir
Artık kod referanslarını saklayabilir (B::Deparse aracılığıyla, dolayısıyla kusursuz değildir).

sıkı
Katı pragmanın önceki sürümleri örtülü olarak iletilen parametreleri kontrol etmiyordu
"içe aktarma" (kullanma) ve "içe aktarmayı kaldırma" (hayır) rutinine. Bu, yanlış deyimin böyle olmasına neden oldu
olarak:

katı qw(@ISA) kullanın;
@ISA = qw(Foo);

Ancak bu (muhtemelen) katı refs, vars ve
abonelikler uygulanıyordu (ve @ISA bir şekilde "ilan edilmişti"). Ama katı hakemler,
değişkenler ve altlar değil Bu yanlış deyim kullanıldığında uygulanır.

Perl 5.8.1'den başlayarak yukarıdakiler irade bir hatanın ortaya çıkmasına neden olur. Bu neden olabilir
uyarılar olmadan ve hatalar olmadan görünüşte doğru şekilde çalıştırılan programlar başarısız oldu
5.8.1 altında çalıştırıldığında. Bu olur çünkü

katı qw(@ISA) kullanın;

şimdi hatayla başarısız olacak:

Bilinmeyen 'katı' etiket(ler) '@ISA'

Bu sorunun çözümü, bu kodu doğru deyimle değiştirmektir:

sıkı kullanın;
vars qw(@ISA) kullanın;
@ISA = qw(Foo);

Dönem::ANSIcolor
Test:: Koşum
Artık test komut dosyalarındaki ekstra veya eksik çıktılar konusunda çok daha seçici davranıyoruz.

Test::Daha Fazla
Test::Basit
Metin::Dengeli
Zaman::HiRes
Kullanımı nano uyku(), eğer mevcutsa, saniyenin altındaki uykuları alarmlarla karıştırmaya izin verir.

Konuları
Örneğin birkaç düzeltme katılmak() sorunlar ve bellek sızıntıları. Bazı platformlarda
(Linux gibi) glibc kullananlarda bir ithread'in minimum bellek alanı şu şekildedir:
birkaç yüz kilobayt azaltıldı.

Konular::paylaşılan
Birçok bellek sızıntısı giderildi.

Unicode::Harmanla
Unicode::Normalleştir
Win32::GetFolderPath
Win32::GetOSVersion
Artık ekstra bilgi döndürüyor.

Yarar değişiklikler


"h2xs" yardımcı programı artık daha modern bir düzen üretiyor: Foo-Bar/lib/Foo/Bar.pm yerine
Foo/Bar/Bar.pm. Ayrıca artık ortak test testi de deniyor t/Foo-Bar.t yerine t/1.t.

Perl hata ayıklayıcısı (lib/perl5db.pl) artık kapsamlı bir şekilde belgelendi ve hatalar bulundu
belgeleme düzeltilirken.

"perldoc" daha sağlam ve zengin özelliklere sahip olacak şekilde sıfırdan yeniden yazıldı.

"Perlcc -B" artık en azından biraz daha iyi çalışıyor, "perlcc -c" ise daha bozuk.
(Perl derleyici paketi bir bütün olarak deneysel olmaya devam ediyor.)

yeni Dökümanlar


Perl573delta arasındaki farkları listelemek için eklendi (artık oldukça eski)
geliştirme sürümleri 5.7.2 ve 5.7.3.

perl58delta eklendi: 5.8.0'ın perldelta'sıdır ve farklılıkları detaylandırır
5.6.0 ve 5.8.0 arasında.

perlartistic eklendi: kapsül formatındaki Sanatsal Lisanstır, bu da işi kolaylaştırır
modüllerin ona başvurması için.

perlcheat eklendi: bu bir Perl hile sayfasıdır.

perlgpl eklenmiştir: pod formatındaki GNU Genel Kamu Lisansıdır,
modüllerin buna başvurması daha kolaydır.

Perl'in Mac OS X'te kurulumu ve kullanımı hakkında bilgi vermek için perlmacosx eklendi.

Perl'in OS/400 PASE'e kurulumu ve kullanımı hakkında bilgi vermek için perlos400 eklendi.

perlreref eklendi: bu bir düzenli ifadeler hızlı referansıdır.

Montaj ve yapılandırma İyileştirmeler


Unix standart Perl konumu, /usr/bin/Perl, artık varsayılan olarak üzerine yazılmaz;
var. Bu değişiklik çok ihtiyatlıydı çünkü pek çok Unix satıcısı zaten bir
/usr/bin/Perl, ancak aynı zamanda birçok sistem yardımcı programı tam olarak bu sürüme bağlı olabilir
Perl'in üzerine yazmamak daha iyi.

Artık site ve satıcı kılavuzu ve HTML sayfaları için kurulum dizinleri belirlenebilir ve
site ve satıcı komut dosyaları. Görmek INSTALL.

Artık Perl kurulumu için bir hedef dizin belirtilebilir.
"Make install" için DESTDIR değişkeni. (Bu özellik,
önceki "Yapılandır -Dinstallprefix=...".) Bkz. INSTALL.

gcc sürüm 3.x, Perl sırasında çok fazla gürültüye neden olan yeni bir uyarı sundu
derleme: "gcc -Ialreadyknowndirectory (uyarı: arama sırası değiştiriliyor)". Bu uyarı
Artık yapılandırmanın derlemeden önce bu tür dizinleri ayıklaması sayesinde önlenmiştir.

Artık Yapılandırma bayrakları kullanılarak Perl çekirdek modüllerinin alt kümeleri oluşturulabilir
"-Dnoextensions=..." ve "-Donlyextensions=...", bkz. INSTALL.

Platforma özel geliştirmeleri
Cygwin'de Perl artık iş parçacıklarıyla ("Configure -Duseithreads") oluşturulabilir. Bu ile çalışır
hem Cygwin 1.3.22 hem de Cygwin 1.5.3.

Daha yeni FreeBSD sürümlerinde Perl 5.8.0 derlemesi, kullanmaya çalışmaktan dolayı başarısız oldu Malloc.h,
FreeBSD'de bu sadece sahte bir dosyadır ve kullanmaya çalışmak bile ölümcül bir hatadır. Şimdi Malloc.h
Kullanılmıyor.

Perl'ün artık Hitachi HI-UXMPP'de de oluşturduğu biliniyor.

Perl'ün artık LynxOS'ta yeniden oluşturduğu biliniyor.

Mac OS X artık kurulum dizini adlarına gömülü Perl sürüm numarasıyla yükleniyor
Kullanıcı tarafından derlenen Perl'in ve genel olarak kurulum dizinlerinin daha kolay yükseltilmesi için
daha standarttır. Başka bir deyişle, varsayılan kurulum artık Apple'ı bozmuyor.
Perl'ü sağladı. Öte yandan, "Configure -Dprefix=" ile/ usr"şimdi gerçekten yapabilirsin
Apple tarafından sağlanan Perl'i değiştirin (Lütfen be dikkatli).

Mac OS X artık Perl'ü varsayılan olarak statik olarak oluşturuyor. Bu değişiklik esas olarak daha hızlı olması için yapıldı.
başlatma süreleri. Apple tarafından sağlanan Perl hâlâ dinamik olarak bağlantılı ve paylaşılıyor;
"Configure -Duseshrplib" ile kendi Perl yapılarınız için paylaşımlılığı etkinleştirebilirsiniz.

Perl, IBM'in OS/400 PASE ortamına taşındı. Perl oluşturmanın en iyi yolu
PASE, bir AIX ana bilgisayarını çapraz derleme ortamı olarak kullanmaktır. Bkz. README.os400.

Başka bir çapraz derleme seçeneği daha eklendi: Perl artık OpenZaurus'u temel alıyor.
Sharp Zaurus PDA için Mandrake + Embedix tabanlı Linux dağıtımı. Bkz.
Çapraz/BENİOKU dosyası.

Tru64, gcc 3 kullanıldığında optimizasyonu düşürür toke.c devasa olduğundan "-O2"ye
varsayılan "-O3" ile bellek kullanımı.

Tru64 artık Perl'ü daha yeni Berkeley DB'leriyle oluşturabilir.

WinCE üzerinde Perl oluşturmak çok daha geliştirildi, bkz. README.ce ve README.perlce.

Seçilmiş Böcek Düzeltmeler


Kapanışlar, değerlendirme ve sözlükler
Anonim altyazılar, sözlükler ve kapanışlar alanında birçok düzeltme yapıldı. Rağmen
bu Perl'ün artık daha "doğru" olduğu anlamına gelir; mevcut bazı kodların
hatalı davranışa dayanan bir kırılma. Uygulamada bu pek mümkün olmadıkça
kodunuz çok karmaşık bir anonim alt başlıklar, değerlendirmeler ve sözlükler yuvalaması içeriyor.

genel düzeltmeleri
Bir girdi kütük belirtecinin ":utf8" olarak işaretlenmiş olması ve Perl'in bunu yaparken yasa dışı UTF-8'in geldiğini görmesi durumunda
" ", eğer uyarılar etkinleştirilirse sessiz kalmak yerine hemen bir uyarı verilir
bu konuda ve Perl daha sonra bozuk verilerden dolayı mutsuz oldu. (":encoding(utf8)" katmanı
da aynı şekilde çalışır.)

binmode(SOCKET, ":utf8") yalnızca giriş tarafında çalıştı, çıkış tarafında değil
priz. Artık her iki yönde de çalışıyor.

İş parçacıklı Perl'ler için belirli sistem veritabanı işlevleri getpwent() ve getgrent() şimdi
başarısızlık yerine sonuç arabelleğini dinamik olarak büyütün. Bu, şu anlama gelir:
Pek çok kullanıcı ve grupta işlevler artık yalnızca kısmi sonuçlar döndürerek başarısız olmuyor.

Perl 5.8.0, yanlışlıkla kullanıcıların kendi kimliklerini tanımlama yeteneğini bozmuştu.
büyük harf<->küçük harf Unicode eşlemeleri (Camel tarafından tanıtıldığı gibi). Bu özellik var
düzeltildi ve ayrıca daha iyi belgelendi.

5.8.0'da bu

$bazı_unicode .= ;

düzgün çalışmadı ancak bunun yerine verileri bozdu. Bu artık düzeltildi.

FETCH vb. gibi bağlı yöntemler artık bağlı değerlere güvenli bir şekilde erişebilir, yani
FETCH'e özyinelemeli çağrı vb. Yine de özyinelemeyi kırmayı unutmayın.

Başlangıçta Perl, SIGFPE sinyalini engeller çünkü Perl'ün bu konuda yapabileceği fazla bir şey yoktur.
Daha önce bu engelleme Perl içinden yürütülen programlar için de geçerliydi. Şimdi
Perl, çalıştırmadan önce, her ne ise, orijinal SIGFPE işleme rutinini geri yükler.
harici programlar.

Perl komut dosyalarındaki satır numaraları artık 65536'dan veya 2**16'dan büyük olabilir. (Perl betikleri
her zaman bundan daha büyük olabilmiştir, yalnızca bildirilen hataların satır numarası
ve uyarılar "sarılmış".) Bu kadar büyük komut dosyaları genellikle bir ihtiyaç olduğunu gösterirken
Kodunuzu biraz yeniden düşünün, bu tür Perl komut dosyaları mevcut, örneğin oluşturulan kodların sonuçları gibi.
kod. Artık satır numaraları 4294967296'ya veya 2**32'ye kadar gidebilir.

Platforma özel düzeltmeleri
Linux

· $0'ı ayarlamak tekrar işe yarar (Perl'in fazla bir şey yapamayacağı bazı sınırlamalarla birlikte: bkz.
Perlvar'da "$0")

HP-UX

· $0 ayarı artık çalışıyor.

VMS

· Yapılandırma artık "anket()" varlığını test ediyor ve IO::Poll artık
tespit edilirse satıcı tarafından sağlanan işlev.

· Perl görüntüsü yüklenirse Perl başlangıcında nadir erişim ihlali meydana gelebilir
ayrıcalıklara sahipse veya alt sistem özniteliği ayarlı bir tanımlayıcı varsa
sürecin hakları listesi. Bu koşullardan herhangi biri, lekelenme kodunu tetikledi
bir işaretçi hatası içeriyordu. Hatalı işaretçi aritmetiği düzeltildi.

· %ENV karmasındaki değerlere (anahtarlara değil) ilişkin uzunluk sınırı 255 bayttan yükseltildi
32640 bayta kadar (PERL_ENV_TABLES ayarının varsayılan kullanımını geçersiz kıldığı durumlar hariç)
%ENV için mantıksal adlar). Bu uzun değerlere dışarıdan erişmek gerekiyorsa
Perl, bunların saklanan arama listesi mantıksal adları kullanılarak uygulandığına dikkat edin.
Parça cinsinden değer; her 255 baytlık parça (128'e kadar) bir öğedir.
Arama Listesi. Perl içinden %ENV'de arama yaparken öğeler birleştirilir
tek bir değere dönüştürür. Bireysel öğelere erişmeye yönelik mevcut VMS'ye özgü yetenek
$ENV{'foo;N'} sözdizimi aracılığıyla bir arama listesi mantıksal adının değiştirilmesi (burada N, arama listesidir)
indeks) bozulmamıştır.

· Borulama uygulaması artık ara bağlantı için global DCL sembolleri yerine yerel DCL sembollerini kullanıyor.
süreç iletişimi.

· Dosya::Find, adı aynı olan ilgili bir dizine giderken kafa karışıklığına neden olabilir.
mantıksal bir adla çarpıştı. Bu sorun dizin eklenerek düzeltildi
göreli yol adlarının sözdizimini değiştirerek mantıksal ad çevirisini önler.

Win32

· Bellek sızıntısı çatal() emülasyon düzeltildi.

· Dönüş değeri ioctl() 5.8.0'da yerleşik işlev yanlışlıkla bozuldu.
Bu düzeltildi.

· Bazen engelleme işlemleri sırasında Perl tarafından yürütülen dahili mesaj döngüsü
Perl'ün dışındaki mesajlara müdahale etti. Bu genellikle engellemeyle sonuçlandı
Perl'ün zamanından önce sona eren veya hatalı sonuçlar döndüren işlemler
Windows mesajları oluşturabilecek ortamlarda çalıştırılıyor. Bu oldu
düzeltildi.

· Borular ve soketler artık otomatik olarak ikili moddadır.

· Dört argümanlı form Seçme() $'ı korumadı! (hata yok) düzgün bir şekilde oradayken
temel çağrıdaki hatalardı. Bu artık düzeltildi.

· "CR CR LF" sorunu düzeltildi, binmode(FH, ":crlf") artık etkili bir şekilde
işlem yok.

yeni or değişmiş Teşhis


ile ilgili tüm uyarılar ambalaj() ve paketini aç() daha bilgilendirici ve tutarlı hale getirildi.

değişmiş "A iplik çıkıldı süre %d Konuları vardı koşma"
Eski versiyon

%d iş parçacığı hâlâ çalışırken bir iş parçacığından çıkıldı

yanıltıcıydı çünkü "diğer" aynı zamanda uyarıyı veren başlığı da içeriyordu.

çıkarıldı "Girişim için açık a kısıtlı doğramak"
Kısıtlanmış bir karmanın temizlenmesi yasa dışı olmadığından uyarı kaldırıldı.

yeni "Yasadışı beyanname of anonim altprogram"
"Sub" için kod bloğunu belirtmelisiniz.

değişmiş "Geçersiz menzil "%s" in başka alfabeyle yazma Şebeke"
Eski versiyon

Harf çevirisi operatöründe geçersiz [] aralığı "%s"

tamamen yanlıştı çünkü tr//'de "[] aralıkları" yok/.

yeni "Eksik kontrol tank isim in \C"
Kendinden açıklamalı.

yeni "Yeni hat in sola dayalı dizi için %s"
Dolgu boşlukları yeni satırdan sonra görünecektir; bu muhtemelen sizin kullandığınız şey değildi.
akıl.

yeni "Olası öncelik sorun on bitdüzeyi %c Şebeke"
Eğer bunu düşünüyorsan

$x ve $y == 0

$x ve $y'nin bitsel AND'inin sıfır olup olmadığını test ederse bu uyarı hoşunuza gidecektir.

yeni "Sözde karmalar vardır kullanımdan kaldırıldı"
Bu uyarının zaten 5.8.0'da olması gerekirdi, çünkü öyle.

yeni "oku () on %s eğe sapı %s"
Yapamazsın oku () (Ya da sistem oku()) kapalı veya açılmamış bir dosya tanıtıcısından.

yeni "5.005 Konuları vardır kullanımdan kaldırıldı"
Bu uyarının zaten 5.8.0'da olması gerekirdi, çünkü öyle.

yeni "Bağlandı değişken serbest bırakılmış süre yine de in kullanmak"
Bir şey canlı berabere kalan değişkenin fişini çekti, Perl kurtararak güvende oynuyor.

yeni "%s'ye: yasadışı haritalama '%S'"
Yasa dışı, kullanıcı tanımlı bir Unicode vaka eşlemesi belirtildi.

yeni "Kullanmak of serbest bırakılmış değer in yineleme"
Bir şey yinelenen değerleri değiştirdi. Bu iyi değil.

değişmiş iç organlar


Bu haberler yalnızca XS kodu yazıyorsanız veya hakkında bilgi edinmek veya hacklemek istiyorsanız sizin için önemlidir
Perl dahili bileşenleri (Devel::Peek veya "B::" modül sayımlarından herhangi birini kullanarak) veya Perl'ü çalıştırmayı seviyorum
"-D" seçeneğiyle.

Perlembed'in yerleştirme örnekleri güncel ve tutarlı olacak şekilde gözden geçirildi:
örneğin doğru kullanımı PERL_SYS_INIT3() ve PERL_SYS_TERM().

Pad kodunun (sözcüksel değişkenlerden sorumlu kod) kapsamlı bir şekilde yeniden işlenmesi
Dave Mitchell tarafından yönetildi.

John Peacock'un v-telleri üzerine kapsamlı çalışması.

UTF-8 uzunluk ve konum önbelleği: Unicode (UTF-8) skalerlerin işlenmesini hızlandırmak için
önbellek tanıtıldı. Bir uzantının resmi API'leri atlaması durumunda olası sorunlar ortaya çıkar
ve bir SV'nin PV'sini doğrudan değiştirir: UTF-8 önbelleği olması gerektiği gibi temizlenmez.

Perl 5.8.0'da geçerliliğini yitiren sv_2pv, sv_catpvn, sv_catsv, sv_setsv gibi API'ler yeniden
kullanılabilir.

Cxinc ve regatom gibi belirli Perl çekirdek C API'leri artık kodlanamıyor
Perl çekirdek uzantılarının Perl çekirdeğinin dışında. Bu kasıtlıdır. Onlar asla
Daha kısa adlarla mevcut olmalı ve başvurunuz bunlara bağlıysa,
Uygun API'lerin neler olduğunu tartışmak için (utanmalı ve) Perl5-porters ile iletişime geçmelisiniz.

"Perl_list" gibi bazı Perl çekirdek C API'leri artık "Perl_" olmadan kullanılamıyor
önek. XS modülünüz bazı işlevler bulunamadığı için çalışmayı durdurursa, birçok durumda
durumlarda basit bir düzeltme, işleve ve iş parçacığı bağlamına "Perl_" önekini eklemektir
İşlev çağrısının ilk argümanı olarak "aTHX_". Bu da her zaman böyle olmalı
Yapılmıştı: Perl_'siz formların çekirdekten sızmasına izin vermek bir kazaydı. İçin
daha temiz yerleştirme, derleme zamanında cpp'yi tanımlayarak bunu tüm API'ler için de zorlayabilirsiniz.
PERL_NO_SHORT_NAMES'i tanımlayın.

Perl_save_bool() Eklendi.

Regexp nesneleri ("qr" ile oluşturulanlar) artık R-magic yerine S-magic'e sahip. Bu sabit
$x'te yapılan değişiklikleri artık göz ardı etmemek için /...(??{...;$x})/ biçimindeki normal ifadeleri kullanın. S-sihri
önbelleğe alma optimizasyonunun düşürülmesini ve (??{...}) yapılarının müstehcen derecede yavaş olmasını önler
(ve dolayısıyla işe yaramaz). Ayrıca perlguts'taki "Sihirli Değişkenler" konusuna da bakın. Regexp::Kopyalama (önceki değeri)
bu değişiklikten etkilenmiştir.

Perl dahili hata ayıklama makroları HATA AYIKLAMA() ve DEB() olarak yeniden adlandırıldı PERL_DEBUG() ve
PERL_DEB() ad alanı çakışmalarını önlemek için.

"-DL" kaldırıldı (sızıntı testi yıllardır bozuktu ve desteklenmiyordu, alternatif kullanın
Malloc'larda veya valgrind ve Purify gibi araçlarda hata ayıklama).

"-DXv" ve "-Dsv" için ayrıntılı değiştirici "v" eklendi, bkz. perlrun.

yeni Testler


Perl 5.8.0'da yaklaşık 69000 test dosyasında yaklaşık 700 ayrı test vardı, Perl 5.8.1'de
Yaklaşık 77000 test dosyasında yaklaşık 780 ayrı test bulunmaktadır. Kesin sayılar şunlara bağlıdır:
Perl konfigürasyonunda ve işletim sistemi platformunda.

Bilinen Sorunları


"Uyumsuz Değişiklikler"de bahsedilen karma rastgeleleştirme kesinlikle sorunludur:
uyuyan böcekleri uyandıracak ve kötü varsayımları ortadan kaldıracak.

Mod_perl 2.x'i Perl 5.8.1 ile kullanmak istiyorsanız mod_perl-1.99_10 veya daha yükseğine ihtiyacınız olacak.
mod_perl 2.x'in önceki sürümleri rastgele karmalarla çalışmaz. (mod_perl 1.x
düzgün çalışıyor.) Ayrıca Apache::Test 1.04 veya daha yükseğine de ihtiyacınız olacak.

Perl 100 ile %5.8.0 veya buna oldukça yakın çalışan daha nadir platformların çoğu
bakımcıları son zamanlarda meşgul olduğundan biraz bakımsız kaldılar,
ve dolayısıyla bu platformlarda daha fazla başarısızlık yaşanacak. Bu tür platformlar arasında Mac
OS Classic, IBM z/OS (ve diğer EBCDIC platformları) ve NetWare. En yaygın Perl
platformlar (Unix ve Unix benzeri, Microsoft platformları ve VMS) yeterince geniş testlere sahiptir ve
iyi durumda olduklarını belirten uzman nüfus.

bağlı karmaları in sayısal bağlam
Bağlı karmalar şu anda skaler bağlamda yararlı hiçbir şey döndürmemektedir; örneğin
boole testleri olarak kullanılır:

if (%tied_hash) { ... }

Mevcut saçma davranış, her zaman false değerini döndürmektir.
karma boş veya öğeler içeriyor.

Temel neden, bağlı karmaların uygulayıcıları için bir arayüz bulunmamasıdır.
Bir karma davranışının skaler bağlamda uygulanması.

Ağ::Ping 450_hizmet ve 510_ping_udp hataları
Lib/Net/Ping/t/9_service.t'nin 18 ve 450. alt testleri ve 2. alt testi
Alışılmadık bir ağ kurulumunuz varsa lib/Net/Ping/t/510_ping_udp.t başarısız olabilir. İçin
örnek ikinci durumda test IP adresine bir UDP ping göndermeye çalışıyor
127.0.0.1

M.Ö
C üreten derleyici arka ucu B::C (ön uç "perlcc -c") daha da fazladır
kapsamlı sözcüksel değişken değişiklikleri nedeniyle eskisinden daha bozuk. (İyi
Yeni bir haber şu ki B::Bytecode ve ByteLoader eskisinden daha iyi.)

Platform Özel Sorunları


EBCDIC Platformlar
IBM z/OS ve diğer EBCDIC platformları Unicode desteği konusunda sorunlu olmaya devam ediyor.
Birçok Unicode testi, gerçekten düzeltilmesi gerekirken atlanır.

cygwin 1.5 sorunlar
Cygwin 1.5'te io/söyle ve işlem/sistem testlerde henüz bilinmeyen bir nedenden dolayı başarısızlıklar var.
1.5.5'te, stres_cv, stress_re ve stress_string iş parçacığı testleri başarısız oluyor;
ortam değişkeni PERLIO "perlio" olarak ayarlanmıştır (bu aynı zamanda io/tell hatasının da ortadan kalkmasına neden olur)
uzakta).

Perl 5.8.1, Cygwin 1.3'ü oluşturuyor ve onunla iyi çalışıyor: (uname -a) "CYGWIN_NT-5.0 ...
1.3.22(0.78/3/2) 2003-03-18 09:20 i686 ..." ile %100 "yapma testi" gerçekleştirildi
"-des -Duseithreads'i yapılandırın".

HP-UX: HP cc uyarılar hakkında dosya Gönder ve gönderme yolu
Belirli HP C derleyici sürümlerinde (örn. B.11.11.02) buna benzer birçok uyarı alacaksınız
(Daha kolay okunabilmesi için satırlar sarılmıştır):

cc: "/usr/include/sys/socket.h", satır 504: uyarı 562:
"Sendfile"ın farklı bir depolama sınıfı belirticisiyle yeniden beyanı:
"sendfile" dahili bağlantıya sahip olacaktır.
cc: "/usr/include/sys/socket.h", satır 505: uyarı 562:
"Sendpath"ın farklı bir depolama sınıfı belirticisiyle yeniden beyanı:
"sendpath" dahili bağlantıya sahip olacaktır.

Uyarılar hem Perl'ün oluşturulması sırasında hem de belirli lib/ExtUtils testleri sırasında ortaya çıkıyor
C derleyicisini çağıran. Ancak uyarı ciddi değildir ve göz ardı edilebilir.

- IRIX: t/uni/tr_7jis.t sahte olarak başarısız
t/uni/tr_7jis.t testinin 'test yap' veya test donanımı altında arızayı bildirdiği bilinmektedir.
belirli IRIX sürümleriyle (en az IRIX 6.5 ve MIPSpro Derleyicileri Sürüm 7.3.1.1m),
ancak manuel olarak çalıştırılırsa test tamamen geçer.

Mac OS X: yok hayır kullanınmymalloc
Perl malloc ("-Dusemymalloc") Mac OS X'te hiç çalışmıyor. Bu öyle değil
yine de ciddi, çünkü yerel malloc gayet iyi çalışıyor.

Tru64: Yok hayır dişli inşa ile GNU cc (gcc)
En son Tru64 sürümlerinde (örn. v5.1B veya üstü), gcc bir derlemek için kullanılamaz.
Perl (-Duseithreads) iş parçacıklı çünkü sistem " "dosya hakkında bilgi yok
gcc.

Win32: sistemopen, sistem okuması, sistem yazma
5.8.0 sürümünden itibaren, sisopen()/sistem oku()/sistemyazısı() eskisi gibi davranmayın
"Metin" modu açısından 5.6.1 ve önceki sürümler. Bu yerleşikler artık her zaman çalışıyor
"ikili" mod (olsa bile) sisopen() O_TEXT bayrağı iletildiyse veya ikili mod() üzerinde kullanıldı
dosya tanıtıcısı). Bu sorunun yalnızca disk dosyaları için bir fark yaratması gerektiğini unutmayın;
Windows bağlantı noktasında prizler ve borular her zaman "ikili" modda olmuştur. Bu davranış olarak
şu anda bir hata olarak kabul ediliyor, gelecekte uyumlu davranış yeniden sunulabilir
serbest bırakmak. O zamana kadar kullanım sisopen(), sistem oku() ve sistemyazısı() için desteklenmiyor
"metin" modu işlemleri.

gelecek Yol


Aşağıdaki şeyler olabilir gelecekte olur. Halka açık ilk yayınlar
bu özellikler geliştiricinin Perl 5.9.x'i piyasaya sürmesi ve Perl ile doruğa ulaşması olacaktır.
5.10.0 sürümü. Şu an için elimizdeki en iyi tahminler bunlar:
yeniden düşün.

· PerlIO Varsayılan olacak. Şu anda (Perl 5.8.x'te) stdio kütüphanesi hala
Perl, stdio'yu harekete geçirmek için bazı hileler kullanabileceğini düşünüyorsa kullanılır Gerçekten mi hızlı. İçin
Gelecek sürümlerde hedefimiz PerlIO'nun daha da hızlı ilerlemesini sağlamaktır.

· Yeni bir özellik adı verildi iddialar mevcut olacak. Bu, kişinin koda sahip olabileceği anlamına gelir
koda serpiştirilmiş iddialar olarak adlandırılanlar: genellikle optimize edilirler, ancak
"-A" seçeneği ile etkinleştirilebilir.

· Yeni bir operatör "//" (tanımlı-veya) mevcut olacaktır. Bu, birinin yapabileceği anlamına gelir
söylemek

$a // $b

yerine

tanımlı $a ? $a : $b

ve

$c //= $d;

yerine

$c = $d tanımlanmadıkça $c;

Operatör "||" ile aynı önceliğe ve ilişkilendirilebilirliğe sahip olacaktır. Bir kaynak kodu
Perl 5.8.1 kaynaklarına karşı yama CPAN'da şu şekilde mevcut olacak:
yazarlar/id/H/HM/HMBRAND/dor-5.8.1.diff.

· "unpack()" varsayılan olarak $_ paketinin açılmasını sağlayacaktır.

· Perl'ü hızlandırma umuduyla çeşitli Yazma Üzerine Kopyalama teknikleri araştırılacaktır.

· CPANPLUS, Inline ve Module::Build çekirdek modüller haline gelecektir.

· Gerçek sözcüksel kapsamlı pragmalar yazma becerisi tanıtılacaktır.

· Bytecompiler ve byteloader üzerinde çalışmalar devam edecek.

· Şu anda mevcut olan v-string'lerin kullanımdan kaldırılması planlanıyor. V-az formu
(1.2.3), "use", "require" ve $VERSION ile birlikte kullanıldığında bir "sürüm nesnesi" haline gelecektir.
$^V aynı zamanda bir "sürüm nesnesi" olacaktır, dolayısıyla printf("%vd",...) yapısı artık
ihtiyaç duyulması. V-ful sürümü (v1.2.3) geçerliliğini yitirecek. Denkliği
dizeler ve v-dizeleri (örn. şu anda 5.8.0'ın "\5\8\0"a eşit olması) kaybolacaktır.
Orada eğer yalnızca sığınmacı statüleri sona erdirilmemişse, kalıcı oturma iznine be yok hayır karşı koyma uyarı için v-dizeleriancak: tespit edilmesi oldukça zordur
V-string'ler güvenli bir şekilde kullanıldığında ve kullanılmadığında.

· 5.005 Konu Kaldırılacak

· $* Değişkeni Kaldırılacak (uzun zaman önce kullanımdan kaldırılmıştı)

· Sahte Haşereler Kaldırılacak

Raporlama Bugs


Bir hata olduğunu düşündüğünüzü bulursanız, son zamanlarda yayınlanan makaleleri kontrol edebilirsiniz.
comp.lang.perl.misc haber grubu ve perl hata veritabanı http://bugs.perl.org/ . Orada
adresinde de bilgi olabilir http://www.perl.com/ , Perl Ana Sayfası.

Bildirilmemiş bir hatanız olduğunu düşünüyorsanız, lütfen çalıştırın. perlbug program dahil
senin yayının. Hatanızı küçük ama yeterli bir test durumuna indirdiğinizden emin olun. senin hatan
"Perl -V" çıktısıyla birlikte rapor, [e-posta korumalı] olduğu
Perl taşıma ekibi tarafından analiz edildi. Perl 5 hatalarına göz atabilir ve arayabilirsiniz.
http://bugs.perl.org/

onworks.net hizmetlerini kullanarak perl581delta'yı çevrimiçi kullanın


Ücretsiz Sunucular ve İş İstasyonları

Windows ve Linux uygulamalarını indirin

  • 1
    birleşik dev/dak
    birleşik dev/dak
    Gitter'de bize katılın!
    https://gitter.im/unitedrpms-people/Lobby
    URPMS deposunu etkinleştirin.
    sistem -
    https://github.com/UnitedRPMs/unitedrpms.github.io/bl...
    unitedrpms'i indirin
  • 2
    C ++ Kitaplıklarını Artırın
    C ++ Kitaplıklarını Artırın
    Boost, ücretsiz taşınabilirlik sağlar
    hakemli C++ kitaplıkları. bu
    taşınabilir kütüphanelere ağırlık verilmektedir.
    C++ Standart Kitaplığı ile iyi çalışır.
    Bakınız http://www.bo...
    Boost C++ Kitaplıklarını İndirin
  • 3
    SanalGL
    SanalGL
    VirtualGL, 3B komutları bir
    Unix/Linux OpenGL uygulaması bir
    sunucu tarafı GPU ve
    3D görüntüleri bir video akışına dönüştürdü
    hangisiyle ...
    VirtualGL'yi indirin
  • 4
    Libusb
    Libusb
    Kullanıcı alanını etkinleştirmek için kitaplık
    iletişim kurmak için uygulama programları
    USB cihazları. Kitle: Geliştiriciler, Son
    Kullanıcılar/Masaüstü. Programlama Dili: C.
    Kategoriler ...
    libusb'u indir
  • 5
    yudum
    yudum
    SWIG bir yazılım geliştirme aracıdır
    C ile yazılmış programları birbirine bağlayan ve
    Çeşitli yüksek seviyeli C++
    Programlama dilleri. SWIG ile birlikte kullanılır
    farklı...
    SWIG'i indirin
  • 6
    WooCommerce Nextjs Tepki Tepkisi
    WooCommerce Nextjs Tepki Tepkisi
    İle oluşturulmuş React WooCommerce teması
    Sonraki JS, Webpack, Babel, Node ve
    GraphQL ve Apollo kullanarak Express
    Müşteri. React'te WooCommerce Mağazası(
    içerir: Ürünler...
    WooCommerce Nextjs React Temasını İndirin
  • Daha fazla »

Linux komutları

Ad