Запитання з тегом «higher-order-functions»

1
Передача функції Scala методу Java 8
Наступний код Scala працює і може бути переданий методу Java, який очікує функції. Чи є чистіший спосіб зробити це? Ось мій перший пропуск: val plusOne = new java.util.function.Function[Int,Int] { override def apply(t:Int):Int = t + 1 override def andThen[V](after:function.Function[_ >: Int, _ <: V]): function.Function[Int, V] = ??? override def …

3
Іменування конвенції для функцій вищого порядку? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 4 роки тому . Чи існує угода про іменування для функцій вищого порядку? Тобто функції, які повертають інші …

1
Походження загальних списків імен функцій обробки списку
Деякі функції вищого порядку для роботи зі списками або масивами були неодноразово прийняті або заново створені. Мапа функцій , скласти [ l | r ], і фільтр зустрічаються разом у кількох мовах програмування, таких як Scheme, ML та Python, які, схоже, не мають спільного предка. Я збираюся з цими трьома …

2
Хто вперше ввів термін функція вищого порядку та / або громадянин першого класу?
Я зрозумів, що задовго до того, як Haskell, O'Caml або LISP, функції вищого порядку були предметом академічного дослідження, а в математиці Schönfinkel (в 1967 р.) І Haskell Curry (1968 р.) Вже застосовували такі методи, як currying, але це до того, як вона була доступна будь-якою мовою програмування Згідно з Вікіпедією …

4
Що особливого в каррі або частковому застосуванні?
Я щодня читав статті про функціональне програмування і намагався якомога більше застосувати деякі практики. Але я не розумію, що є унікальним у вигонці або частковому застосуванні. Візьмемо цей приклад Groovy як приклад: def mul = { a, b -> a * b } def tripler1 = mul.curry(3) def tripler2 = …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.