«functional-programming» etiketlenmiş sorular

6
Okasaki'den beri tamamen işlevsel veri yapılarında yeni olan ne var?
Chris Okasaki'nin 1998 tarihli "Tamamen işlevsel veri yapıları" kitabından bu yana, çok fazla heyecan verici tamamen işlevsel veri yapısının ortaya çıktığını görmedim; Sadece birkaçını adlandırabilirim: IntMap (ayrıca 1998'de Okasaki tarafından icat edildi, ancak bu kitapta bulunmuyor) Parmak ağaçları (ve monoidler üzerine genellemeleri) Ağaç değişmezlerini sağlamak için "iç içe tipler" veya …

2
Tamamen işlevsel veri yapılarında öne çıkan sorular nelerdir?
Bu soru, 1998’de Okasaki’nin kitabının yayınlanmasından bu yana PFDS’deki yeniliklerle ilgili başka bir sorudan ilham almıştır . Sahip olduğum iki soru ile başlayacağım: Karma tabloların hızına yaklaşan tamamen işlevsel bir küme veri yapısı var mı? Denemeler henüz yok. O (1) ekli tamamen işlevsel parmak ağaçları var mı? Şimdiye kadarki en …

2
Uygulamalı functorün kategorik olarak açıklanması - monoidal functors
ApplicativeKategori teorisi açısından anlamak isterim . Dokümantasyon için Applicativeo olduğunu söylüyor güçlü gevşek monoidal funktoru . Öncelikle, monoidal fonksiyon göstericileri hakkındaki Wikipedia sayfası bir monoidal fonksiyon göstergesinin ya laks ya da güçlü olduğunu söylüyor . Bana öyle geliyor ki kaynaklardan biri yanlış, ya da terimleri farklı kullanıyorlar. Bunu açıklayan var …

8
Yüksek dereceli algoritmalar
İyi bilinen algoritmaların çoğu, giriş ve çıkışlarının "düz" veri olduğu anlamında birinci derecedendir. Bazıları, örneğin sıralama, karma tablolar veya harita ve katlama işlevleri gibi önemsiz bir şekilde ikinci derecedir: bir işlev tarafından parametrelendirilirler, ancak diğer girdi verilerinin parçalarına çağrılması dışında gerçekten ilginç bir şey yapmazlar. Bazıları ayrıca ikinci dereceden fakat …



5
Saf işlevsel programlama dilleri için herhangi bir açıklamalı resmi doğrulama sistemi var mı?
ACSL (Ansi C Spesifikasyon Dili), C kodunun resmi olarak doğrulanmasını sağlayan özel yorumlarla not edilen C kodunun bir özelliğidir. Araştırmamıştım , ancak ACSL doğrulayıcılarında kullanılan resmi yöntemlerin Hoare Logic'e benzer olacağını hayal ediyorum. Haskell gibi saf işlevsel diller için, resmi doğrulama için ne tür bir formalizmin kullanılacağını hayal edemiyorum. ACSL'ye …

1
Kavşak ve sendika tipleri ile ilgili pratik konular nelerdir?
Öğrenme deneyimi olarak basit ve statik olarak yazılmış işlevsel bir programlama dili tasarlıyorum. Şimdiye kadar uyguladığım tip sisteminin, (biraz fazladan bir çalışma ile) kesişme ve sendika tipleri içerebileceği anlaşılıyor, örneğin: <Union String Integer> <Union Integer Foo> Yukarıdaki iki türün kesişimi düz olacaktır Integer İki tür birliği olurdu <Union String Integer …

2
Çöp toplayan bir programlama dilinde belirtilen en kötü durumlu veri yapılarının çalışma süresi analiz edilirken GC maliyeti ihmal edilebilir mi?
Ben sadece sorumun cevabının "evet" olduğunu varsaydığımı fark ettim ama iyi bir nedenim yok. Belki de sadece en kötü durumdaki yavaşlamayı kanıtlayan bir çöp toplayıcı olduğunu hayal ediyorum . Alıntılayabileceğim kesin bir referans var mı? Benim durumumda tamamen işlevsel bir veri yapısı üzerinde çalışıyorum ve bu detaylar önemliyse, Standart ML …

2
Toplam fonksiyonel programlamanın sınırları nelerdir?
Toplam fonksiyonel programlamanın sınırlamaları nelerdir? Turing-complete değildir, ancak yine de olası programların büyük bir alt kümesini destekler. Turing-complete dilinde yazabileceğiniz, ancak tamamen işlevsel bir dilde yazamayacağınız önemli yapılar var mı? Toplam işlevsel dilde yazılmış programların tamamen statik olarak analiz edilebileceğini söylemek doğru mudur, Turing-complete dillerinde statik analiz durdurma problemi ile …

2
Kategori teorisi, hesaplama karmaşıklığı ve kombinatorik bağlantılar?
“ Fonksiyonel Algoritma Tasarımının İncileri ” ve daha sonra “ Programlama Cebiri ” ni okumaya çalışıyorum ve özyinelemeli (ve polinom olarak) tanımlı veri türleri ve birleştirici nesneler arasında, aynı özyinelemeli tanımlamaya sahip olan ve daha sonra da önde gelen bir yazışma var. kombinatoryal türlerin girişlerinde gösterildiği gibi aynı resmi güç …

4
Zorunlu diller işlevsel dillerden birbirinden ne kadar farklıdır?
Simon Peyton Jones'un Fonksiyonel Programlama Dillerinin Uygulanması'nı okuyorum ve beni biraz şaşırtan bir ifade var (sayfa 39): Zorunlu diller için olandan çok daha büyük ölçüde, işlevsel diller nispeten az anlamsal farklılıklarla birbirlerinin büyük ölçüde sözdizimsel varyasyonlarıdır. Şimdi, bu 1987'de yazıldı ve bu konudaki düşüncelerim o zamanlar etrafta olmayan veya popüler …

3
Okuyucu, Yazar Monad'ları
Let CCC bir olmak CCC . Let (×)(×)(\times) bir ürün bifunctor olmak CCC . As Kedi CCC, biz köri olabilir (×)(×)(\times) : curry(×):C→(C⇒C)curry(×):C→(C⇒C)curry (\times) : C \rightarrow(C \Rightarrow C) curry(×)A=λB.A×Bcurry(×)A=λB.A×Bcurry (\times) A = \lambda B. A \times B Fonksiyonel kategori C⇒CC⇒CC \Rightarrow C olağan monoidal yapıya sahiptir. Bir monoid C⇒CC⇒CC …

3
Bir Parmak Ağacı Yapısını Önyükleme
2-3 parmak ağacı ile biraz çalıştıktan sonra çoğu operasyonda hızlarından etkilendim. Ancak, karşılaştığım bir sorun, büyük bir parmak ağacının ilk oluşturulmasıyla ilişkili büyük ek yük. Bina, birleştirme işlemleri dizisi olarak tanımlandığından, gereksiz çok sayıda parmak ağacı yapısı oluşturursunuz. 2-3 parmak ağacının karmaşık doğası nedeniyle, onları önyüklemek için sezgisel bir yöntem …

2
(Nasıl) Turing hesaplama modelinin yokluğunda NP sorunlarını keşfedebilir / analiz edebilir miyiz?
Tamamen soyut bir matematik / hesaplamalı akıl yürütme bakış açısıyla, 3-SAT, Altküme Toplamı, Seyahat Eden Satıcı vb. Onları sadece işlevsel bakış açısıyla anlamlı bir şekilde aklımızdan çıkartabilir miyiz ? Hatta mümkün olabilir mi? Bu soruyu, lambda hesabı hesaplama modelini öğrenmenin bir parçası olarak tamamen kendi kendini sorgulama noktasından alıyorum. Bunun …

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.