· kaynak Hacker News – Front Page (native)
EDG, C/C++ compiler front end'ini ve eşlik eden araç setini open source yaptı
EDG, uzun süredir ticari olan C/C++ front end'ini, C ve C++ üreten back end'ler, bir prelinker ve kapsamlı geliştirici dokümantasyonuyla birlikte GitHub'da yayınladı.
EDG'nin compiler projesi herkese açıldı
EDG C/C++ compiler projesi, GitHub'da edgcpp organizasyonu altında open source olarak yayınlandı ve repository, 1 Ekim 2026'da Hacker News'in ana sayfasına ulaştı. Yayının merkezinde, onlarca yıldır ticari bir ürün olarak var olan ve projenin kendisinin de repository'nin ana odağı olarak tanımladığı EDG C/C++ front end'i yer alıyor.
Öne çıkan özellik uyumluluk
Projenin README'sine göre front end üç satış noktası etrafında şekillendirilmiş. İlki, kasıtlı hata emülasyonuyla birleştirilmiş ayrıştırma uyumluluğu: amaç, Clang, GCC veya MSVC ile derlenen kodun EDG ile de derlenmesi; bu derleyicilerin tuhafluklarına sessizce dayanan kaynak kodu dahil. İkincisi, geliştiricilerin kodu anlamasına, genişletmesine ve değiştirmesine yardımcı olmak için yazılmış derinlemesine dokümantasyon. Üçüncüsü ise geniş yapılandırılabilirlik; bu, front end'in tek bir toolchain'e hizmet etmek yerine çeşitli C ve C++ odaklı ürünlerin temeli olarak uyarlanabilmesini sağlıyor.
Sadece bir parser değil
Repository yalnızca front end'den ibaret değil. Projede ayrıca şunlar yer alıyor:
- C++ programlarını C'ye çevirebilen, C üreten bir back end;
- source-to-source dönüşüm uygulamaları için tasarlanmış, C++ üreten bir back end;
- otomatik template instantiation'ı yöneten bir prelinker;
- stream girdi ve çıktısı gibi "gerçek" kütüphanelerin dahil olmadığının README'de belirtildiği, minimal bir runtime destek kütüphanesi;
- intermediate language'i bir dosyaya yazmak, geri okumak ve insan tarafından okunabilir biçimde görüntülemek için yardımcı programlar;
- bir name demangler; ve
- özel olarak geliştirilmiş bir dizi development aracı.
Birlikte ele alındığında bu parçalar, çalışan bir compiler altyapısı oluşturuyor; ancak standart bir kütüphanenin yokluğu, bunun mevcut bir toolchain'in anahtar teslim bir alternatifi değil, üzerine inşa edilecek bir temel olduğu anlamına geliyor.
Dokümantasyon ve katkıda bulunma
Proje, geliştiricileri web sitesinde edgcpp.org adresinde barındırılan referans dokümantasyona yönlendiriyor. Repository'yi klonlayacaklar için partial clone öneriliyor: bu, her dosyanın yalnızca en yeni sürümünü indirirken tam git geçmişini koruyor ve git, eski sürümleri gerektiğinde örtük olarak fetch ediyor.
Front end'i kaynaktan derlemeyi, değişiklik katkıda bulunmayı ve bir geliştirme ortamını hızlıca kurmayı kapsayan ayrı rehberler mevcut. Ayrıca projenin, ürün geliştirmede çalışan "insanlara ve AI agent'lara" yardımcı olmak için tasarlandığını söylediği ipuçları, püf noktaları ve öğreticiler içeren bir geliştirme eki de var — compiler codebase'lerinin kitlesinin nasıl değiştiğine dair dikkat çekici bir itiraf.
Duyurunun açık bıraktığı sorular
Yayınlanan README, kodu hangi open source lisansının yönettiğini belirtmiyor; projenin yönetişimi veya dış katkıların nasıl inceleneceğiyle ilgili ayrıntı da vermiyor. Front end'den türetilmiş bir ürün yayınlamayı planlayan herkes, taahhütte bulunmadan önce repository'yi ve katkı rehberini doğrudan kontrol etmesi gerekecek.
Neden önemli
C++ için compiler front end'leri yazılması ve bakımının yapılması en zor yazılım parçaları arasında; Clang, GCC ve MSVC'nin davranışını güvenilir biçimde eşleştirenler ise daha da nadir. EDG'nin rakip derleyicilerin hatalarını kasıtlı olarak taklit etmesi, front end'ini uzun zamandır mevcut kodun sorunsuz çalışmasını isteyen kurumlar için pratik bir seçim haline getirdi ve bu özellik artık herkesin incelemesine ve üzerine inşa etmesine açık.
Kodun açılması, aynı zamanda geniş bir araç sınıfı için engeli düşürüyor. İyi belgelenmiş, yapılandırılabilir bir front end; statik analiz araçları, refactoring motorları, source-to-source çeviriciler, alan specific dil denemeleri ve kod modernizasyon araçları için doğal bir zemin — bunlar, uygun bir C++ parser'ı sıfırdan yazacak kaynaklara nadiren sahip olan proje türleri. Pakete dahil C üreten back end ise, yerel bir C++ compiler'ı olmayan platformları hedeflemek için ek bir seçenek sunuyor.
Daha geniş ekosistem için, C ve C++ dillerinin üçüncü büyük open source uygulaması çapraz kontrol, hata avcılığı ve eğitim için yeni fırsatlar yaratıyor; dokümantasyona verilen önem — kısmen AI agent'lara yönelik içerik dahil — EDG'nin codebase'inin özgün müşteri kitlesinin çok ötesinde okunmasını ve değiştirilmesini beklediğine işaret ediyor.
- #compilers
- #c-plus-plus
- #open-source
- #c
- #developer-tools