Ana Sayfa

LFortran, fpm'i Derleyerek Beta Sürümüne Bir Adım Daha Yaklaştı

1 dk okuma

LFortran'ın Fortran Paket Yöneticisi (fpm) projesini başarıyla derlemesi, derleyici için önemli bir kilometre taşı oldu. Nisan 2025'te başlayan bu öncelikli çalışma, 7 Şubat 2026'da tamamlandı. fpm, LFortran'ın şimdiye kadar başarıyla derlediği ve çalıştırdığı en karmaşık proje olma özelliğini taşıyor. Hesaplamalı bir proje olmaktan ziyade, diğer programları çalıştırma, ortam değişkenlerini okuma, komut satırı argümanlarını ayrıştırma, dosya ve dizin işlemleri yapma gibi sistem seviyesi işlevleri test eden fpm, modern Fortran özelliklerinin neredeyse tamamını kullanıyor. Sınıflar, kalıtım, tahsis edilebilir bileşenler, yapıcılar, sınıf dizileri, select type, associate, otomatik sol taraf yeniden tahsisi, dizeler ve dize dizileri gibi özelliklerin yoğun kullanımı, LFortran'da onlarca hata ve eksik özelliğin tespit edilmesini sağladı ve bu sorunların tamamı giderildi.

Bu başarı sayesinde LFortran, beta sürümüne oldukça yaklaştı ve ilerleme çubuğu 9/10 seviyesine yükseltildi. Ekip, başlangıçta fpm'i derlemenin beta için yeterli olacağını düşünse de, daha büyük kod tabanları için %90'lık doğru derleme ve çalışma oranına ulaşmak adına daha fazla çalışma gerektiğini fark etti. Şu anda 500-1000 satırlık kodlar için bu hedefe ulaşıldığı tahmin ediliyor, ancak daha büyük kodlar için hala küçük hatalar bulunuyor. Bu hatalar kolayca düzeltilebilir nitelikte olduğu için, ekip daha fazla kodu derleyerek ve tespit edilen tüm hataları gidererek hızla ilerliyor. Ayrıca, sınıfların, sanal fonksiyonların ve kalıtımın işleniş şekli tamamen yeniden düzenlendi.

LFortran ekibi, fpm'in beş temel bağımlılığı olan M_CLI2, toml-f, fortran-regex, fortran-shlex ve Jonquil için de destek ekledi. Bu bağımlılıklar, komut satırı argümanı ayrıştırma, TOML yapılandırma dosyalarını okuma, desen eşleştirme, kabuk benzeri sözdizimi işleme ve JSON veri yönetimi gibi kritik işlevleri sağlıyor. fpm'in derlenmesi ve tüm testlerinin sürekli entegrasyon (CI) ortamında her commit ile çalıştırılması, projenin sağlamlığını kanıtladı.

İçgörü

LFortran'ın fpm'i derlemesi, derleyicinin modern Fortran özelliklerini destekleme yeteneğini önemli ölçüde artırarak beta sürümüne giden yolda kritik bir eşiği aştığını gösteriyor.

Kaynak