Rust'ın 'Never' Tipi İki Yıllık Çalışmanın Ardından Kararlı Hale Geldi
Rust'ın never (!) tipi, iki yıllık çalışma ve dikkatli geriye uyumluluk testleriyle nihayet kararlı sürüme taşındı.
Rust derleyici katkıcısı 'waffle', hiçbir zaman değer üretmeyen fonksiyonları işaretlemek için kullanılan '!' (never) tipini iki yılı aşan çalışmanın sonunda kararlı sürüme taşıdı. Bu tip, derleyicinin ölü kodu eleyebilmesini ve tip çıkarımını daha tutarlı hale getirmesini sağlayarak, örneğin hatasız dönüşümlerde Result türündeki hata kolunu tamamen optimize edebilmesine imkan veriyor.
İşin en zor kısmı, never tipinin diğer tiplere örtük dönüşümüyle ortaya çıkan belirsiz tip çıkarımı senaryolarıydı. Rust 2024 sürümünde varsayılan geri dönüş (fallback) tipi () yerine ! olarak değiştirilmişti; bu değişiklik teknik olarak kırıcıydı ama eski sürümlere de taşınması gerekiyordu. Aynı zamanda standart kütüphanedeki Infallible tipinin never tipine takma ad olması planlanıyordu, fakat bu da bazı kodların ekstra tip belirtimi gerektirmesine yol açabilecek kırıcı bir değişiklikti.
Ekip, her iki değişikliğin büyük ölçüde birbirini dengelediğini ve mevcut kodun neredeyse tamamının derlenmeye devam edeceğini öngörse de, crates.io üzerindeki tüm genel kütüphaneleri derleyen 'crater' aracıyla geniş çaplı doğrulama yapıldı. Bu titiz süreç, dil tasarımcılarının geriye dönük uyumluluğu nasıl ciddiye aldığını gösteren iyi bir örnek.
Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz