Size: a a a

2021 January 06

I

IdiocyAcceptance in F# Chat
Если ты про это
источник

g

gsomix in F# Chat
IdiocyAcceptance
Ну так же. Func<b, bool> newFunc = b => OldFunc(10, b)
А вот тут начинают играть роль эффекты.
источник

g

gsomix in F# Chat
Я под вечер плохо изъясняюсь.
источник

I

IdiocyAcceptance in F# Chat
Ну, это сложный вопрос. Мне просто кажется что без наглядного кода сложно объяснить
источник

g

gsomix in F# Chat
Но есть разница между

let foobar a b = a + b

и

let foobar a = 
   printfn "Effect"
   fun b -> a + b
источник

I

IdiocyAcceptance in F# Chat
да, логично
источник

I

IdiocyAcceptance in F# Chat
Первая - некаррированная, вторая - да
источник

I

Igor in F# Chat
IdiocyAcceptance
собственно тем же, чем и сейчас
немного не так пример написал, ну да ладно.
но тогда получается все c# делегаты будут казаться каррированными
источник

I

IdiocyAcceptance in F# Chat
Ну то есть первая - это настоящий Func<'a, 'a, 'a>, а вторая Func<'a, Func<'a, 'a>>
источник

g

gsomix in F# Chat
IdiocyAcceptance
Ну то есть первая - это настоящий Func<'a, 'a, 'a>, а вторая Func<'a, Func<'a, 'a>>
И их никак нельзя объединить, если использовать делегаты.
источник

I

IdiocyAcceptance in F# Chat
Хм, сложно, да
источник

I

IdiocyAcceptance in F# Chat
Вот, пример пожаловал и сразу стало понятно. Спасибо
источник

I

IdiocyAcceptance in F# Chat
Вместо тысячи слов, как говорится.
источник

I

IdiocyAcceptance in F# Chat
В фаршике там всегда проверки на InvokeFast идут перед вызовом в попытках избавиться от этого минуса
источник

I

IdiocyAcceptance in F# Chat
Но эти проверки по сути касты, они не бесплатны
источник

I

IdiocyAcceptance in F# Chat
Хотя придумать сходу как объединить такие штуки у меня не получается
источник

g

gsomix in F# Chat
Было бы интересно посмотреть, насколько они дорогие.
источник

I

IdiocyAcceptance in F# Chat
Постараюсь завтра бенч накидать
источник

I

IdiocyAcceptance in F# Chat
источник

I

IdiocyAcceptance in F# Chat
источник