Duplicar posible:
Currying subtraction¿Cuál es el equivalente a (+1) para la resta, ya que (-1) se ve como un número negativo?
empecé mi primer proyecto Haskell que no es de un tutorial, y por supuesto que tropiecen en las cosas más simples.
Tengo el siguiente código:
moveUp y = modifyMVar_ y $ return . (+1)
moveDn y = modifyMVar_ y $ return . (-1)
Me tomó algún tiempo para entender por qué mi código no se compilará: Había utilizado (-1) que es visto como uno negativo. Alterar el signo menos no ayuda, ya que lo antepone y convierte a 1 en su primer parámetro.
En resumen, ¿cuál es la versión gratuita de este punto?
dec :: Num a => a -> a
dec x = x - 1
Ver http://stackoverflow.com/questions/4454559/currying-subtraction –