Вопросы по теме 'purely-functional'

Haskell: изменить список из 100 номеров на 10 списков из 10 номеров?
Как в Haskell можно преобразовать список из x чисел в n списков из n чисел? Первый подсписок будет иметь номера с первого по десятый, второй список с 11 по 20... myFunction :: [Int] -> [[Int]]
119 просмотров

Имеет ли [Pure] какие-либо последствия, кроме отсутствия видимых побочных эффектов для Code Contracts?
документация PureAttribute говорит: Указывает, что тип или метод являются чистыми, т. е. не вносят никаких видимых изменений состояния. Является ли это единственным требованием к функции Pure в соответствии с контрактами Microsoft...
94 просмотров

Почему мы должны использовать монаду состояния вместо прямой передачи состояния?
Может ли кто-нибудь показать простой пример, где монада состояния может быть лучше, чем передача состояния напрямую? bar1 (Foo x) = Foo (x + 1) vs bar2 :: State Foo Foo bar2 = do modify (\(Foo x) -> Foo (x + 1)) get
2387 просмотров

Каков надежный способ рендеринга динамического количества дочерних компонентов React с использованием шаблона компонента контейнера Redux?
Скажем, у меня есть функциональный компонент презентации React, например: const Functional = (props) => { // do some stuff return ( <div> // more HTML based on the props </div> ); } Functional.propTypes = {...
66 просмотров

Как написать правильную подпись типа для Vect в Идрисе?
Недавно я исследовал зависимые типы в Идрисе. Однако я столкнулся с проблемой, которая довольно раздражает, а именно в Идрисе: я должен запускать свою программу с сигнатурой типа. Итак, проблема в том, Как я могу написать краткую подпись типа в...
181 просмотров
schedule 18.02.2022

Как добавить новый аргумент в чистую функцию, не обновляя все вызовы функции?
Я делаю чистую функцию (пример на js, но вопрос не зависит от языка) с одним входным аргументом и вызываю ее во всем приложении. var day = 'Tuesday'; var doYouExist = function(you) { return !!you; } Затем я понимаю, что я должен...
48 просмотров

Разделение сложного шаблона строки (без регулярного выражения) в функциональном подходе
Я пытаюсь разбить строку без регулярного выражения в более идиоматическом функциональном подходе. case class Parsed(blocks: Vector[String], block: String, depth: Int) def processChar(parsed: Parsed, c: Char): Parsed = { import parsed._ c...
95 просмотров

Что такое чистая функция, когда мы говорим о функции внутри функции?
Я узнал, что чистая функция — это функция, которая не изменяет глобальное состояние, и точка. Если это так, то функции внутри функций могут изменять состояние внешней функции и оставаться чистыми, верно? Пример: function func1() { let name =...
400 просмотров