Haskell łączy swoje funkcje. Clojure nie pozwala jednak na makra funkcyjne jako porównywalne podejście do robienia tego samego.Dlaczego Rich Hickey nie obsługuje automatycznie funkcji Clojure?
Wydaje mi się, że przypomniałem sobie o przesłuchaniu/odczytaniu przyczyny decyzji Hickeya. Czy ktoś przypomina sobie, czym był ten powód lub gdzie mogłem go znaleźć?
Miałem nadzieję, że dowiem się czegoś z uzasadnienia.
Zakładam, że przynajmniej część przyczyny jest taka, że Clojure nie jest w 100% leniwy i aplikacja nie może zostać odroczona. –
Twoje pierwsze zdanie nie jest dokładne. Haskell curry * wszystkie * funkcje, bez względu na liczbę dostarczonych argumentów. W rzeczywistości wszystkie funkcje Haskell pobierają jedno wejście i zwracają jedno wyjście. https://wiki.haskell.org/Currying https://wiki.haskell.org/Composing_functions_with_multiple_values. W Haskell funkcja ** uncurry ** w rzeczywistości nie jest nieprzewidywalna; zamiast tego zajmuje pierwsze dwie funkcje w łańcuchu i składa je w jedną funkcję, która pobiera ** parę ** jako pojedyncze wejście. – itsbruce
hołd złożony Haskell Curry. – rem