«type-checking» etiketlenmiş sorular

bir değişkenin, ifadenin veya değerin bildirilen türe sahip olduğunun doğrulanması

8
Bilgisayar bir bayt veri türünü nasıl belirler?
Örneğin, bilgisayar 10111100belirli bir RAM baytında depolandıysa, bilgisayar bu baytı bir tamsayı, ASCII karakteri veya başka bir şey olarak yorumlamayı nasıl bilir? Tip verileri bitişik bir baytta mı depolanıyor? (Bunun bir bayt için iki katı alan kullanmasıyla sonuçlanacağını sanmıyorum.) Belki bir bilgisayarın veri türünü bile bilmediğinden, yalnızca onu kullanan programın …

2
Tip kontrol algoritmaları
Tip kontrol algoritmaları hakkında kişisel bir bibliyografik araştırma başlatıyorum ve bazı ipuçları istiyorum. En sık kullanılan tip kontrol algoritmaları, stratejileri ve genel teknikler nelerdir? Özellikle, C ++, Java 5+, Scala veya diğerleri gibi yaygın olarak bilinen güçlü statik yazılan dillerde uygulanan karmaşık tür denetleme algoritmalarıyla ilgileniyorum. IE, temel dilin çok …

1
Ürün türleriyle tür çıkarımı
Birleştirici bir dil için bir derleyici üzerinde çalışıyorum ve tür çıkarımı desteği eklemek istiyorum. Hindley-Milner'ı anlıyorum, ama tip teorisini öğrenirken öğrendim, bu yüzden onu nasıl uyarlayacağımdan emin değilim. Aşağıdaki sistem sağlam mı ve karar verilebilir mi? Terim, değişmez bir terim, terimlerin bir bileşimi, bir terimin teklifi veya bir ilkeldir. e::=x∣∣ee∣∣[e]∣∣…e::=x|ee|[e]|… …

2
Yönetilen kod çalıştıran minimal bir çekirdeğe sahip olmanın potansiyel tuzakları nelerdir?
Yönetilen bir kod yorumlayıcı / çalışma zamanı ve yerel olmayan bir makine diline (Java bayt kodu, CIL, vb.) Derlenmiş daha büyük bir üst çekirdeğe dayanan çok küçük bir yerel alt çekirdeğe dayalı bir işletim sistemi oluşturmak istediğinizi varsayalım. Benzer işletim sistemlerine örnek olarak Singularity ve Cosmos verilebilir . Tamamen doğal …


1
Derleme zamanı garantileri için neden daha fazla araştırma yapmıyoruz?
Derleme zamanı olan her şeyi seviyorum ve bir programı derledikten sonra yürütülmesi hakkında birçok garanti verildiği fikrini seviyorum. Genel olarak konuşursak, statik tip bir sistem (Haskell, C ++, ...) herhangi bir dinamik tip sistemden daha güçlü derleme zamanı garantileri vermektedir. Anladığım kadarıyla Ada, zaman kontrolünü derleme konusunda daha da ileri …

2
HoTT'deki ürünleri kilise / scott kodlamalarına indirgeme
Şu anda bazı insanlarla HoTT kitabından geçiyorum. Göreceğimiz çoğu endüktif tipin, eşdeğer tip için ilham kaynağı olarak recuror tipini alarak sadece bağımlı fonksiyon tiplerini ve evrenleri içeren tiplere indirgenebileceğini iddia ettim. Bunun nasıl çalışacağını düşündüğümü çizmeye başladım ve bir tökezlemeden sonra cevap olduğunu düşündüğüm şeye geldim. ⋅×⋅≡∏A,B,C:U(A→B→C)→C⋅×⋅≡∏A,B,C:U(A→B→C)→C\cdot \times \cdot \equiv …

1
ML tipi çıkarımın üstel maliyetinin kısa örneği
OCaml gibi fonksiyonel bir dilde tür çıkarım maliyetinin çok yüksek olabileceği dikkatimi çekti. İddia, her bir ifade için, karşılık gelen tipin uzunluğunun, ekspresyonun uzunluğu üzerinde üstel olacağı şekilde bir dizi ifade olmasıdır. Aşağıdaki diziyi tasarladım. Sorum şu: aynı türlere ulaşan daha özlü ifadelere sahip bir sıra biliyor musunuz? # fun …

1
Coq neden ana dillerinde let-ifadeleri içeriyor?
Coq, temel dilinde let-ifadeleri içerir. Let-ifadelerini aşağıdaki gibi uygulamalara çevirebiliriz: let x : t = v in b ~> (\(x:t). b) v Bunun her zaman işe yaramadığını anlıyorum çünkü vdaktilo kontrol ederken değer kullanılamayacaktı b. Bununla birlikte, bu, formun uygulamalarının daktilo kontrolüyle özel bir muhafaza ile kolayca sabitlenebilir (\(x:t). b) …

1
Statik tip kontrolünün çok muhafazakar olmasının çelişkili bir örneği nedir?
Gelen Programlama Dilleri Kavramları , John Mitchell statik tür denetlemesi nedeniyle Durma Problemi ait (aşırı sıkı) mutlaka muhafazakar olduğunu yazıyor. Örnek olarak verir: if (complicated-expression-that-could-run-forever) then (expression-with-type-error) else (expression-with-type-error) Birisi gerçekten pratik bir endişe yaratacak bir cevap veremez mi? Java, böyle durumlar için dinamik olarak kontrol edilen dökümlere izin verdiğini …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.