Programlama Dili Perl 5.42 yeni liste operatörlerini tanıttı

Paralel nesnelerin Corinna paralel sisteminin kademeli olarak piyasaya sürülmesi de Perl 5.42 yeni sürümünü sürdürüyor. Güvenlik için çok sayıda güvenlik hatasının temizlenmesine ek olarak, programlama dilinin güncellenmesi hem farklı uzantılar hem de yeni işlevler sağlar. Bu şekilde, Getter'e ayarlanan kendinden nesil ve kombine yöntemler artık mülk üzerinden olabilir :writer(...) . field-Varibiller ayarlandı. Perl 5.42 ayrıca, tam bir kapsül sunamamak için karşılaştırılabilir dillere kıyasla uzun vadeli dezavantajı ayarlar.

Deneysel özellik ile class Corinna nesne sistemine geçiş yaklaşık iki yıl önce başladı. Corinna'nın tam işlevselliği, Perl geliştirme ekibini feature class Birlikte. Resmi kurallara göre, son değişiklikten sadece en az iki yıl sonra düşebileceği için birkaç yıl boyunca statüde deneysel kalacaktır. Gibi yenilikler bile roles Ve gerekirse, bir hedef nesne sistemi planlanıyor, işlevsellik bunu yapacak class 2028'de mümkün olan en kısa sürede deneysel olarak sınıflandırılabilir.

Programlarıyla 5.42'nin altında olan geliştiriciler deneysel “sınıfı” kullanın; Başla, Mayıs field-Mülkiyet ile çok değişken :writer(...) Etiketleyin ve bu nedenle, aksi takdirde özel nesnenin özniteliğine halka erişimi sağlayan kendi kendini oluşturulmuş bir yöntemin adını belirleyin. Bu aynı zamanda, Getter'de temelli ve birleşik yöntemleri elde etmenin tek yoludur, çünkü erişim yönteminin adı genellikle ön ektendir set_ ve özniteliğin adı.

Ayrıca, method Bildirilen yöntemlerin artık, değişkenlere gelince – sözcüksel bir yerel erişim alanına da sahip my zoraki. Yöntem sınıf içinde erişilir $objekt->&methode(...)miras hiyerarşisini atlatma. Şimdilik tam bir kapsülü var ve karşılaştırılabilir dillere kıyasla yıllarca sahip olduğu önemli bir dezavantajı düzeltir.

Ayrıca, map VE grep. any Teslimat A trueBir liste değeri için kıvırcık parantezlere dahil edilen durum true Değerlendirildi – A all Hepsi işin adına göre olmalı. Her iki operatör de sonuç kesin olarak hesaplamayı kesintiye uğratır ve yine de bunu yapmak zorundadırlar use experimental 'keyword_any';VEYA use experimental 'keyword_all'; kaydedilebilir.

Aynı şey en eski özellikler için de geçerli switch VE smartmatchdiğer hatlara karşı çıkarılmaz. Tamlık nedeniyle, operatör XOR yüksek bir önceliğe sahip: =^^ Gönderildi ve ile use source::encoding 'utf8'; Geliştirme ekibinin açık bir takma adı vardır. use utf8; kurmak. no feature "apostrophe_as_package_separator"; Yalnızca bilinmeyen kodun eski paketin adının ayırıcısını kullanmamasını sağlamak için kullanılır.

Güvenlik alaka düzeyine sahip en önemli iki çözülmüş hata ilk kez CVE-2024-56406'da açıklanmaktadır. Buna göre, kodlanmış işaretlerin farklı baytlarla yenilenmesi taşma yatağına yol açabilir. İkincisi, CVE 2025-40909'a göre, bir ipliğin çatalı yapıldı. Zayıf noktalar dört veya on dört yıldır açıktı.

Perl 5.42'de tüm hatalar, belgelerdeki değişiklikler, hata mesajları ve diğer iç mekanlara tam bir bakış, Perldoc'ta görüntülenebilir.

Ayrıca bakınız:


(harita)


Yayımlandı

kategorisi

yazarı:

Etiketler:

Yorumlar

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir