Tutoriel par Examples: currying



def minus(left: Int, right: Int) = left - right val numberMinus5 = minus(_: Int, 5) val fiveMinusNumber = minus(5, _: Int) numberMinus5(7) // 2 fiveMinusNumber(7) // -2
Définissons une fonction de 2 arguments: def add: (Int, Int) => Int = (x,y) => x + y val three = add(1,2) Le curry add transforme en une fonction qui prend un Int et retourne une fonction (d' un Int à un Int ) val addCurried: (Int) => (Int => Int) = add2.curried // ...
Currying, selon Wikipedia , est la technique de traduction de l'évaluation d'une fonction qui prend plusieurs arguments pour évaluer une séquence de fonctions. Concrètement, en termes de types de scala, dans le contexte d’une fonction qui prend deux arguments, (a arité 2), c’est la conver...
Le curry est la transformation d'une fonction de n arité ou d'arguments en une suite de n fonctions ne prenant qu'un seul argument. Cas d'utilisation: Lorsque les valeurs de certains arguments sont disponibles avant les autres, vous pouvez utiliser le currying pour décomposer une f...
def dividable = { a, b -> a % b == 0 } assert dividable(2, 3) == false assert dividable(4, 2) == true def even = dividable.rcurry(2) // b == 2 assert even(2) == true assert even(3) == false
Dans Haskell, toutes les fonctions sont considérées comme curry: c'est-à-dire que toutes les fonctions de Haskell ne prennent qu'un seul argument. Prenons la fonction div : div :: Int -> Int -> Int Si nous appelons cette fonction avec 6 et 2, nous obtenons sans surprise 3: Prelude&...
Utilisez la fonction curry (de Prelude ou Data.Tuple ) pour convertir une fonction qui prend des tuples en une fonction qui prend deux arguments. curry fst 1 2 -- computes 1 curry snd 1 2 -- computes 2 curry (uncurry f) -- computes the same as f import Data.Tuple (swap) curry swap 1 2 -- ...
Techniquement, Ruby n'a pas de fonctions, mais des méthodes. Cependant, une méthode Ruby se comporte presque de manière identique aux fonctions dans un autre langage: def double(n) n * 2 end Cette méthode / fonction normale prend un paramètre n , le double et renvoie la valeur. Définisson...
Le curry est le processus de transformation d'une fonction qui prend de multiples arguments en une séquence de fonctions dont chacune n'a qu'un seul paramètre. Le curry est lié à, mais pas identique, à une application partielle. Considérons la fonction suivante en JavaScript: var add =...

Page 1 de 1