Size: a a a

2020 June 13

AH

Ayrat Hudaygulov in F# Chat
А какая семантика у этого ужаса? Ленивый генератор промизов?
источник

AH

Ayrat Hudaygulov in F# Chat
Я не понимаю зачем нужен дважды выложенный таск
источник

VS

Vladimir Shchur in F# Chat
Это мейлбокс мне возвращает результат Task.WhenAny :)
источник

AH

Ayrat Hudaygulov in F# Chat
Async<Task<>> ещё можно понять
источник

AH

Ayrat Hudaygulov in F# Chat
Vladimir Shchur
Это мейлбокс мне возвращает результат Task.WhenAny :)
Учитывая их горячесть, вложенные таски не имеют смысла в отличие от асинков
источник

VS

Vladimir Shchur in F# Chat
очень даже имеют) когда делаешь эвейт на внешнем таске, он не кидает эксепшн когда внутренний зафейлен, и это очень удобно
источник

AH

Ayrat Hudaygulov in F# Chat
Vladimir Shchur
очень даже имеют) когда делаешь эвейт на внешнем таске, он не кидает эксепшн когда внутренний зафейлен, и это очень удобно
А что даёт ожидание внешнего?
источник

VS

Vladimir Shchur in F# Chat
Task.WhenAny - вернет когда один из тасков закомпличен или зафейлен, в этот момент я могу какую-то полезную логику совершить
источник

AH

Ayrat Hudaygulov in F# Chat
Vladimir Shchur
Task.WhenAny - вернет когда один из тасков закомпличен или зафейлен, в этот момент я могу какую-то полезную логику совершить
Ну смотри, вот ты дождался асинка, это сообщение вида Task<Task<>>.
Ты ожидаешь первый таск это Task.WhenAny - любая из очередей готова отдать сообщение, значит это уже и есть сообщение, потому что очередь уже отработала и можно сразу получить сообщение из неё
источник

AH

Ayrat Hudaygulov in F# Chat
То есть тут Task<Task<>> по смыслу равен Task<>
источник

AH

Ayrat Hudaygulov in F# Chat
Или я чот не понимаю
источник

VS

Vladimir Shchur in F# Chat
ну вот, если это сообщение комплитед или фейлд, я сообщение отдаю дальше, а если Cancelled, то рестартую таск
источник

VS

Vladimir Shchur in F# Chat
это правда подразумевает что я канселю тоже только в одном ожидаемом месте)
источник

G

George in F# Chat
Студию/VSCode как-то можно заставить на каждый отдельный файл скрипта вызывать свой интерпретатор, или только руками?
источник

VS

Vladimir Shchur in F# Chat
Ayrat Hudaygulov
Учитывая их горячесть, вложенные таски не имеют смысла в отличие от асинков
я кстати так до сих пор и не нашел юзкейза для холодных тасок :( асинки юзаю только там где нужна рекурсия, если бы можно было вместо них таски заюзать, вообще не было бы асинков в коде
источник

VK

Viacheslav Koryagin in F# Chat
George
Студию/VSCode как-то можно заставить на каждый отдельный файл скрипта вызывать свой интерпретатор, или только руками?
Ну только в начале файла с помощью #!, но это только для юникса, именно вс код заставить нельзя, насколько я знаю
источник

AH

Ayrat Hudaygulov in F# Chat
Vladimir Shchur
я кстати так до сих пор и не нашел юзкейза для холодных тасок :( асинки юзаю только там где нужна рекурсия, если бы можно было вместо них таски заюзать, вообще не было бы асинков в коде
Ты можешь сделать таски рекурсивными через ручной трамплин. Типа колбек на таск, ранер трамплинов который чекает что в трамплине есть следующий колбек
источник

AH

Ayrat Hudaygulov in F# Chat
И далее это все в цикле
источник

PD

Prunkles Dreemurr in F# Chat
Как думаете, фшарп хорошо подходит в качестве встраиваемого языка? Например, для всяких скриптов в играх, сайтах, приложениях
источник

Dv

Dr. Friedrich von Ne... in F# Chat
Prunkles Dreemurr
Как думаете, фшарп хорошо подходит в качестве встраиваемого языка? Например, для всяких скриптов в играх, сайтах, приложениях
Сильно зависит от культуры тех, кто будет им пользоваться.

Я не знаю существенно успешных попыток «встроить» статически типизированный язык куда-то.
источник