каррировании работает, разве нет?
Да, частичное применение для каррированных функций и делается
если я каррирую ф-ции, разве это не означает, что все мои ф-ции являются: - или ф-циями от одного аргумента - или композицией таких ф-ций а для частичного применения мне совсем не обязательно всё сводить к композиции ф-ций от одного аргумента ??
я вот это имею в виду: // тут я каррирования не делал let noCurry a b c = printfn $"%d{a + b}" printfn $"%d{a + c}" // а тут я каррирование сделал let p a = printfn $"%d{a}" let s a b = (+) a b let sp a b = s a b |> p let curry a b c = sp a b; sp a c // s a b |> p; s a c |> p https://sharplab.io/#v2:DYLgZgzgNALiBOBXAdlAJiA1AHwPS4AJAhEEGEQIgweRADAuEEAYQQARB7AOEHsD4QQJhBbBeECaq8FYQAoBYQfoG4QWqICwAKGABTGAWQB7AMKJ48AJ4EAhgQBGBAMYyC5ggF4CAB3gBLZDDDICAEgBEAUjQBvfZiGAL4eZhbmdo7Orp4+/gSBxiEyMvgEtMRklDQMzGycPIKAgiAi4lKyCrbm+ubWkU4u7t5+uskVihDVhlYEABSYAJR6hjLyHTbDRtad+kbYAHy2o5XGGtqTJmG1BBATswDcO3ub0hZpM90LtocXxgRXNkA==
наверное правильнее будет спросить как называется и та и та хрень (применённая в noCurry и curry)
let noCurry a b c = Это каррированая функция. В фшарпе, функции автоматом каррированные. И да, каррированная - это от одного аргумента, возвращающая новую функцию от одного аргумента
да понимаю я, что в фарше все ф-ции "из коробки каррированные", только толку мне от этого, если "в коробку мне залезть" вот я и "переопределяю" каррирование как "явное каррирование, сделаное кодером" :)
Обсуждают сегодня