Resultados de la búsqueda a petición "haskell"
Lista de cualquier `DataKind` en GADT
Descargo de responsabilidadLos GADT y DataKinds son un territorio inexplorado para mí, por lo que algunas de sus limitaciones y capacidades son desconocidas para mí. La preguntaAsí que estoy escribiendo un AST para un emisor de código ...
Aplicar una lista de funciones en Haskell
Escribí una función que aplica una lista de funciones a un elemento. applyAll :: [a -> b] -> a -> [b] applyAll [] _ = [] applyAll (f:fs) x = (f x) : (applyAll fs x)Hay una mejor manera de hacerlo?
¿Cómo definir una función en ghci a través de múltiples líneas?
Estoy tratando de definir cualquier función simple que abarque varias líneas en ghci, tome lo siguiente como ejemplo: let abs n | n >= 0 = n | otherwise = -nHasta ahora he intentado presionar Enter después de la primera línea: Prelude> let abs ...
Instalar paquetes Haskell usando cabal sin conexión a internet
Tengo una máquina que no tiene acceso a Internet en absoluto. Instalé la plataforma Haskell usando el instalador que obtuve de otra máquina a través de un pendrive. Ahora quiero instalar el paqueterepa en la máquina de mi casa que no ...
Dado que "doblar" no es lo suficientemente potente como para escribir una bonita impresora de árbol con sangría, ¿qué combinador de alto orden es?
Dado, por ejemplo, el siguiente tipo de datos de árbol: data Tree a = Node [Tree a] | Leaf a deriving Show type Sexp = Tree String¿Cómo expreso una función "bonita" usando un combinador de alto orden, que imprime el árbol con la sangría ...
¿Hay, en Haskell, algo similar a los sub-guardias?
Estoy escribiendo un programa sobre la clasificación de intervalos musicales. La estructura conceptual es bastante complicada y la representaría lo más claramente posible. Las primeras líneas de código son un pequeño extracto que funciona ...
Haskell: restricciones predeterminadas para escribir
Considere este ejemplo: applyKTimes :: Integral i => i -> (a -> a) -> a -> a applyKTimes 0 _ x = x applyKTimes k f x = applyKTimes (k-1) f (f x) applyThrice :: (a -> a) -> a -> a applyThrice = applyKTimes 3los3 enapplyThrice es predeterminado ...
Breadth-First Search usando mónada estatal en Haskell
Recientemente, hice una pregunta para construir un árbol DFS desde Graph en Stackoverflow y aprendí que puede implementarse simplemente usando State Monad. DFS en ...
Depuración de E / S en un módulo de paquete dentro de GHCi
Estoy haciendo IO de bajo nivel (para enlaces de biblioteca) en Haskell y estoy experimentando una falla de seguridad. Me gustaría usar GHCi's:roturapara averiguar qué está pasando, pero esto es lo que sucede: > import SDL > :break ...
Inferencia de tipos con GADT: a0 es intocable
Digamos que tengo este programa {-# LANGUAGE GADTs #-} data My a where A :: Int -> My Int B :: Char -> My Char main :: IO () main = do let x = undefined :: My a case x of A v -> print v -- print xCompila bien. Pero cuando comento en elprint x, ...