Preguntas etiquetadas con haskell

73
Consejos para jugar al golf en Haskell

¿Qué consejos generales tienes para jugar al golf en Haskell? Estoy buscando ideas que puedan aplicarse a los problemas de código de golf en general que sean al menos algo específicos de Haskell. Por favor, publique solo un consejo por respuesta. Si eres nuevo en el golf en Haskell, echa un...

55
Sintaxis sin azúcar

En Haskell la notación de la lista: [a,b,c] Es solo azúcar sintáctico para: a:b:c:[] Y la notación de cadena: "abc" Es solo azúcar sintáctico para: ['a','b','c'] Esto significa que la cadena: "abc" Es lo mismo que: 'a':'b':'c':[] Tarea Dada una cadena, debe mostrar cómo se vería...

37
Espera, ¿qué idioma es este?

Recientemente tuve el placer de escribir un programa Haskell que podía detectar si la NegativeLiteralsextensión estaba activada. Se me ocurrió lo siguiente: data B=B{u::Integer} instance Num B where{fromInteger=B;negate _=B 1} main=print$1==u(-1) Pruébalo en línea! Esto se imprimirá...

21
Hagamos Diet Haskell

Haskell tiene tuplas que se pueden escribir como (a,b,c) Sin embargo, esto es solo azúcar sintáctico para (,,)a b c En general, se puede formar una n tupla con n-1 , s entre (... )seguido de sus elementos separados por espacios. Por ejemplo, la 7-tupla, (1,2,3,4,5,6,7)puede estar formada...

13
Recupera la prima del primer poder

Definición : una potencia prima es un número natural que se puede expresar en la forma p n donde p es un número primo yn es un número natural. Tarea : Dada una potencia principal p n > 1, devuelve la potencia principal p. Casos de prueba : input output 9 3 16 2 343 7 2687 2687 59049...

10
Code-Golf: secuencia de la Farey (I)

Desafío En esta tarea, se le dará un número entero N (menos de 10 ^ 5), generará la secuencia de Farey de orden N. La entrada N se da en una sola línea, las entradas son terminadas por EOF. Entrada 4 3 1 2 Salida F4 = {0/1, 1/4, 1/3, 1/2, 2/3, 3/4, 1/1} F3 = {0/1, 1/3, 1/2, 2/3, 1/1} F1 =...

9
Aritmética interpretada

Un hecho poco conocido es que si activa suficientes extensiones de idioma (ghc), ¡Haskell se convierte en un lenguaje interpretado de tipo dinámico! Por ejemplo, el siguiente programa implementa la suma. {-# Language MultiParamTypeClasses, FunctionalDependencies, FlexibleInstances,...