«functional-programming» etiketlenmiş sorular

Fonksiyonel programlama, çıktıları program durumundan ziyade girdileri ile belirlenen fonksiyonların zincirli değerlendirmesi ile hesaplama problemlerini çözmeye çalışan bir paradigmadır. Bu programlama tarzında, yan etkiler ve değişken veriler kullanımdan kaldırılmıştır ve genellikle kesin olarak izole edilmiştir.


2
İşlevsel programcılar UML yerine ne kullanıyor?
Ben CS öğrencisiyim. Şu anda Objektif Analiz ve Tasarım derslerinin verildiği derslere katılıyorum. Çoğunlukla kullanım senaryoları yazma, müşteri için bazı uygulamalar yazarken karşılaşabileceğimiz sorunu analiz etme ve projeyi hem genişletilebilir, geliştiriciler için açık olacak şekilde tasarlama hem de müşteri bazı konular hakkında tartıştığında sorun yaratmama özellikleri. 'Nesnel' olduğu için, onu …

4
Tiplere göre örüntü eşleştirme deyimsel veya zayıf tasarım mı?
Görünüşe göre F # kodu genellikle model tiplerine karşı eşleşir. Kesinlikle match opt with | Some val -> Something(val) | None -> Different() yaygın görünüyor. Ancak bir OOP perspektifinden bakıldığında, bu, tipik olarak kaşlarını çatmış olan bir çalışma zamanı tür kontrolüne dayanan kontrol akışına çok benziyor. Bunu hecelemek için, OOP'de …

1
Jeneratör fonksiyonları fonksiyonel programlamada geçerli mi?
Sorular: Jeneratörler fonksiyonel programlama paradigmasını kırıyor mu? Neden ya da neden olmasın? Evetse, jeneratörler fonksiyonel programlamada kullanılabilir ve nasıl? Aşağıdakileri göz önünde bulundur: function * downCounter(maxValue) { yield maxValue; yield * downCounter(maxValue > 0 ? maxValue - 1 : 0); } let counter = downCounter(26); counter.next().value; // 26 counter.next().value; // …

5
Bir işlev parametre olarak bir işlev gerektiriyorsa derhal kirletilebilir mi?
Bir giriş parametresinin saflığı, çalışma zamanına kadar bilinmediği için, bir işlev bir giriş parametresi olarak işlev görürse hemen saf olmayan bir işlem olarak kabul edilir mi? İlgili: Bir işlev, işlevin dışında tanımlanan ancak parametre olarak iletilmeyen saf bir işlev uygularsa, yan etkisi olmayan ölçütleri yerine getiriyorsa ve çıktı yalnızca girdiye …

4
Yan etkileri ele almak için IO monad modelinin yararı tamamen akademik midir?
Başka bir FP + yan etki sorusu için özür dilerim, ama benim için buna cevap veren mevcut bir tane bulamadım. İşlevsel programlama (sınırlı) anlayışım, durum / yan etkilerin en aza indirilmesi ve vatansız mantıktan ayrı tutulması gerektiğidir. Ayrıca Haskell'in bu yaklaşımı bir araya getiriyorum, IO monad, bunu, programın kapsamı dışında …

5
İşlevsel programlama dillerini Zorunlu yerine tersine açıklayan nedir?
Fonksiyonel programlamanın faydalarını anlatan birçok makalede, Haskell, ML, Scala veya Clojure gibi C / C ++ / C # / Java gibi zorunlu dillerden farklı olarak "bildirimsel diller" olarak adlandırılan fonksiyonel programlama dilleri gördüm. Benim sorum, fonksiyonel programlama dillerini zorunlu kılanın aksine açıklayıcı kılan şeydir. Bildirici ve Zorunlu programlama arasındaki …

4
Fonksiyonel programlama kodda karmaşıklık ekler mi? [kapalı]
Kapalı . Bu soru görüş temelli . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Bu yayını düzenleyerek gerçekler ve alıntılarla yanıtlanabilmesi için soruyu güncelleyin . 5 yıl önce kapalı . Geçtiğimiz yıl boyunca (Java geçmişinden gelen) Scala kodu yazıldım . Vals, vaka sınıfları, harita / filtre / …

4
Kalıcı veri yapılarının işlevsel olmayan dillerde kullanımı
Tamamen işlevsel veya neredeyse tamamen işlevsel olan diller, değişmez oldukları ve vatansız fonksiyonel programlama tarzına iyi uydukları için kalıcı veri yapılarından yararlanırlar. Ancak zaman zaman Java gibi (devlet tabanlı, OOP) diller için kalıcı veri yapıları kütüphaneleri görüyoruz. Kalıcı veri yapıları lehine sıkça duyulan bir iddia, değişmez oldukları için iplik güvenli …

7
Fonksiyonel programlama ile ilgili erişilebilir kitap [kapalı]
Şu anda olduğu gibi, bu soru Soru-Cevap formatımıza uygun değil. Yanıtların gerçekler, referanslar veya uzmanlık tarafından desteklenmesini bekliyoruz, ancak bu soru muhtemelen tartışma, tartışma, oylama veya genişletilmiş tartışma talep edecektir. Bu sorunun çözülebileceğini ve muhtemelen yeniden açılabileceğini düşünüyorsanız, yardım için yardım merkezini ziyaret edin . 8 yıl önce kapalı . …

3
Ur / Web web programlama için yeni tamamen işlevsel bir dil? [kapalı]
Kapalı . Bu soru görüş temelli . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Bu yayını düzenleyerek gerçekler ve alıntılarla yanıtlanabilmesi için soruyu güncelleyin . 4 yıl önce kapalı . Ben rastladım Ur / Web projesi dilleri Haskell benzeri web çerçeveler benim arama sırasında. Bir kişi tarafından …

2
Temiz Kod ilkelerini işlevsel dillere uygulamak
Şu anda Robert Martin'in Temiz Kodunu okuyorum . Bence harika ve OO kodunu yazarken derslerini kalpten alıyorum. Özellikle, anlamlı isimlerle küçük fonksiyonları kullanma tavsiyesinin kod akışımı çok daha sorunsuz hale getirdiğini düşünüyorum. En iyisi bu alıntı ile özetlenir: [W] programı, her biri geçerli soyutlama düzeyini tanımlayan ve sonraki TO paragraflarına …

5
Elm'in iddia ettiği gibi “çalışma zamanı istisnası yok” unun avantajı nedir?
Bazı diller "diğer çalışma zamanı istisnaları" bulunmadığını ve bu dillere sahip diğer diller için açık bir avantaj olduğunu iddia etmektedir. Bu konuda kafam karıştı. Çalışma zamanı istisnası bildiğim kadarıyla ve iyi kullanıldığında sadece bir araçtır: "kirli" durumları iletebilirsiniz (beklenmedik verilere atarak) yığın ekleyerek hata zincirine işaret edebilirsiniz karmaşa (ör. geçersiz …

6
İşlevlere iletilen argüman miktarını sınırlayan bir dil
Fikir, +, -,%, vs. gibi operatörlerden esinlenilerek bir veya iki argüman geçirilen işlevler olarak görülebilir ve yan etki görülmez. Ben veya başka birisinin ikiden fazla bağımsız değişkenin geçmesini engelleyen bir dil yazdığını ve yalnızca dönüş değeriyle çalıştığını varsayarsak: a) böyle bir dil, kodun anlaşılmasını kolaylaştırır mı? b) Kodun akışı daha …

2
Comonad nedir ve nasıl faydalıdır?
Son zamanlarda Monad'ların nasıl çalıştığı konusundaki bilgilerimi körükledim. Ben de bir kavramı tanıtıldı oldum 'Comonad' olarak tarif edilir, ters bir monadın ikili . Ancak, kafamı etrafına sarmak imkansız. Monad'ları anlamak için kendim için kendi benzetmesini yaptım: Monadlar, 'ifadelerin konveyör bantlarını inşa etmek için bir plan' olarak görülebilir. Yeni bir Monad …

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.