Perguntas com a marcação «monads»

Uma mônada em programação é uma descrição de computação combinável. Mônadas são uma construção importante em linguagens de programação funcionais como Haskell.

5
O que é mônada indexada?
O que é mônada indexada e a motivação para essa mônada? Eu li que ajuda a controlar os efeitos colaterais. Mas a assinatura do tipo e a documentação não me levam a lugar nenhum. Qual seria um exemplo de como pode ajudar a controlar os efeitos colaterais (ou qualquer outro …
98 haskell  monads 

3
Como jogar com Control.Monad.Writer em haskell?
Eu sou novo em programação funcional e recentemente aprendi em Learn You a Haskell , mas quando li este capítulo , fiquei preso no programa abaixo: import Control.Monad.Writer logNumber :: Int -> Writer [String] Int logNumber x = Writer (x, ["Got number: " ++ show x]) multWithLog :: Writer [String] …
96 haskell  monads 

3
mtl, transformers, monads-fd, monadLib e o paradoxo da escolha
O Hackage tem vários pacotes para transformadores monad: mtl : Biblioteca do transformador Monad transformadores : functor de concreto e transformadores monad monads-fd : classes Monad, usando dependências funcionais monads-tf : classes Monad, usando famílias de tipo monadLib : uma coleção de transformadores monad. mtl-tf : Biblioteca de transformadores Monad …

3
Diferença entre Estado, ST, IORef e MVar
Estou trabalhando em Escreva para você mesmo um esquema em 48 horas (até cerca de 85 horas) e cheguei à parte sobre como adicionar variáveis ​​e atribuições . Há um grande salto conceitual neste capítulo, e eu gostaria que tivesse sido feito em duas etapas, com uma boa refatoração no …

5
Confuso com a compreensão da transformação flatMap / Map
Eu realmente não pareço estar entendendo Map e FlatMap. O que não consigo entender é como uma compreensão para é uma sequência de chamadas aninhadas para map e flatMap. O exemplo a seguir é de Functional Programming in Scala def bothMatch(pat:String,pat2:String,s:String):Option[Boolean] = for { f <- mkMatcher(pat) g <- mkMatcher(pat2) …


2
Estados aninhados em Haskell
Estou tentando definir uma família de máquinas de estado com tipos um pouco diferentes de estados. Em particular, as máquinas de estados mais "complexas" possuem estados formados pela combinação dos estados de máquinas de estados mais simples. (É semelhante a uma configuração orientada a objetos, na qual um objeto possui …




1
Haskell - instância automática de Mônada
Estou tentando criar meu próprio tipo de dados, que fará parte da classe Monad, mas newtype Container a = Container a deriving Monad me dá este erro: * Can't make a derived instance of `Monad Container' (even with cunning GeneralizedNewtypeDeriving): cannot eta-reduce the representation type enough * In the newtype …


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.