Bağımlı yazarak gerçekten sağlam bir kavrama elde etmekle ilgileniyorum. TaPL'in çoğunu okudum ve (tamamen absorbe değilse) ATTaPL'de 'Bağımlı Türler'i okudum . Ayrıca bağımlı yazmayla ilgili birkaç makale okudum ve inceledim.
Birçok tip teorisi tartışması, önceki tip sistemlere artan özellikler eklemeye odaklanmış gibi görünmektedir, "X tip sisteminden sonraki büyük genelleme nedir?". Bağımlı türler, Sistem F'nin bir sonraki büyük genellemesi gibi görünüyor, ancak henüz sezgisel, kanonik bağımlılıkla yazılmış dili bulamadım. Calculus (endüktif) Yapılar'a yapılan birçok referans, CoC'nin o dil olduğunu düşünmemi sağlıyor, ancak gördüğüm dilin açıklamaları bana çok açık veya sezgisel görünmüyor.
Böyle bir dilin şu gibi özelliklere sahip olacağını tahmin ediyorum / tahmin ediyorum: (ve eğer özellikle herhangi bir şeyin kafası karışmış veya gerçekçi görünmüyorsa lütfen bana bildirin)
- Genelleştirilmiş soyutlama (tür hiyerarşisindeki herhangi bir etki alanından diğerine, tür -> terim, terim> tür '' 'vb. İşlevlere sahip olabilir)
- Sonsuz bir yazma hiyerarşisine sahiptir (terimler: types: types ': types' ': ...)
- En az sayıda temel eleman. Dilin her seviye için sadece tek bir öğe belirlediğini hayal ediyorum. Örneğin, ((): Birim: Tür: Tür ': ...) olduğunu iddia edebilir. Diğer elemanlar bu elemanlardan yapılmıştır.
- Toplam ve ürün çeşitleri elde edilebilir.
Ayrıca, ideal olarak tartışacağımız dilin bir açıklamasını da arıyorum:
- Bu dilde soyutlama ve niceliklendirme arasındaki ilişki. Birleştirilmezlerse, neden birleştirilmediklerini açıklayın.
- Açıkça sonsuz tip hiyerarşi
Bu soruyu soruyorum çünkü bağımlı tip teorisini öğrenmek istiyorum ama aynı zamanda küçük bir CS arka planı varsayarak, kanıt yardımcılarının ve bağımlı yazılan dillerin nasıl kullanılacağını ve nasıl anlaşılacağını öğreten bir rehber oluşturmak istediğim için soruyorum.