This presentation was recorded at YOW! 2021. #GOTOcon #YOW https://yowcon.com KC Sivaramakrishnan - Professor & Hacker at IIT Madras @SivaramakrishnanKC RESOURCES https://kcsrk.info https://www.linkedin.com/in/kc-sivaramakrishnan-25061a14 https://twitter.com/kc_srk https://github.com/kayceesrk 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 Anil Madhavapeddy • Real World OCaml • https://amzn.to/3sgefYj Merih Taze • Engineers Survival Guide • https://amzn.to/45xUud3 Richard Feldman • Elm in Action • https://amzn.to/387kujI Tim McNamara • Rust in Action • https://amzn.to/3ux2R9u Jeremy Fairbank • Programming Elm • https://amzn.to/2WhZCE8 https://twitter.com/GOTOcon https://www.linkedin.com/company/goto- https://www.facebook.com/GOTOConferences #OCaml #FunctionalProgramming #FP #Programming #SoftwareEngineering #OCamlTutorial #KCSivaramakrishnan Looking for a unique learning experience? Attend the next GOTO conference near you! Get your ticket at https://gotopia.tech Sign up for updates and specials at https://gotopia.tech/newsletter SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily. https://www.youtube.com/user/GotoConferences/?sub_confirmation=1
Get notified about new features and conference additions.