Tendo examinado brevemente Haskell recentemente, qual seria uma explicação breve, sucinta e prática sobre o que é essencialmente uma mônada? Descobri que a maioria das explicações que encontrei é bastante inacessível e carece de detalhes
Haskell é uma linguagem de programação funcional com forte digitação estática, avaliação lenta, amplo suporte a paralelismo e simultaneidade e recursos exclusivos de abstração.
Tendo examinado brevemente Haskell recentemente, qual seria uma explicação breve, sucinta e prática sobre o que é essencialmente uma mônada? Descobri que a maioria das explicações que encontrei é bastante inacessível e carece de detalhes
Eu juro que costumava haver uma T-shirt para a venda caracteriza as palavras imortais: Que parte de você não entende? No meu caso, a resposta seria ... tudo! Em particular, muitas vezes vejo notações como essa nos artigos de Haskell, mas não tenho idéia do que isso significa. Não tenho...
As respostas desta pergunta são um esforço da comunidade . Edite as respostas existentes para melhorar esta postagem. No momento, não está aceitando novas respostas ou interações. Por alguns dias, tentei entender o paradigma de programação funcional em Haskell. Eu...
Quem primeiro disse o seguinte? Uma mônada é apenas um monóide na categoria de endofunitores, qual é o problema? E, em uma nota menos importante, isso é verdade e, em caso afirmativo, você poderia dar uma explicação (espero que possa ser entendida por alguém que não tenha muita experiência com...
Qual é a diferença entre o ponto (.)e o cifrão ($)? Pelo que entendi, ambos são açúcares sintáticos por não precisarem usar
Peguei o Problema 12 do Project Euler como um exercício de programação e comparei minhas (certamente não ótimas) implementações em C, Python, Erlang e Haskell. Para obter tempos de execução mais altos, procuro o primeiro número do triângulo com mais de 1000 divisores em vez de 500, conforme...
Devo admitir que não sei muito sobre programação funcional. Eu li sobre isso daqui e dali e, assim, soube que na programação funcional, uma função retorna a mesma saída, para a mesma entrada, não importa quantas vezes a função seja chamada. É exatamente como uma função matemática que avalia a mesma...
Fechado . Esta questão precisa ser mais focada . No momento, não está aceitando respostas. Fechado há 3 anos . Bloqueado . Esta pergunta e suas respostas estão bloqueadas porque a questão está fora do tópico, mas tem um significado histórico. No momento, não...
Fechado . Esta questão é baseada em opiniões . No momento, não está aceitando respostas. Deseja melhorar esta pergunta? Atualize a pergunta para que ela possa ser respondida com fatos e citações editando esta postagem . Fechado há 6 anos . Existe...
Fechado . Esta questão é baseada em opiniões . No momento, não está aceitando respostas. Deseja melhorar esta pergunta? Atualize a pergunta para que ela possa ser respondida com fatos e citações editando esta postagem . Fechado há 2 anos .
Dos documentos para o GHC 7.6: Em geral, você nem precisa do pragma SPECIALIZE. Ao compilar um módulo M, o otimizador do GHC (com -O) considera automaticamente cada função de sobrecarga de nível superior declarada em M e a especializa para os diferentes tipos em que é chamado em M. O otimizador...
Eu vi o termo gratuito Mônada pop up a cada agora e , em seguida, por algum tempo, mas todo mundo só parece usar / discuti-los sem dar uma explicação sobre o que são. Então: o que são mônadas gratuitas? (Eu diria que estou familiarizado com as mônadas e os conceitos básicos de Haskell, mas tenho...
Na minha humilde opinião, as respostas à famosa pergunta "O que é uma mônada?" , especialmente os mais votados, tente explicar o que é uma mônada sem explicar claramente por que as mônadas são realmente necessárias . Eles podem ser explicados como a solução para um
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...
Já ouvi o termo "coalgebras" várias vezes na programação funcional e nos círculos PLT, especialmente quando a discussão é sobre objetos, comonadas, lentes e outros. Pesquisando esse termo, páginas trazem descrições matemáticas dessas estruturas, que são praticamente incompreensíveis para mim....
Aqui está o cenário: escrevi algum código com uma assinatura de tipo e as queixas do GHC não puderam deduzir x ~ y para alguns xe y. Geralmente, você pode jogar um osso no GHC e simplesmente adicionar o isomorfismo às restrições da função, mas essa é uma má idéia por vários motivos: Não enfatiza...
Estou começando a entender como a forallpalavra-chave é usada nos chamados "tipos existenciais" como este: data ShowBox = forall s. Show s => SB s Este é apenas um subconjunto, no entanto, de como forallé usado e eu simplesmente não consigo entender meu uso em coisas como esta: runST ::...
O que significa o formulário normal de cabeça fraca (WHNF)? O que significa Forma Normal da Cabeça (HNF) e Forma Normal (NF)? O mundo real Haskell afirma: A função seq familiar avalia uma expressão para o que chamamos de forma normal da cabeça (HNF abreviado). Ele para quando atinge o...
A expressão 'algébrica' para tipos de dados algébricos parece muito sugestiva para alguém com experiência em matemática. Deixe-me tentar explicar o que quero dizer. Tendo definido os tipos básicos produtos • União + Singleton X Unidade 1 e usando a abreviação X²de X•Xe 2Xpara X+Xet cetera,...
Quero estudar FRP em Haskell, mas é um pouco difícil decidir sobre uma biblioteca a ser usada. Muitos parecem tentativas mortas, alguns parecem ter ressuscitado (como atividades recentes em Yampa). Pelo que li, parece que existem dois "tipos" de FRP: FRP push-pull (como em banana reativa) de um...