Logo Passei Direto
Buscar
Explique o conceito de currying na programação funcional e forneça um exemplo prático.


A) Divisão de funções em partes menores; ex.: dividir uma lista em subconjuntos.
B) Transformação de funções com múltiplos argumentos em cadeias de funções com um único argumento; ex.: soma(x)(y).
C) Troca de argumentos em uma função; ex.: inverter a ordem de elementos em uma lista.
D) Agrupamento de funções relacionadas em um único módulo; ex.: encapsular operações matemáticas.
User badge image

Enviado por extraindoquestoes_dev_tst+673685 ano passado

Respostas

User badge image

Ed Inteligência Artificial do Passei Direto Verified user icon

ano passado

O currying é um conceito da programação funcional que consiste em transformar uma função que recebe múltiplos argumentos em uma sequência de funções que recebem apenas um argumento cada. Dessa forma, ao invés de passar todos os argumentos de uma vez, a função é chamada várias vezes, uma para cada argumento. Isso permite uma maior flexibilidade e reutilização de código. Um exemplo prático seria a função de soma em JavaScript: ``` function soma(x) { return function(y) { return x + y; } } const soma2 = soma(2); // retorna uma função que soma 2 a um número console.log(soma2(3)); // retorna 5 console.log(soma2(5)); // retorna 7 ``` Nesse exemplo, a função `soma` recebe um argumento `x` e retorna uma nova função que recebe um argumento `y` e retorna a soma de `x` e `y`. Ao chamar `soma(2)`, é retornado uma nova função que soma 2 a um número. Essa nova função pode ser armazenada em uma variável, como `soma2`, e ser chamada várias vezes com diferentes argumentos.

Essa resposta te ajudou?

0
Dislike0
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar essa resposta. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

User badge image

dev-test-question-api@mail.com

há 6 meses

NsBM48Nl4kgKw5GeFcsNsVkPvo7CUeVX0ERpGYUCnUtXfPWjwv75LyBOI4piY0

Essa resposta te ajudou?

0
Dislike0

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Essa pergunta também está no material:

Mais perguntas desse material