Size: a a a

2020 December 31

I

IdiocyAcceptance in F# Chat
gsomix
В F# есть оптимизации для каррированных функций, которые не получится сделать на делегатах, насколько я понимаю.
Ну это детали дизайна. На самом деле все эти оптимизации нужны изначально потому что многие функции генерируются каррированными, а не "цельными", что в целом ухудшает перф
источник

I

IdiocyAcceptance in F# Chat
Так же как и оптимизации тюплов, опшенов и прочего. Просто потому что компилятор генерит их в жутких количествах
источник

g

gsomix in F# Chat
@en3tho А как предлагаешь задизайнить?
источник

AH

Ayrat Hudaygulov in F# Chat
IdiocyAcceptance
Так же как и оптимизации тюплов, опшенов и прочего. Просто потому что компилятор генерит их в жутких количествах
так может лучше жит улучшать?
источник

AH

Ayrat Hudaygulov in F# Chat
ну я понимаю что надо и jit friendly писать, но все же
источник

AH

Ayrat Hudaygulov in F# Chat
пусть он не аллоцирует, если не надо! чой это он
источник

λP

λ :: (Kirill, Poleta... in F# Chat
Ayrat Hudaygulov
пусть он не аллоцирует, если не надо! чой это он
Сейчас придут последователи церкви неткоровского жита и начнут рассказывать что это не так работает и ваще не нужно че докопался
источник

AH

Ayrat Hudaygulov in F# Chat
ну короче, эмитить такой же IL код как в сишарпе не получится потому что... это фшарп
источник

AH

Ayrat Hudaygulov in F# Chat
и именно потому что в фшарпе больше всего, оно эмитит больше всего
источник

AH

Ayrat Hudaygulov in F# Chat
при том что если писать в фшарпе как на сишарпе, то будет как в сишарпе
источник

Lr

Larymar r.sorokin in F# Chat
прокомментируйте пожалуйста код
его как-то можно было написать более по фшарповому
https://pastebin.com/nYDXuwvQ
источник

I

IdiocyAcceptance in F# Chat
gsomix
@en3tho А как предлагаешь задизайнить?
Надо примеры собрать сначала. Покопаюсь по бенчам старым, напишу. Пока будет голословно немного
источник

g

gsomix in F# Chat
IdiocyAcceptance
Надо примеры собрать сначала. Покопаюсь по бенчам старым, напишу. Пока будет голословно немного
Ок, спасибо.
источник

AH

Ayrat Hudaygulov in F# Chat
data:IEnumerable<string>
data: string seq

let httpClient = new HttpClient()    
use httpClient = new HttpClient()    

ну и можно таскБилдер вместо асинка заюзать
источник

λP

λ :: (Kirill, Poleta... in F# Chat
У тебя postTest прям напрашивается на пайплайн

Все твои let - можно разбить на функи которые будут просто принимать аргумент результат предыдущей операции и просто запайплайнить  (оператор |>)
источник

AH

Ayrat Hudaygulov in F# Chat
а так в целом, это же просто вызов httpClient Post
источник

AH

Ayrat Hudaygulov in F# Chat
По-другому его в этой задаче тяжело написать!
источник

Lr

Larymar r.sorokin in F# Chat
Ayrat Hudaygulov
а так в целом, это же просто вызов httpClient Post
в целом да
мне просто нужно было простучать микросервис
ну и я стараюсь приучить себя всевозможные мелочи на фшорпе писать
источник

AH

Ayrat Hudaygulov in F# Chat
здесь кстати все типы можно не писать. в main оно выводится по атрибуту ентри поинта, а в функции по применению
источник

Lr

Larymar r.sorokin in F# Chat
λ :: (Kirill, Poletaev) → ⚰️ Poletaev) =>
У тебя postTest прям напрашивается на пайплайн

Все твои let - можно разбить на функи которые будут просто принимать аргумент результат предыдущей операции и просто запайплайнить  (оператор |>)
я попытался сделать так
но получилось грустно
источник