Запитання з тегом «haskell»

2
Які функції не може обчислювати система F?
У цій статті із Вікіпедії про повноту Тьюрінга вказується, що: Нетипічне обчислення лямбда - це Тьюрінг завершений, але багато типізованих лямбда-розрахунків, включаючи систему F, не є. Значення набраних систем ґрунтується на їх здатності представляти найбільш типові комп'ютерні програми при виявленні більшої кількості помилок. Що таке приклад загальної обчислювальної функції, яка …

5
Чи є анотована формальна система верифікації для чисто функціональних мов програмування?
ACSL (Мова специфікації Ansi C) - це специфікація коду С, анотація із спеціальними коментарями, що дозволяє офіційно перевірити код C. Я не розглядав це, але уявляю, що формальні методи, що використовуються у верифікаторах ACSL, були б схожими на Лоріку Лоара . Однак для чисто функціональних мов, таких як Haskell, я …

1
Чому функціональні мови програмування вимагають збирання сміття?
Що зупиняє ghc від перекладу Haskell в конкатенативну мову програмування, таку як комбінаційна логіка, а потім просто використання розподілу стеків для всього? Згідно з Вікіпедією, переклад з обчислення лямбда в комбінаторну логіку є тривіальним, а також, конкатенативні мови програмування можуть покладатися виключно на стек для розподілу пам'яті. Чи можливо зробити …

4
Чи сумісна ета-еквівалентність функцій з послідовною операцією Haskell?
Лема: якщо припустити, що у нас є ета-еквівалентність (\x -> ⊥) = ⊥ :: A -> B. Доведення: ⊥ = (\x -> ⊥ x)ета-еквівалентністю та (\x -> ⊥ x) = (\x -> ⊥)зменшенням під лямбда. Звіт Haskell 2010, розділ 6.2, визначає seqфункцію двома рівняннями: seq :: a -> b -> …

2
Які відносини між Альтернативою, MonadPlus (LeftCatch) та MonadPlus (LeftDistributive)?
Слідування Що таке приклад Monad, який є Альтернативою, але не MonadPlus? : Припустимо, - монада. Які відносини betweem будучи Alternative , а MonadPlusCatch і MonadPlusDistr ? ммmmмmmДля кожної з шести можливих пар я хотів би мати доказ того, що одна має на увазі інше, або зустрічний приклад того, що це …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.