Perguntas com a marcação «functional-programming»

A programação funcional é um paradigma de programação baseado na construção de abstrações usando funções, evitando efeitos colaterais e mudança de estado. A programação funcional pura é segura para threads.

16
Guia para iniciantes em Haskell? [fechadas]
Atualmente, essa questão não se encaixa no nosso formato de perguntas e respostas. Esperamos que as respostas sejam apoiadas por fatos, referências ou conhecimentos, mas essa pergunta provavelmente solicitará debates, argumentos, pesquisas ou discussões prolongadas. Se você acha que essa pergunta pode ser melhorada e possivelmente reaberta, visite o centro …

4
Diferença entre dobrar e reduzir?
Tentando aprender F #, mas fiquei confuso ao tentar distinguir entre fold e reduzir . Fold parece fazer a mesma coisa, mas requer um parâmetro extra. Existe uma razão legítima para essas duas funções existirem ou elas existem para acomodar pessoas com diferentes origens? (Por exemplo: String e string em …


10
Isso é uma função pura?
A maioria das fontes define uma função pura como tendo as duas propriedades a seguir: Seu valor de retorno é o mesmo para os mesmos argumentos. Sua avaliação não tem efeitos colaterais. É a primeira condição que me preocupa. Na maioria dos casos, é fácil julgar. Considere as seguintes funções …


9
Compreender verdadeiramente a diferença entre processual e funcional
Estou realmente tendo dificuldade em entender a diferença entre os paradigmas de programação procedural e funcional . Aqui estão os dois primeiros parágrafos da entrada da Wikipedia sobre programação funcional : Na ciência da computação, a programação funcional é um paradigma de programação que trata a computação como a avaliação …

1
Compreendendo porque Zipper é um Comonad
Esta é uma continuação da resposta à minha pergunta anterior. Suponha que eu precise mapear cada item a:Ade List[A]para b:Bcom função def f(a:A, leftNeighbors:List[A]): Be gerar List[B]. Obviamente, não posso apenas chamar mapa lista, mas posso usar o zíper da lista . O zíper é um cursor para mover em …

30
Produto cartesiano de vários arrays em JavaScript
На этот вопрос есть ответы на Stack Overflow на русском : Декартово произведение нескольких массивов Como você implementaria o produto cartesiano de vários arrays em JavaScript? Como um exemplo, cartesian([1, 2], [10, 20], [100, 200, 300]) deveria retornar [ [1, 10, 100], [1, 10, 200], [1, 10, 300], [2, 10, …


17
Qual é o problema com Haskell? [fechadas]
Como está atualmente, esta pergunta não se encaixa em nosso formato de perguntas e respostas. Esperamos que as respostas sejam apoiadas por fatos, referências ou experiência, mas esta pergunta provavelmente irá solicitar debate, argumentos, pesquisas ou discussão extensa. Se você acha que esta questão pode ser melhorada e possivelmente reaberta, …


5
Padrões de design funcional [fechado]
Fechadas. Esta pergunta não atende às diretrizes do Stack Overflow . Atualmente não está aceitando respostas. Quer melhorar esta questão? Atualize a pergunta para que esteja no tópico do Stack Overflow. Fechado há 4 anos . Melhore esta questão Existem muitos idiomas funcionais: mônadas, aplicativos, setas, etc. Eles são documentados …

6
Qual é o equivalente ES6 de Python 'enumerar' para uma sequência?
Python tem uma função embutidaenumerate , para obter um iterável de (index, item)pares. O ES6 tem um equivalente para um array? O que é isso? def elements_with_index(elements): modified_elements = [] for i, element in enumerate(elements): modified_elements.append("%d:%s" % (i, element)) return modified_elements print(elements_with_index(["a","b"])) #['0:a', '1:b'] ES6 equivalente sem enumerate: function elements_with_index(elements){ …


4
Como classificar uma lista no Scala por dois campos?
como classificar uma lista no Scala por dois campos, neste exemplo irei classificar por lastName e firstName? case class Row(var firstName: String, var lastName: String, var city: String) var rows = List(new Row("Oscar", "Wilde", "London"), new Row("Otto", "Swift", "Berlin"), new Row("Carl", "Swift", "Paris"), new Row("Hans", "Swift", "Dublin"), new Row("Hugo", "Swift", …

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.