Вопросы по теме 'partial-application'
Поддерживает ли Java каррирование?
Мне было интересно, есть ли способ вытащить это на Java. Я думаю, что это невозможно без встроенной поддержки замыканий.
35948 просмотров
schedule
18.02.2022
Частичное приложение — Eloquent Javascript
Я читаю Eloquent Javascript и мне трудно понять приведенный ниже пример. Кто-нибудь сможет сделать построчное объяснение типа? В частности, я не понимаю, почему первый цикл начинается с единицы и почему метод push используется как для knownArgs, так...
1037 просмотров
schedule
11.05.2023
Получение var vs val из частично примененной функции
Я пытаюсь создать удобную оболочку для вызовов моей базы данных в scala, используя частично примененную функцию:
def queryResult[B](connection: Connection, sql: String)(process: (CallableStatement,ResultSet) => B): B =
using (connection)...
130 просмотров
schedule
07.12.2022
Каррирование функции Javascript с произвольным порядком фиксированных параметров
Функции каррирования могут быть полезны:
function tag(name, value) {
return '<' + name + '>' + value + '</' + name + '>';
}
var strong = tag.bind(undefined, "strong");
strong("text"); // <strong>text</strong>...
415 просмотров
schedule
15.02.2024
Приложение оператора доллара Haskell
У меня проблемы с пониманием того, как приложение-функция работает с каррированием в haskell. Если у меня есть следующая функция:
($) :: (a -> b) -> a -> b
Я понимаю, что для частичного применения этой функции мне нужно предоставить...
2164 просмотров
schedule
19.06.2023
Частичное применение функции с неявным параметром
Могу ли я превратить метод, который принимает неявный параметр, в функцию?
trait Tx
def foo(bar: Any)(implicit tx: Tx) {}
foo _ // error: could not find implicit value for parameter tx: Tx
Я пытаюсь добиться следующего, желательно, если я...
3461 просмотров
schedule
13.10.2022
Есть ли способ написать этот код Haskell в Scala?
Я изучаю несколько языков функционального программирования, изучаю интересные вещи и сейчас присматриваюсь к Scala. Я пытаюсь найти самый простой способ написать функцию с именем double , которая принимает один аргумент и удваивает его. Что я...
170 просмотров
schedule
07.06.2022
Каков механизм, с помощью которого функции с несколькими списками параметров могут (иногда) использоваться с меньшим количеством параметров, чем требуется?
Позвольте мне представить этот вопрос в качестве примера. Это было взято из лекции 2.3 курса Мартина Одерского по функциональному программированию.
У меня есть функция для итеративного поиска фиксированных точек, например
object fixed_points...
65 просмотров
schedule
08.04.2022
Понимание типовой проекции
Взято из typelevel/kind-projector , в чем разница между:
// partially-applied type named "IntOrA"
type IntOrA[A] = Either[Int, A]
и
// type projection implementing the same type anonymously (without a name).
({type L[A] = Either[Int,...
112 просмотров
schedule
29.08.2022
Каррирование функции с переменным числом аргументов в JavaScript
Я пытаюсь написать функцию sum , которая принимает любое количество аргументов (с переменным числом аргументов), а также каррируется. Пример использования:
sum(5)(8)(3) // 5 + 8 + 3 = 16
sum(2)(1)(1)(5)(3)(2)...
56 просмотров
schedule
11.12.2022
Взаимозаменяемы ли в Haskell концепции частичного применения и каррирования?
В некоторых функциональных языках частично применяемые функции и каррированные функции - это две похожие, но разные концепции.
Читая книгу Learn You a Haskell for Good Good , автор, похоже, применяет эти взаимозаменяемо.
[Каррированные...
311 просмотров
schedule
28.04.2024
Есть ли хороший способ частично связать параметры класса в Python?
Вот что я делаю сейчас:
@memoized
def reversed_matching(matching_cls):
class ReversedMatching(ReversedSequenceMatching):
def __init__(self, *args, **kwargs):
super().__init__(matching_cls, *args, **kwargs)
return...
1059 просмотров
schedule
21.12.2022
Невозможно понять результат вызова функции высокого порядка с не частично примененной функцией в качестве аргумента
У меня есть объявление функции высокого порядка, чтобы дважды применить функцию, заданную в качестве аргумента:
twice :: (a -> a) -> a -> a
twice f x = f (f x)
Путаница возникает из-за этого сеанса GHCi:
*Main> let _4 = twice...
116 просмотров
schedule
11.05.2022
Приложение частичной функции Haskell с $
Я новичок в Haskell и смотрю на простой пример использования приложения-функции с $ .
Это кажется простым — он берет функцию и применяет ее к значению.
Так что это имеет смысл:
> (+3) $ 2
5
Это также имеет смысл:
> ($) (+3)...
116 просмотров
schedule
21.12.2022
Частично примененный тип лямбда в Scala с добрым проектором
Рассмотрим следующее определение типа:
trait LiftF[F[_], G[_]] {
def liftF[A](fa: F[A]): G[A]
}
При предоставлении требования для имплицита этого типа в границах контекста (используя плагин Kind Projector) мы должны написать это так:...
258 просмотров
schedule
25.09.2022
Использование бесточечного стиля для частей определения функции
Учитывая эту функцию (кстати, должен ли я сказать, что она определяется по регистрам ? Как я могу ссылаться на функции, определенные таким образом?),
f :: Int -> Int -> Int
f 0 x = x
f x _ = x
Я блуждаю, в чем причина, если она...
43 просмотров
schedule
14.02.2023