Perl 5.38 programlama dili, sınıf işlevselliğini tanıtır

Saberie

Active member
Perl hamalları adına, Ricardo Signes Perl 5.38’i yayınladı. Hala deneysel sınıf özelliğine ek olarak, sürüm, üç yeni özel değişken ve özel bloklar (fazerler) ve düzenli ifadeler alanında bazı iyileştirmeler getiriyor.

Duyuru



İki yıl önce duyurulan nesne sisteminin (proje adı Corinna) tanıtımı, tüm yeniliklerin üzerinde hakimdir. Bununla, sınıflar anahtar kelime ile başlar. class ve yöntemler ile method. field tanımlı nitelikler ve ilgili erişim ve başlatma yöntemleri. Perl 5’te ilk kez bu, gerçek özel özniteliklerin nesneyle merkezi olmayan bir şekilde depolanmasına izin verir. Temel, yeni oluşturulmuş bir dahili veri yapısıdır.

Bütün bunlar ve daha sonra çok daha fazlası eğitimi etkinleştirir use feature 'class';. 5.38 ve en az 5.40 için use experimental 'class'; Perl Yönlendirme Konseyi, RFC sürecine 5.38’e dahil edilebilecek olandan daha fazla işlevsellik kabul ettiği için gerekli olabilir. Perl’de her zaman olduğu gibi, Corinna yalnızca bekleyen sözdizimsel değişiklik olmadığında deneysel durumdan ayrılacaktır.

Uygulanan ve planlanan yeteneklere ilişkin eksiksiz bir genel bakış, kısa bir süre sonra ayrı bir makalede yer alacaktır. Haberler geliştiricisi. İmzalar gibi diğer yenilikler, sınıf işlevinden ve eski nesne yöneliminden bağımsız olarak etkinleştirilebilir. bless var olmaya devam ediyor.

Düzenli Unicode 15 güncellemesine ek olarak, artık ortam değişkeni var $ENV{PERL_RAND_SEED}. Bunları ayarlamak, aramaya eşdeğerdir srand değişkenin içeriği ile. Bu, örneğin dahili rasgele sayı üretecini kullanan kodu test etmek için kullanılabilir.

Değişken ${^LAST_SUCCESSFUL_PATTERN} geçerli kapsamdaki herhangi bir normal ifadenin son eşleşmesini içerir. Örneğin, değiştirildi


if (m/foo/ || m/bar/) {
s/${^LAST_SUCCESSFUL_PATTERN}/PQR/;
}



VEYA foo VEYA bar ile PQRiçinde ne olduğuna bağlı $_ bulundu. Şimdiye kadar prosedür, özel değişkeni atlayarak dolaylı olarak mümkündü, ancak daha az anlaşılırdı.

Duyuru

değişkenin kim %{^HOOK} CODE-Referanslar, modül yükleme gibi olaylarda Perl’in davranışını genişletebilir.

Programlama dilinin 5.36 sürümü ile tanıtılan pragma builtin mevcut sürüme aktarılabilecek rutinleri alır is_tainted VE export_lexically. İkincisi, şu mekanizmayı sağlar: builtin aynı sembolleri dışa aktarmak için kullanılır. Standart İhracatçı modülünün aksine, (nadir) derleme zamanı sorunları ortaya çıkmaz.

Eski paket adı ayırıcı 'anahtar kelime switch ve akıllı eşleştirme operatörü ~~ artık modası geçmiş kabul ediliyorlar. Artık Perl 5.42’de bulunmayacaklar.

Daha fazla ayrıntı, hız kazanımları ve güvenlik iyileştirmeleri perldelta’da bulunabilir.

Ayrıca bakınız:


(rm)



Haberin Sonu
 
Üst