Para mí, un Cierre es una función (anidada?) Con datos coubicados.Cierres (en Haskell)
Cuando escribe software en Haskell y lo revisa después, con frecuencia encuentra cierres que ha creado involuntariamente.
No entiendo bien esto por mí mismo. ¿En qué situaciones intencionalmente querría programar cierres? Después de todo, en todos los ejemplos encuentro que la cantidad de datos coubicados es trivial/pequeña y por lo tanto no me parece que en la práctica justifique su creación (intencional). ¿Hay algún módulo de Haskell que me apoye en la creación intencional de cierres y p. almacenándolos en un mapa?
Pregunta interesante ... ¿Qué quiere decir exactamente por cierres creados involuntariamente? –
@Jonathan Sterling principalmente cuando crea funciones anidadas. Por lo general, cumplen los criterios para llamarse "cierre" –
, ya que dflemstr señala que está creando "cierres" todo el tiempo. Esto ni siquiera es un concepto que vale la pena tener un nombre en Haskell. ¿Entiende el currying y la aplicación parcial, y cómo la firma de tipo 'Int -> Int -> Int 'es equivalente a' Int -> (Int -> Int)'? – jberryman