Effective Programming in OCaml • KC Sivaramakrishnan • YOW! 2021

preview_player
Показать описание
This presentation was recorded at YOW! 2021. #GOTOcon #YOW

KC Sivaramakrishnan - Professor & Hacker at IIT Madras @SivaramakrishnanKC

RESOURCES

ABSTRACT
Effect handlers have been gathering momentum as a mechanism for modular programming with user-defined effects. Effect handlers allow for non-local control flow mechanisms such as generators, async/await, lightweight threads and coroutines to be composably expressed. The #Multicore OCaml project retrofits effect handlers to the OCaml programming language to serve as a modular basis of concurrent programming.

In this talk, I will introduce effect handlers in OCaml, walk through several examples that illustrate their utility, describe the retrofitting challenges and how we overcome them without breaking the existing OCaml code. Our implementation imposes negligible overhead on code that does not use effect handles and is efficient for code that does. Effect handlers are slated to land in OCaml after the addition of #parallelism support. [...]

RECOMMENDED BOOKS

#OCaml #FunctionalProgramming #FP #Programming #SoftwareEngineering #OCamlTutorial #KCSivaramakrishnan

Looking for a unique learning experience?

SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily.
Рекомендации по теме
Комментарии
Автор

We are currently releasing older YOW! videos to serve as a valuable archive, preserving historical content. It is possible that a video is perceived as outdated. We believe it offers insightful glimpses into the past, enriching our understanding of history and development.

GOTO-
Автор

Your channel has become a reliable source of knowledge.

acodersjourney
Автор

This is an exceptionally ( 😊 ) good break down of this important topic.

pmcgee
Автор

Nice. How do you use these features in OCaml 5.0.0? I tried to follow along in utop and it can't make sense of the effect declarations.

Mark-zkuj
Автор

I clicked on this video because I was convinced OCam was meant to be OCaml. I was right!

rosscousens