haskell clojure currying

haskell - ¿La razón de Rich Hickey para no aplicar automáticamente las funciones de Clojure?



currying (1)

Como las funciones pueden tener múltiples aridades, podría tener una llamada de función directa en lugar de una función de curry. A continuación, si en el caso de que solo tenga una aridad y pierda un argumento, no se detectará un error de aridad y en su lugar generará una función de curry. Un caso muy malo y difícil de depurar, especialmente si la función devuelve una función con la misma aridad solicitada, o si la función se pasa como un argumento a otra función.

Así que específicamente la creación de una función de curry parece legítima.

Haskell curry sus funciones. No obstante, Clojure no permite macros partial y funcionales como un enfoque comparable para hacer lo mismo.

Pensé que recordaba haber oído / leído la razón detrás de la decisión de Hickey. ¿Alguien recuerda cuál fue esa razón o dónde podría encontrarla?

Esperaba aprender algo del razonamiento.