1 puan yazan GN⁺ 2023-08-17 | 1 yorum | WhatsApp'ta paylaş
  • Bu yazı, programlama dillerinde tip sistemi gösterimini nasıl okuyup anlayacağınıza dair ayrıntılı bir açıklama sunuyor.
  • Tip sistemi gösterimi, tip sistemiyle ilgili makale veya akademik çalışmalarda kullanılan matematiksel ifadelerdir.
  • Tip sistemini açıklamak için kullanılan gösterimler anlatıma göre değişse de, çoğu anlatım birçok ortak unsuru paylaşır.
  • Programlama diline uygulanan tip sistemi, programlama dilinin sözdizimi üzerinde işleyen bir kurallar kümesi olan sözdizimsel bir sistemdir.
  • Bu gösterim, formel mantıktan doğmuştur ve sistem özelliklerine ilişkin formel ispatlar kurmak için kullanılır.
  • Bu yazı ayrıca tip sistemi gösterimindeki ilişki, yargı, aksiyom ve çıkarım kuralı kavramlarını da ele alır.
  • Tipleme ilişkisi genellikle e:τ şeklinde yazılır ve "e, τ tipine sahiptir" diye okunabilir.
  • Tipleme yargısı ⊢e:τ⊢ gösterimiyle yazılır; burada , "şu ifade doğrudur" anlamında okunabilir.
  • Bu yazı ayrıca tip sistemi gösterimindeki değişken, bağlam ve ortam kavramlarını da ayrıntılı biçimde açıklar.
  • Bağlam ya da tip ortamı gösterimde Γ ile ifade edilir.
  • Yazı ayrıca çıkarım kuralı düzeni, yan koşullar, alt tipleme, çoklu bağlamlar ve çift yönlü tip denetimi gibi diğer yaygın gösterimleri ve dikkat edilmesi gereken noktaları kapsar.
  • Bu yazı, özellikle bu kavrama yeni olanlar için, tip sistemi gösterimini anlamaya yönelik kapsamlı bir rehberdir.

1 yorum

 
GN⁺ 2023-08-17
Hacker News yorumu
  • Bilgisayar bilimi makalelerindeki tip sistemi gösterimi, BNF gösterimi ve çıkarım kuralları üzerine bir tartışma ile bunlara dair temel bir açıklama
  • Gösterimin kökeni Frege'ye kadar izleniyor; turnike sembolü ve yatay çizgi temel unsurlar
  • Bilgisayar bilimi mezunu olmalarına rağmen bazı okurlar |- ve |=, ayrıca kullanılan değişkenlerin meta-sözdizim düzeyindeki anlamını kafa karıştırıcı buluyor
  • Açıklama için teşekkür edilse de, bazı okurlar bunun neden Stack Exchange'de yazıldığını, neden başka bir platform olan lexi-lambda.github.io'da yazılmadığını merak ediyor
  • Benjamin C. Pierce'ın "Types and Programming Languages" kitabı, bu konuları ele alan iyi bir ders kitabı olarak öneriliyor
  • Bazı okurlar bu konuyu yıllardır merak ettiklerini ama nasıl yaklaşacaklarını bilmediklerini söylüyor
  • Ada Reference Manual, bu tür sözdizimin pratik kullanımına bir örnek olarak anılıyor
  • Temel şeylerden başlayıp adım adım ilerleyen yanıta övgü var
  • 𝗍𝗋𝗎𝖾+2:𝖨𝗇𝗍, çoğu dilde anlamsız olsa da Python'da True + 2 gerçekten bir tamsayıdır ve 3'e eşittir örneği veriliyor