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

2 la respuesta

Plegado, composición de funciones, mónadas y pereza, ¿oh, mi?

Estoy confundido. Puedo escribir esto: import Control.Monad main = print $ head $ (foldr (.) id [f, g]) [3] where f = (1:) g = undefinedy la salida es1. Eso tiene sentido, porque se reduce a: main = print $ head $ ((1:) . undefined . id) [3] ...

16 la respuesta

A diferencia de un Functor, ¿una mónada puede cambiar de forma?

Siempre me ha gustado la siguiente explicación intuitiva del poder de una mónada en relación con un functor: una mónada puede cambiar de forma; un functor no puede. Por ejemplo:length $ fmap f [1,2,3] siempre es igual a3. Con una mónada, sin ...

16 la respuesta

Cómo extraer valor de la acción monádica

¿Hay una función incorporada con firma:: (Monad m) => m a -> a ? Hoogle dice que no existe tal función. ¿Puedes explicar porque

4 la respuesta

Permutaciones de una lista - Haskell

Quiero hacer todas las combinaciones posibles de subgrupos con 2 listas. Aquí hay una función que hace exactamente esto: getCombinations :: [a] -> [[a]] getCombinations na = do a <- na b <- na [[a,b]] Si pasa "abc" a esta función, devuelve ...

0 la respuesta

Haskell: ¿no puede usar "map putStrLn"?

Tengo una lista de cadenas y probé esto: ls = [ "banana", "mango", "orange" ] main = do map PutStrLn list_of_strings Eso no funcionó, y no puedo entender por qué. ghc print-list.hs print-list.hs:3:0: Couldn't match expected type `IO t' ...

2 la respuesta

Cuáles son todas las convenciones de nombres de mónadas?

arece que Haskell ha establecido varias convenciones de nombres en torno a las mónadas. Ejemplos: appendingT hasta el final para obtener el nombre del transformador de mónada (por ejemplo,Reader ->ReaderT)utilizandorunXXX para realizar un ...

2 la respuesta

Definición de nuevas palabras clave en la expresión de cálculo de F #

La versión beta de F # 3.0 contiene unaconsulta { [http://msdn.microsoft.com/en-us/library/hh225374%28v=vs.110%29.aspx] expresión de cálculo con toneladas de palabras clave nuevas. ¿Cómo puedo definir mis propias palabras clave en un generador ...

12 la respuesta

Implementando la Mónada de Haskell en c ++ 11

Estoy tratando de implementar la mónada Quizás de Haskell usando las funciones lambda en C ++ 11 y plantillas. Esto es lo que tengo hasta ahora #include<functional> #include<iostream> using namespace std; template<typename T1> struct Maybe { T1 ...

6 la respuesta

Euler 43: ¿hay una mónada para ayudar a escribir esta lista de comprensión?

Aquí hay una manera de resolver el problema 43 de Euler (avíseme si esto no da la respuesta correcta). ¿Existe una mónada o algún otro azúcar sintético que pueda ayudar a realizar un seguimiento de lanotElem condiciones? toNum xs = foldl (\s d ...