Вопросы с тегом «higher-order-functions»

247
Почему Haskell (GHC) так чертовски быстр?

Haskell (с GHCкомпилятором) работает намного быстрее, чем вы ожидаете . При правильном использовании он может приблизиться к языкам низкого уровня. (Любимая вещь для Haskellers - попытаться получить в пределах 5% от C (или даже побить его, но это означает, что вы используете неэффективную программу...

196
разница между foldLeft и reduLeft в Scala

Я узнал основную разницу между foldLeftиreduceLeft foldLeft: начальное значение должно быть передано reduceLeft: принимает первый элемент коллекции в качестве начального значения выдает исключение, если коллекция пуста Есть ли другая разница? Есть какая-то конкретная причина иметь два метода с...

167
Как я могу взорвать и обрезать пустое пространство?

Например, я хотел бы создать массив из элементов в этой строке: $str = 'red, green, blue ,orange'; Я знаю, что вы можете взорваться и пройти через них и обрезать: $arr = explode(',', $str); foreach ($arr as $value) { $new_arr[] = trim($value); } Но я чувствую, что есть однострочный подход, который...

139
Как использовать ES6 Fat Arrow для .filter () массива объектов

Я пытаюсь использовать функцию стрелки ES6 .filterдля возврата взрослых (Джек и Джилл). Кажется, я не могу использовать оператор if. Что мне нужно знать, чтобы сделать это в ES6? var family = [{"name":"Jack", "age": 26}, {"name":"Jill", "age": 22}, {"name":"James", "age": 5 }, {"name":"Jenny",...

96
Что такое параморфизмы?

Читая эту классическую статью , я зацикливаюсь на параморфизмах. К сожалению, раздел довольно тонкий, и на странице Википедии ничего не сказано. Мой перевод на Haskell: para :: (a -> [a] -> b -> b) -> b -> [a] -> b para f base = h where h [] = base h (x:xs) = f x xs (h xs) Но...

17
Как функции высшего порядка, такие как .map (), работают внутри JavaScript?

В настоящее время каждый пытается использовать такие функции высшего порядка, чтобы получить многообещающий результат при написании меньшего количества кода. Но мне интересно, как эти функции работают внутри. Предположим, если я напишу что-то вроде var numbers = [16, 25, 36]; var results =...

16
Haskell: класс типов против передачи функции

Мне кажется, что вы всегда можете передавать аргументы функции, а не использовать класс типов. Например, вместо определения класса типов равенства: class Eq a where (==) :: a -> a -> Bool И использование его в других функциях для указания аргумента типа должно быть экземпляром Eq: elem :: (Eq...

12
Объединяя фрагменты кода Haskell, чтобы получить большую картину

Это код, который я где-то нашел, но хочу знать, как это работает: findIndices :: (a -> Bool) -> [a] -> [Int] findIndices _ [] = [] findIndices pred xs = map fst (filter (pred . snd) (zip [0..] xs)) Вывод: findIndices (== 0) [1,2,0,3,0]==[2,4] , где predесть (==0)& xsесть[1,2,0,3,0] Я...

9
Какие знания или обучение необходимы для того, чтобы кто-то записал определение сгиба, как это? [закрыто]

Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 7 месяцев назад . В последнее время я пытаюсь использовать...