Resultados da pesquisa a pedido "monads"

1 a resposta

Efeitos Scala Cats - IO Async Shift - Como funciona?

Aqui estão alguns códigos de gatos Scala usando oIO Monad [https://github.com/typelevel/cats-effect]: import java.util.concurrent.{ExecutorService, Executors} import cats.effect.IO import scala.concurrent.{ExecutionContext, ...

2 a resposta

Combinar estado com ações de E / S

Suponha que eu tenha uma mônada de estado como: data Registers = Reg {...} data ST = ST {registers :: Registers, memory :: Array Int Int} newtype Op a = Op {runOp :: ST -> (ST, a)} instance Monad Op where return a = Op $ \st -> (st, a) (>>=) stf ...

2 a resposta

Haskell - profundidade para cada nó na árvore binária usando a mônada do Reader

Eu escrevi o seguinte código. Está trabalhando e usando oReader mônada. Você poderia me dar algumas dicas sobre o estilo de código em Haskell? Principalmente, quero dizer mônadas - sou novato. import Control.Monad.Reader data Tree a = Node a ...

3 a resposta

Por que as exceções do Haskell podem ser capturadas apenas dentro da mônada de E / S?

Alguém pode explicar por que exceções podem ser lançadas fora da mônada IO, mas só podem ser capturadas dentro dela?

2 a resposta

Mônadas vs. Setas

Eu estou amplamente familiarizado com os conceitos demônadas [http://en.wikipedia.org/wiki/Monads_in_functional_programming]eSetas; flechas [http://en.wikipedia.org/wiki/Arrows_in_functional_programming]como usado na programação funcional. Eu ...

7 a resposta

Funções que parecem puras para os chamadores, mas usam mutação internamente

Acabei de receber minha cópia doExpert F # 2.0 e me deparei com essa afirmação, que me surpreendeu um pouco: Por exemplo, quando necessário, você pode usar efeitos colaterais em estruturas de dados privadas alocadas no início de um algoritmo e ...

4 a resposta

Converta uma notação "do" com mais de duas ações para usar a função de ligação

Eu sei que a seguinte função "bind" da notação "do" é equivalente agetLine >>= \line -> putStrLn do line <- getLine putStrLn lineMas como a notação a seguir é equivalente à função bind? do line1 <- getLine putStrLn "enter second line" line2 <- ...

3 a resposta

Monoid vs MonadPlus [duplicado]

Esta pergunta já tem uma resposta aqui: Por que MonadPlus e não Monad + Monoid? [/questions/23023961/why-monadplus-and-not-monad-monoid] 2 respostas Sou muito novo para ambosMonads eMonoids e recentemente também aprendi sobreMonadPlus. Pelo que ...

2 a resposta

Como usar (->) instâncias do Mônada e confusão sobre (->)

Em perguntas diferentes, encontrei dicas nos comentários sobre o uso do(->) instância de Mônadas, p. para obter um estilo sem pontos. Quanto a mim, isso é um pouco abstrato demais. Ok, já vi instâncias de Arrow em(->) e me parece que(->) pode ...

3 a resposta

Diferença entre Estado, ST, IORef e MVar

Estou trabalhando noEscreva um esquema em 48 horas [http://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours] (Tenho cerca de 85 horas) e cheguei à parte sobre Adicionando variáveis e ...