Resultados de la búsqueda a petición "haskell"

4 la respuesta

¿Cómo anotan los compiladores puramente funcionales el AST con información de tipo?

En la fase de análisis de sintaxis, un compilador imperativo puede construir un AST a partir de nodos que ya contienen untype campo que se establece ennull durante la construcción, y luego, en la fase de análisis semántico, complete los tipos ...

2 la respuesta

Convertir String a Int comprobando el desbordamiento

Cuando intenté convertir un entero muy largo aInt, Me sorprendió que no se arrojara ningún error: Prelude> read "123456789012345678901234567890" :: Int -4362896299872285998 readMaybe deText.Read El módulo da el mismo resultado. Dos ...

3 la respuesta

Límite de tamaño de la tupla de Haskell

¿Por qué no puedo construir grandes tuplas en Haskell? ¿Por qué hay un límite de tamaño de tupla? Prelude> (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) <interactive>:1:0: No instance for (Show (t, t1, t2, ... t23)) arising from a use of ...

2 la respuesta

¿Cómo mejorar el rendimiento de este cálculo numérico en Haskell?

Estoy en el medio de portar el original de David BleiImplementación C [http://www.cs.princeton.edu/~blei/lda-c/index.html]de asignación de Dirichlet latente a Haskell, y estoy tratando de decidir si dejar algunas de las cosas de bajo nivel en C. ...

1 la respuesta

¿Puedo asegurarme de que Haskell realice una IO atómica?

Tengo dos hilos en Haskell que realizan IO. (Solo imprimen). Algo como lo siguiente: thread1 :: IO () thread1 = putStrLn "One" thread2 :: IO () thread2 = putStrLn "Two"Actualmente estoy obteniendo resultados como los siguientes: OnTwoe ...

2 la respuesta

Listas de literales de longitud fija y tipo

Estoy tratando de definir un tipo para listas de longitud fija en Haskell. Cuando uso la forma estándar de codificar números naturales como tipos en unario, todo funciona bien. Sin embargo, cuando trato de construir todo en los literales de tipo ...

7 la respuesta

Haskell I / O perezosa y archivos de cierre

He escrito un pequeño programa Haskell para imprimir las sumas de verificación MD5 de todos los archivos en el directorio actual (buscado de forma recursiva). Básicamente una versión de Haskell demd5deep. Todo está bien, excepto si el directorio ...

3 la respuesta

Problema con entrada incompleta cuando se usa Attoparsec

Estoy convirtiendo un código funcional de Haskell que usa Parsec para usar Attoparsec con la esperanza de obtener un mejor rendimiento. He realizado los cambios y todo se compila, pero mi analizador no funciona correctamente. Estoy analizando un ...

3 la respuesta

¿Debo implementar Applicative y Functor para implementar una mónada?

Estoy tratando de implementar una instancia de Monad. Como ejemplo más simple, suponga lo siguiente: data Maybee a = Notheeng | Juust a instance Monad Maybee where return x = Juust x Notheeng >>= f = Notheeng Juust x >>= f = f x fail _ = ...

3 la respuesta

¿Por qué Haskell no acepta mi definición combinatoria de "zip"?

Esta es la función zip del libro de texto: zip :: [a] -> [a] -> [(a,a)] zip [] _ = [] zip _ [] = [] zip (x:xs) (y:ys) = (x,y) : zip xs ysPregunté en #haskell antes si "zip" podría implementarse usando "foldr" solo, sin recurrencia, sin ...