Почему не уменьшить вызов функции? Как я могу проверить во время компиляции, что карта содержит пару ключ-значение? import Data.SortedMap N: SortedMap String Тип N = fromList [("a", Nat), ("...
Можно ли доказать равенство функций, если они равны поточечно? - т. е. построить следующую функцию: pointwiseEquals: (f: a - & gt; b) - & gt; (g: a - & gt; b) - & gt; ((x: a) - & gt; (f x) = (...
Я начинаю погружаться в программирование с зависимой типизацией и обнаружил, что языки Agda и Idris наиболее близки к Haskell, поэтому я начал с этого. Мой вопрос: в чем заключаются основные различия ...
В библиотеке «Эффекты Идриса» эффекты представлены в виде ||| Этот тип параметризуется с помощью: ||| + Возвращаемый тип вычисления. ||| + Входной ресурс. ||| + Вычисления для запуска на ...
Я прочитал некоторую документацию по инструменту статической проверки Fortify. Одна из концепций, используемых этим инструментом, называется порчей. Некоторые источники, такие как веб-запросы, предоставляют данные, которые испорчены в одном или ...
Я могу делать типы ранга n в Idris 0.9.12 только довольно неуклюже: tupleId: ((a: Type) - > a -> a) - > (а, б) - > (a, b) tupleId f (a, b) = (f _ a, f _ b) Мне нужны подчеркивания везде, где ...
Существует учебное пособие по Idris, учебное пособие по Agda и множество других статей по стилю учебного пособия и вводный материал с бесконечными ссылками на вещи, которые еще предстоит изучить. Я ползаю в середине ...