Cython: Sürüm 3.0 için beş yıllık geliştirme artı saf Python modunda
Cython’un ilk büyük sürümü için bekleyiş sona erdi: beş yıllık geliştirmenin ardından Cython 3.0 yayınlandı. Mevcut sürümde programlama dili, Python’un daha yeni sürümlerinden bazı sözdizimsel yenilikler alır ve Pure Mython modunu geliştirir.
Duyuru
Kesin olarak 2. seriye olmasa da Python 2.6’ya veda ediyor. Python Software Foundation, Aralık 2019’da Python 2.x desteğini durdurmuştu.
Sayı sadece üç olmalıdır
Sorumlular, 1.0 sınırını aşmaktan uzun süre kaçınmıştı. Cython ilk olarak 2007’de piyasaya sürüldü ve ekip ancak 2018’de 0.29 sürümünün yayınlanmasıyla 3.0 sürümünün geleceğini duyurdu.
Noktadan önce 3 olmasının iki nedeni vardır. Ekibe göre, bir yandan, birçok 0.x sürümü o sırada zaten verimli kullanımdaydı ve bu nedenle 1.x sürümleri olarak kabul edilmelidir ve diğer yandan, sayı Python 3 ile bağlantıyı açıklığa kavuşturmalıdır. X. Python, Cython 3.0 üzerinde çalışırken 3.8’den 3.11’e çıktı.
Cython ekibi, geliştirme sırasında en önemli hata düzeltmelerini ve bazı özellikleri 0.29.x sürümünde bir backport olarak dahil etti.
Python ve C arasında entegrasyon
Duyuru
Cython, Python ile uyumludur ve C ile etkileşim için optimize edilmiştir. Bir yandan dil, Python için C uzantıları oluşturmak üzere tasarlanmıştır. Öte yandan, çeviri yüksek performanslı kod üretmelidir. Cython, montajcı kodunu derlemez, ancak C’ye taşır. Temel olarak, bunun için Pyrex’e güvenir.
Cython dili, Python kodunu C benzeri bildirimlerle karıştıran özel bir sözdizimi sağlar.C işlevleriyle sorunsuz etkileşim için statik yazım sağlar ve C++ sınıflarıyla etkileşim kurabilir.
Saf Python için eklemeler
Cython kendisini Python’un bir üst kümesi olarak kabul eder: hemen hemen her Python kodu geçerli Cython kodudur. En yeni Python özelliklerini kullanmak için Cython, Saf Python modu sunar. Bununla oluşturulan kaynak kodu, Python yorumlayıcısında da çalıştırılabilir. Daha az ekstra özellik sunar, ancak statik yazma gibi bazı temel eklemeler sunar.
Sürüm 3.0, Saf Python modunu önemli ölçüde genişletir, böylece, değişiklik günlüğüne göre, artık tüm Cython özelliklerini normal Python sözdiziminde kullanmak mümkündür.
Python 3.x’ten yeni özellikler
Ek olarak, Cython 3.0, son yıllardan bazı Python Geliştirme Önerilerini (PEP) uygular. Bunlar, aracılığıyla Python ifadeleri eklemek için Python 3.8’de tanıtılan Atama İfadelerini (PEP 572) içerir. NAME := expr bir değişkene atayın. Python’un aynı sürümünde, yalnızca konumsal parametreler (PEP 570) geldi; burada konum, parametrelere atamayı belirler ve adlandırmaya izin verilmez.
Ayrıca Cython’un bilmediği eski Python özelliklerini de sunar. Sınıf veya işlev adları gibi tanımlayıcılar, Python’un sürüm 3.0’dan (PEP 3131) beri izin verdiği ASCII olmayan karakterleri artık kullanabilir.
Cython 3.0, varsayılan olarak Python 3 sözdizimini kullanır, ancak ayarı sunar language_level=2 Python 2’deki eski kod için.
NumPy ile nasıl etkileşime girdiği de dahil olmak üzere Cython 3.0 hakkında daha fazla bilgi değişiklik günlüğünde bulunabilir. Bir kılavuz, Cython 0.29’dan güncel sürüme geçişte yardımcı olur.
(rm)
Haberin Sonu