Resultados da pesquisa a pedido "haskell"

2 a resposta

Analisando uma matriz com Haskell Aeson

Eu tenho um documento JSON que se parece com: { "series": [[1,2], [2,3], [3,4]] }Eu gostaria de analisar isso em um conjunto de tipos de dados: data Series = Series [DataPoint] data DataPoint = DataPoint Int Int -- x and y Estou tendo muitos ...

3 a resposta

Correspondência de padrões no tipo rank 2

Estou tentando entender por que uma versão desse código é compilada e outra não. {-# LANGUAGE RankNTypes, FlexibleContexts #-} module Foo where import Data.Vector.Generic.Mutable as M import Data.Vector.Generic as V import Control.Monad.ST ...

1 a resposta

Como posso criar um ThreadId, pois sei o número real?

Muitas vezes acontece comigo ao depurar ou brincar no GHCi que eu conheço o realThreadId número (por exemplo, usandoDebug.Trace), mas é tudo o que tenho. O problema é que todas as APIs de encadeamento, comokillThread requer umThreadId e não ...

8 a resposta

Por que os efeitos colaterais são modelados como mônadas em Haskell?

Alguém poderia dar algumas dicas sobre por que os cálculos impuros em Haskell são modelados como mônadas? Quero dizer, a mônada é apenas uma interface com 4 operações, então qual foi o motivo para modelar os efeitos colaterais nela?

1 a resposta

Por que reclama Haskell analisar erro na entrada '|' nessa função?

Eu deveria escrever uma pequena função no Haskell, que deve apagar elementos, que estão duas vezes na lista. Infelizmente, Haskell reclama "erro de análise na entrada` | ' " Alguém poderia me ajudar com isso? makeSets=mSet[]s where mSet stack ...

3 a resposta

O que acontece com os threads filhos quando seus pais morrem no GHC Haskell?

A documentação paraforkIO diz GHC note: the new thread inherits the masked state of the parent (see mask). The newly created thread has an exception handler that discards the exceptions BlockedIndefinitelyOnMVar, BlockedIndefinitelyOnSTM, and ...

1 a resposta

Ordem de ações de E / S incorreta usando putStr e getLine

Eu tenho o seguinte código: main = do putStr "Test input : " content <- getLine putStrLn contentQuando eu o executo (comrunhaskell) ou compilá-lo (ghc 6.10.4), o resultado é o seguinte: asd Test input : asdPorque éTest input : asd sendo ...

1 a resposta

Por que você não pode (totalmente) aplicar um sinônimo de tipo que possui argumentos usando outro sinônimo de tipo?

Podemos definir sinônimos de tipo com argumentos e isso funciona bem quando usado com tipos reais: type MyType t = t String String data Test a b = Test a b f :: MyType Test f = undefined main = undefinedCompilar isso resulta em nenhum ...

3 a resposta

Desvantagem de produtos do tipo não-desviados?

Em Haskell, produtos do tipo levantado significam que há uma diferença semântica entre (a, b, c) e (a, (b, c)). Se todas as correspondências de padrões de todos os produtos sempre fossem irrefutáveis, não haveria diferença e (a, b, c) poderia ...

2 a resposta

ruby while loop traduzido para haskell

Eu apenas comecei a aprender um pouco de Haskell e programação funcional, mas acho muito difícil entender isso :) Estou tentando traduzir um pequeno pedaço derubi [https://www.ruby-lang.org/en/] código para Haskell (porque eu gosto do conceito ...