Archive | Programlama

LLVM 18.1.2 duyuruldu

2000 yılında University of Illinois’de dinamik derleme ve performans optimizasyonları araştırmalarına yönelik olarak başlatılan ve C++ ile geliştirilen LLVM‘nin (Low Level Virtual Machine) 18.1.2 sürümü, Tom Stellard tarafından duyuruldu. 2022’de Facebook/Meta tarafından LLVM’ye aktarılan BOLT’un, daha yüksek performans elde etmek için bağlantı sonrası bir adım olarak ikili dosyaların düzenini optimize etmeye olanak tanıdığı belirtilirken, BOLT’un, Profil kılavuzlu optimizasyonlar (PGO) gibi, öncelikle optimizasyon süreci için geri bildirimde bulunmak üzere mükemmel kayıtlar oluşturmak için profil oluşturma adımını gerektirdiği ifade ediliyor. BOLT ile deneyler yaparken, GNOME Metin düzenleyicisini kullanırken mükemmel bir kayıt oluşturulduğu ve ardından bunu Pango kütüphanesinin düzenini optimize etmek için kullanıldığı belirtiliyor. LLVM’nin BOLT’una en son övgünün GNOME geliştiricisi Christian Hergert’ten geldiği belirtiliyor. Hergert’in LLVM BOLT’u kullanma konusundaki ilk deneyimleri hakkında fazla bilgi edinmek isteyenler onun blogundan yararlanabilirler. LLVM projesindeki kod, “LLVM istisnalarıyla birlikte Apache 2.0 Lisansı” kapsamında lisanslanmış bulunuyor. LLVM Çekirdek kitaplıkları iyi belgelenmiştir ve LLVM’yi bir optimize edici ve kod oluşturucu olarak kullanmak için kendi dilinizi icat etmek (veya mevcut bir derleyiciyi bağlamak) özellikle kolay bir işlem olmaktadır.University of Illinois/NCSA Lisansı ile açık kaynak kodlu olarak geliştirilen projeye özellikle Apple, Google, ARM, Sony ve Intel ciddi katkı sunuyor. Richard Stallman‘ın özgürlük konusunda yazılıma bir itirazı var.  LLVM 18.1.2 hakkında bilgi edinmek için sürüm duyurusunu ve GitHub sayfasını inceleyebilirsiniz.

Continue Reading →

 

 

LLVM 18.1.2 edinmek için aşağıdaki linkten yararlanabilirsiniz.

0

Python 3.10.14, 3.9.19 ve 3.8.19 duyuruldu

Python’ın 3.10.14, 3.9.19 ve 3.8.19 sürümleri duyuruldu. Python programlama dilinin yeni sürümlerini duyurmaktan memnuniyet duyulduğu ifade edilirken, Python’un üç ayrı sürümünün bir başka birleşik sürüm zamanının geldiği ifade ediliyor. Bunların yeni bir şey getirmemesi gereken sıkıcı güvenlik sürümleri olduğu belirtilirken, öncelikle sistemlerin güncellenmesi öneriliyor. Python 3.10.14 ile 3.9.19’un son sürümden bu yana 26 taahhütle geldiği belirtilirken, Python 3.8.19’un son sürümünden bu yana 28 taahhüt içerdiği söyleniyor. Paketlenmiş libexpat’ın, CVE-2023-52425’i adresleyecek şekilde 2.6.0’a güncellendiği ve yeni yeniden ayrıştırma erteleme işlevselliğinin kontrolünün yeni API’lerle kullanıma sunulduğu söyleniyor. Yeni sürümde, socket.if_indextoname()’de belirli bir değere (UINT_MAX) sahip bir kilitlenmenin düzeltildiği ifade ediliyor. Python 3.10.14, 3.9.19 ve 3.8.19 sürümleri hakkında bilgi edinmek için sürüm duyurusunu inceleyebilirsiniz

Continue Reading →

 

Python 3.10.14, 3.9.19 ve 3.8.19 edinmek için aşağıdaki linklerden yararlanabilirsiniz.

0

OpenJDK 22.0.0 duyuruldu

Açık Java geliştirme kiti olarak da bilinen, Java programlama dilinin özgür ve açık kaynak kodlu bir gerçeklemesi olan OpenJDK‘nin 22.0.0 no’lu sürümü duyuruldu. GNU Genel Kamu Lisansı altında kullanıma sunulan yazılım, Java uygulamalarını geliştirmeyi, hata ayıklamayı ve izlemeyi desteklemekiçin geliyor. Yeni özelliklerle GA’ya geldiği ifade edilen yeni sürüm, yabancı işlev ve bellek API’sinin yanı sıra adsız değişkenler ve desenler API’sinin son sürümlerini de sunuyor. Ayrıca Java 22.0.0; G1 çöp toplayıcı için bölge sabitlemeyi, super(…) öncesi ifadeler önizleme aşamasında olduğu belirtilirken, bir sınıf dosyası API önizlemesini, çok dosyalı kaynak kodu programlarını başlatma desteğini, Java Vector API’sindeki en son çalışmayı getirdiği söyleniyor. Ayrıca kısa bir süre önce JDK 22 Topluluğu 22.0.0 için GraalVM’yi yayınlanmış bulunuyor. GraalVM güncellemesinin, x86_64’te yabancı işlev ve bellek API’si için eklenen deneysel desteğe, yerel görüntü iyileştirmelerine, Truffle’de Java’ya yönelik birçok güncellemeye, GraalVM’nin Python desteği için yeni özelliklere, Ruby 3.2 özelliklerinin çoğunun uygulanmasına ve çeşitli diğer geliştirmelere sahip bulunuyor. OpenJDK 22.0.0 hakkında ayrıntılı bilgi edinmek için sürüm duyurusunu ve sürüm notlarını inceleyebilirsiniz.

Continue Reading →

 

OpenJDK 22.0.0 edinmek için aşağıdaki linklerden yararlanabilirsiniz.
0

Kotlin 2.0.0-Beta5 duyuruldu

Java sanal makinesi (JVM) üzerinde çalışan ve ayrıca JavaScript kaynak koduna derlenebilen, statik tipli bir programlama dili olan Kotlin‘in 2.0.0-Beta5 sürümü duyuruldu. İlkin St. Petersburg ve Rusya merkezli JetBrains programcıları tarafından geliştirilmeye başlanan Kotlin’in ismi, Finlandiya Körfezi’nde Rusya’ya bağlı bir ada olan Kotlin Adası’ndan gelmektedir. Java ile uyumlu sözdizimi olmasa da, Kotlin, Java kodu ile birlikte çalışmak üzere tasarlanmıştır. LL FIR transformatörlerindeki komut dosyaları için uygun destek sağlandığı belirtilirken, adı olmayan özellikler ve işlevlerin de yeniden analiz edilebilir olması gerektiği bildiriliyor. Bu sürümün çoğunlukla yeni Kotlin K2 derleyicisinin stabilizasyonunu kapsadığı belirtilirken, ek olarak, Kotlin/Wasm ve Kotlin/JS’de yeni özelliklerin yanı sıra Gradle oluşturma aracı için iyileştirmeler de olduğu ifade ediliyor. Kotlin 2.0.0-RC1 sürümü çıktığında, Kotlin derleyicilerinin diğer sürümleri tarafından derlenen kodlarla ikili uyumluluk sağlamayı ve K2 ile derlenen ikili dosyaların işlemesini ortadan kaldırmayı planladığı ifade ediliyor. Kotlin 2.0.0-Beta5 hakkında bilgi edinmek için GitHub sürümler sayfasını ve sürüm duyurusunu inceleyebilirsiniz.

Continue Reading →

 

Kotlin 2.0.0-Beta5 edinmek için aşağıdaki linkten yararlanabilirsiniz.

0

PostgreSQL JDBC 42.2.29, 42.3.10, 42.4.5, 42.5.6, 42.6.2, 42.7.3 duyuruldu

Java programlarının standart, veritabanından bağımsız Java kodu kullanılarak bir PostgreSQL veritabanına bağlanmasına olanak tanıyan PostgreSQL JDBC sürücüsünün 42.2.29, 42.3.10, 42.4.5, 42.5.6, 42.6.2, 42.7.3 sürümleri duyuruldu. Pure Java (Tip 4) ile yazılmış açık kaynaklı bir JDBC sürücüsü olan pgJDBC, PostgreSQL yerel ağ protokolünde iletişim kurar. Bu nedenle sürücü platformdan bağımsızdır; sürücü bir kez derlendikten sonra herhangi bir sistemde kullanılabilir. JDBC ekibinin, desteklenen tüm sürümler için küçük sürümler yayınladığı belirtilirken, Boolean türlerinin basit sorgu modunda işlendiğinden emin olunması hatırlatılırken; Java 8’de çalışırken ByteBuffer#position üzerindeki NoSuchMethodError sorununu gidermek için 42.2.29, 42.3.10, 42.4.5, 42.5.6, 42.6.2’nin yeni sürümlerinin yayınlandığı belirtiliyor. Sürüm notlarının tamamının görülebileceği belirtilirken, katkıda bulunan herkese çok teşekkür edildiği söyleniyor. PostgreSQL JDBC 42.2.29, 42.3.10, 42.4.5, 42.5.6, 42.6.2, 42.7.3 hakkında bilgi edinmek için sürüm duyurusunu, sürümler sayfasını ya da değişiklikler sayfalarını inceleyebilirsiniz.

Continue Reading →

 

PostgreSQL JDBC 42.2.29, 42.3.10, 42.4.5, 42.5.6, 42.6.2, 42.7.3 edinmek için aşağıdaki linklerden yararlanabilirsiniz.

0

Rust programlama dilinin 1.77.0 pre-release sürümü test edilmek üzere duyuruldu

İlkin Mozilla çalışanı Graydon Hoare tarafından kişisel bir proje olarak geliştirilmeye başlanan; 2009’da Mozilla’nın sponsor olmasıyla günümüzde Mozilla Research tarafından geliştirilmeye devam edilen bir programlama dili olan Rust’un 1.77.0 pre-release sürümü duyuruldu. Rust ekibinin, Rust’un yeni sürümünü duyurmaktan mutluluk duyduğu ifade ediliyor. Rust 1.77.0 pre-release sürümünün teste hazır olduğu belirtilirken, buna karşın, sürümün 21 Mart’ta yayınlanmasının planlandığı ifade ediliyor. Sürüm ekibinin bu GitHub sayfasıyla geri bildirimleri almaktan memnuniyet duyacağı belirtiliyor. Kapsamlılık kontrolü için tanımlayıcı gövde içindeki opak türlerinin ortaya çıkarıldığı belirtilirken, lint soft_unstable’ın gelecekteki kırılma raporlarına dahil edildiği söyleniyor. Basılı jetonlar arasındaki boşluğun iyileştirildiği belirtilirken, ASCII olmayan kaynak kodu için kapsam enstrümantasyonu/raporlarının düzeltildiği ifade ediliyor. Rust’un katmanlı platform desteği hakkında daha fazla bilgi için Rust’un platform destek sayfasına bakılması isteniyor. Rust’un en ilginç özelliği, tam anlamıyla orjinal bir dil olmaması, diğer dillerin iyi özelliklerinin birleştirilmesiyle ortaya çıkan melez bir dil olmasıdır. Sözgelimi C++ dilinin hafıza referanslama ve destructor özellikleri, SML’in veri yapıları, Python lexer sistemi gibi özellikler Rust’un bünyesinde bir araya gelmiştir. Rust 1.77.0 pre-release hakkında bilgi edinmek için sürüm duyurusunu ya da sürüm notlarını inceleyebilirsiniz.

Continue Reading →

  

Rust 1.77.0 pre-release edinmek için aşağıdaki linklerden yararlanabilirsiniz.

0

Python 3.13.0 alpha 5 duyuruldu

Yeni seriden Python 3.13.0’ın alpha 5 sürümü, Thomas Wouters tarafından duyuruldu. Bunun bir alpha, test sürümü olduğunun unutulmaması istenirken, sürümün yalnızca test etmek amacıyla kullanılması gerektiği, test eden kullanıcıların elde ettikleri izlenimleri buraya bildirmelerinin beklenildiği ifade edildi. Python 3.13.0’ın halen geliştirme aşamasında olduğu belirtilirken, bunun planlanan yedi alfa sürümden beşincisi olduğu söyleniyor. Alfa sürümleri, yeni özelliklerin ve hata düzeltmelerinin mevcut durumunun test edilmesini ve sürüm sürecinin test edilmesini kolaylaştırmayı amaçladığı belirtilirken, alfa aşaması sırasında, beta aşamasının başlangıcına (2024-05-07) kadar özelliklerin eklenebileceği ve gerekirse sürüm adayı aşamasına (2024-07-30) kadar değiştirilebileceği veya silinebileceği söyleniyor. Yeni sürümde, Python 3.15 veya 3.16’dan sonra kaldırılması planlanan yeni kullanımdan kaldırmaların yer aldığı söylenirken, serinin bir sonraki ön sürümün 3.13.0a6 olacağı belirtiliyor. Python geliştirmeyi ve bu sürümleri mümkün kılmaya yardımcı olan birçok gönüllüye teşekkür edildiği belirtiliyor. Python 3.13.0 alpha 5 hakkında bilgi edinmek için sürüm duyurusunu inceleyebilirsiniz.

Continue Reading →

 

Python 3.13.0 alpha 5 edinmek için aşağıdaki linklerden yararlanabilirsiniz.

0