Resultados da pesquisa a pedido "ghc"
Como detectar se um programa foi compilado usando -threaded?
Estou trabalhando em um daemon Haskell que usa fork / exec POSIX junto com o mecanismo de bloqueio de arquivos. Minhas experiências mostram que os bloqueios de arquivo não são herdados duranteexecuteFile com-threaded tempo de execução (consulte ...
O código fica mais lento à medida que mais matrizes em caixa são alocadas
Editar: Acontece que as coisas geralmente (e não apenas operações de matriz / ref) diminuem a velocidade de criação de mais matrizes, então acho que isso pode estar medindo o tempo de GC aumentado e pode não ser tão estranho quanto eu pensava. ...
Captura da exceção Control-C no GHC (Haskell)
Criei um loop de leitura-avaliação-impressão realmente simples no Haskell que captura o Control-C (UserInterrupt). No entanto, sempre que eu compilar e executar esse programa, ele sempre pega o primeiro Control-C e sempre aborta no segundo ...
Técnicas para rastrear restrições
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 algunsx ey. Geralmente, você pode jogar um osso no GHC e simplesmente adicionar o isomorfismo às restrições da função, mas ...
Por que não existem variáveis de tipo quantificadas existencialmente no GHC Haskell
Existem variáveis de tipo quantificadas universalmente e existem tipos de dados quantificados existencialmente. No entanto, apesar de as pessoas fornecerem pseudocódigo da formaexists a. Int -> a para ajudar a explicar conceitos, às vezes, não ...
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 ...
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 ...
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 ...
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 ...
Várias dobras em uma passagem usando a função tupla genérica
Como escrever uma função que utiliza uma tupla de funções do tipoai -> b -> ai e retorna uma função que utiliza uma tupla de elementos do tipoai, um elemento do tipobe combina cada um dos elementos em uma nova tupla deai: Essa é a assinatura ...