3 puan yazan GN⁺ 2024-09-23 | 1 yorum | WhatsApp'ta paylaş
  • 12 yıllık geliştirme ve gerçek kullanımın ardından Hy 1.0.0 yayımlandı
  • Hy, Python içine gömülü bir Lisp lehçesidir
    • Lisp ailesinden, çok paradigmalı genel amaçlı bir programlama dilidir
    • Python için alternatif bir sözdizimi olarak uygulanmıştır
    • Python'a kıyasla çeşitli yeni özellikler, genellemeler ve sözdizimi sadeleştirmeleri sunar
    • Diğer Lisp'lere kıyasla Python'un yerleşik özelliklerine ve üçüncü taraf Python kütüphanelerine doğrudan erişebilir
    • Buyruksal, işlevsel ve nesne yönelimli programlama stillerini serbestçe karıştırabilir

GN⁺ görüşü

  • Hy, Python ile Lisp'in güçlü yanlarını birleştiren ilgi çekici bir programlama dilidir. Python'un zengin ekosistemi ve kütüphanelerinden yararlanırken Lisp'in güçlü özelliklerini ve esnekliğini de sunarak geliştirici üretkenliğini artırabilir.
  • Ancak Hy henüz yaygın olarak kullanılan bir dil değildir; bu nedenle öğrenme kaynakları ve topluluk desteği sınırlı olabilir. Ayrıca mevcut Python kodlarıyla uyumluluk sorunları ortaya çıkabileceğinden dikkat gerektirir.
  • Hy ile benzer kavramlara sahip diğer diller arasında Clojure ve Racket bulunur. Bunlar da Lisp ailesinden dillerdir; işlevsel programlama ve makrolar gibi özellikler sunar ve JVM ya da kendi çalışma zamanları üzerinde çalışır.

1 yorum

 
GN⁺ 2024-09-23
Hacker News görüşleri
  • Hy'nin Python'a nasıl çevrildiğini anlamakta zorlandım

    • Hy, Lisp programlama dilinin bir lehçesi ve s-ifadelerini Python'un soyut sözdizimi ağacına (AST) çeviriyor
    • Github kodundan bu derleyicinin Python ile yazıldığını doğruladım
    • Hy'yi "Python'a gömülü bir Lisp lehçesi" diye tanıtmak yerine, "Python'un AST'sine derlenen bir Lisp lehçesi" diye tanıtmak daha açık olur gibi geliyor
    • Lisp'i Python'a gömmenin çeşitli yolları var ve her biri oldukça farklı, farklı trade-off'lara sahip
    • Örneğin yorumlayıcıyı C ile yazabilir, Python bytecode'una derleyebilir veya doğrudan Python kaynak koduna çevirebilirsiniz
    • Her hâlükârda ilginç bir proje
  • HYPE POST'u gerçekten çok sevdim

    • Kurumsal yazılımlarla çalışırken çok iyi oluyor
  • Hy'nin ilk günlerinden bugüne çok geliştiğini görmek şaşırtıcı

    • Pycon'da Hy'yi ilk tanıtan lightning talk'u izlemiştim
    • Paul ile tanıştım ve Hy'nin ilk sürümlerine katkı vermeye başladım
    • CL tarzı kwargs ve birkaç kütüphane gibi şeylerle ilgilenmiştim
    • Projenin hâlâ devam ettiğini görmek sevindirici
  • Artık https://github.com/rcarmo/sushy projesini toparlayabilirim

    • Hy'yi her yükselttiğimde sözdiziminin bozulması veya bir şeylerin hyrule paketinden taşınması gibi sorunlar oluyordu
    • Hy, iPad'deki https://holzschu.github.io/a-Shell_iOS içinde gayet iyi çalışıyor
    • vim/neovim sözdizimi vurgusunun 0.29+ sürümleri ve async özelliklerini yakalaması gerekiyor
    • Fennel ve Guile denedim ama Python kütüphanelerine ve ekosistemine erişebilmek daha iyi
    • Async özellikleriyle API'leri verimli şekilde işlemek mümkün
  • Tebrikler! İki sorum var

    • REPL tabanlı geliştirmeyi destekliyor mu (condition system, breakloop vb.)
    • Bağımsız bir dağıtımı var mı? Python'un kendisini dağıtmak uğraştırıcı. İdeal durumda tüm bağımlılıkları içeren tek bir Hy binary'si dağıtabilmek olurdu
  • Clojure hayranları için ilgili bir bilgi:

  • Tebrikler ve teşekkürler! Hy ile transformer'ları denedim ve https://github.com/kunalb/orphism'i yayımladım

    • Hy'yi tekrar denemenin zamanı gelmiş olabilir
  • Daha az ciddi bölümleri çok keyifli buldum

    • Keşke daha fazla programlama projesi mizahı benimsese
    • Bu, Python geleneğini onurlandırmanın en iyi yolu olabilir
  • Python sözdizimini bırakmadan işlevsel programlama yapıları elde edebilirsiniz (Hy'nin yaptığı gibi)

  • Raku'nun güzel yanlarından biri, varsayılan olarak şaşırtıcı derecede iyi bir Lisp izlenimi vermesi