filmov
tv
Algebraic effects (алгебраїчні еффекти ) react, fibers, coroutines та як процює hooks та suspense

Показать описание
Ефекти та файбери це наріжний камінь react 16+ якій дозволив імплементувати саспенси й таймслайсінг чим драматично прискорив рендерінг а головне респонс для користувача. Також хуки по факту є також алгебраїчними еффектами
Якщо все спростити до побутового рівня та ігнорувати теорію та вільні монади - то ефект є екскпшеном що не перериває виконання та вміє повертати значення в точку визова. Є нелінійні ефекти які можуть обирати куди повертатися. Такий підхід дозволяє генералізувати - синхронний асинхроний та багатопоточний код та представляти його як лінійний
Хороша стаття Абрамова на тему еффектів
Пояснення як працює useState
Відео про файбери та ефекти у react
Імплементація еффектів для js
Як бачимо обгортки та генератори виглядають не дуже елегантно тому ефекти краще використовувати коли вони вбудовані в мову
Тут нам допоможе bable одна з імплементацій нового синтаксису
Кілька мов програмування з системою типізованих еффектів
Також є цікавий пропоузал підтримати ефекти в wasm
Для фанатів теорії та чому все так працює цікаво почитати
Ну й куди без Ocaml
Якщо все спростити до побутового рівня та ігнорувати теорію та вільні монади - то ефект є екскпшеном що не перериває виконання та вміє повертати значення в точку визова. Є нелінійні ефекти які можуть обирати куди повертатися. Такий підхід дозволяє генералізувати - синхронний асинхроний та багатопоточний код та представляти його як лінійний
Хороша стаття Абрамова на тему еффектів
Пояснення як працює useState
Відео про файбери та ефекти у react
Імплементація еффектів для js
Як бачимо обгортки та генератори виглядають не дуже елегантно тому ефекти краще використовувати коли вони вбудовані в мову
Тут нам допоможе bable одна з імплементацій нового синтаксису
Кілька мов програмування з системою типізованих еффектів
Також є цікавий пропоузал підтримати ефекти в wasm
Для фанатів теорії та чому все так працює цікаво почитати
Ну й куди без Ocaml
Комментарии