How to Avoid Safety Hazards when using Closures in Scala by Philipp Haller (Strange Loop 2022)  @StrangeLoopConf
How to Avoid Safety Hazards when using Closures in Scala by Philipp Haller (Strange Loop 2022)  @StrangeLoopConf
Strange Loop Conference | "How to Avoid Safety Hazards when using Closures in Scala" by Philipp Haller (Strange Loop 2022) @StrangeLoopConf | Uploaded 1 year ago | Updated September 28 2023
Closures, or lambda expressions, are an essential language feature to work productively with popular data processing engines like Apache Spark and Flink, and they enable functional programming, a style of programming that is gaining popularity for composable programming with effects (such as I/O), among others. However, more and more use cases in parallel and distributed programming are testing the limits of the flexibility of closures. For example, the requirement for closures to be serializable is a common source of errors when developing data processing or streaming applications. In a concurrent setting, for example, when programming with futures and promises, closures must be used with great care in order to prevent safety hazards like race conditions. In this talk you will learn how to spot potentially unsafe code using closures, how to write safer closure-using code, and how to use newly developed library components to increase the flexibility and safety of closures in Scala.

Philipp Haller
Associate Professor at KTH Royal Institute of Technology, Sweden

Philipp Haller is an Associate Professor in the School of Electrical Engineering and Computer Science at KTH Royal Institute of Technology in Stockholm, the leading technical university in Sweden. He is co-author of Scala's async/await extension for asynchronous programming, and one of the lead designers of Scala's futures library. Main author of the book "Actors in Scala," he created Scala's first widely-used actor library. Dr. Haller was part of the team that received the ACM SIGPLAN Programming Languages Software Award in 2019 for the development of the Scala programming language. He is also one of the founders of the Software Development Academy at KTH, a 3-month accelerated training program in software development, which was selected finalist for the Tech Skills and Talent Award of Tech Awards Sweden in 2022. Dr. Haller received a Ph.D. in Computer Science from EPFL, Switzerland, in 2010 and a Diplom-Informatiker degree from Karlsruhe Institute of Technology, Germany, in 2006.

------ Sponsored by: ------

Stream is the # 1 Chat API for custom messaging apps. Activate your free 30-day trial to explore Stream Chat. https://gstrm.io/tsl
How to Avoid Safety Hazards when using Closures in Scala by Philipp Haller (Strange Loop 2022) @StrangeLoopConfAvoiding the Pitfalls of Autoscaling with Constant Work by David Grizzanti (Strange Loop 2022) @StrangeLoopConfIntroducing the HandAxe Collections Pattern Language by Maurice Rabb (Strange Loop 2022) @StrangeLoopConfPolymorphism Unbound by Bruce Eckel (Strange Loop 2022) @StrangeLoopConfThe Lemniscate by Ann Johnson, Charles Comstock @StrangeLoopConfThere Are No Shortcuts in Organizing, but Technology Sure Does Help by Vicki Crosson, Shane Moore @StrangeLoopConfDiagrammar: Simply Make Interactive Diagrams by Pontus Granström (Strange Loop 2022) @StrangeLoopConfSniffing the Metaverse by Benjamin Cabé (Strange Loop 2022) @StrangeLoopConfModern B-Tree techniques by Dmitrii Dolgov (Strange Loop 2022) @StrangeLoopConfThe Education of a Civic Technologist by Alex Allain (Strange Loop 2022) @StrangeLoopConfReviving 1990s Digital Dress-Up Dolls with Smooch by Libby Horacek (Strange Loop 2022) @StrangeLoopConfKalDB: A cloud native log search platform by Suman Karumuri (Strange Loop 2022) @StrangeLoopConfThe Evolution of a Planetary-scale Distributed Database by Kevin Scaldeferri (Strange Loop 2022) @StrangeLoopConfData Driven Investigation in Defense of Human Rights by Christo Buschek (Strange Loop 2022) @StrangeLoopConfInteractive Debugging and Testing Support for Deep Learning by Tianyi Zhang @StrangeLoopConfFinding Bugs in Deep Learning Programs by Foutse Khomh @StrangeLoopConfHow to Recommend Tools for Finding and Fixing Software Errors by Chris Brown @StrangeLoopConfHow Automated Tools Can Communicate Effective Strategies for Fixing Bugs by Justin Smith @StrangeLoopConfIts Not You, Its the API: Automatically Avoiding API Misuses by Sarah Nadi @StrangeLoopConfChoose Wisely: Code Smells in Automatically Generated Code by Joanna Cecilia da Silva Santos @StrangeLoopConfOne Thousand and One Stories: a Large-scale Survey of Software Refactoring by Mohamed Wiem Mkaouer @StrangeLoopConfIts Like Coding in the Dark: the Need for Learning Culture in Engineering Teams - Catherine Hicks @StrangeLoopConfMachine Learning for Developer Productivity by Satish Chandra (Strange Loop 2022) @StrangeLoopConfDemystifying Privacy Preserving Computing by Tejas Chopra (Strange Loop 2022) @StrangeLoopConfOf JavaScript Ahead-Of-Time Compilation Performance by Manuel Serrano (Strange Loop 2022) @StrangeLoopConfTime Travel Debugging JavaScript Applications by Cecelia Martinez (Strange Loop 2022) @StrangeLoopConfAVIF: Creating a new image format in the open by Jon Bauman (Strange Loop 2022) @StrangeLoopConfIf only I owned my data: Architecting decentralized data by Katharine Jarmul, Nimisha Asthagiri @StrangeLoopConfBlueprints for a Universal Reasoning Machine by Zenna Tavares (Strange Loop 2022) @StrangeLoopConfArt you can make by spying on yourself with your phone by Kate Hollenbach (Strange Loop 2022) @StrangeLoopConfDisaster Recovery Options running Apache Kafka in Kubernetes by Geetha Anne (Strange Loop 2022) @StrangeLoopConfAn IPC Language For The Whole Operating System by Ian McKellar (Strange Loop 2022) @StrangeLoopConfMonad I Love You Now Get Out Of My Type System by Gjeta Gjyshinca (Strange Loop 2022) @StrangeLoopConfHow live music is evolving in a post pandemic world by Ben Michel (Strange Loop 2022) @StrangeLoopConfFormally Verifying Everybodys Cryptography by Mike Dodds, Joey Dodds (Strange Loop 2022) @StrangeLoopConfHodor: Detecting and Addressing Overload in LinkedIn Microservices by Bryan Barkley @StrangeLoopConfA Hipster History of CORS by Devdatta Akhawe (Strange Loop 2022) @StrangeLoopConfThe Skip Ratchet by Brooklyn Zelenka (Strange Loop 2022) @StrangeLoopConfHedy: A Gradual programming language by Felienne Hermans (Strange Loop 2022) @StrangeLoopConfLevel Up Your Machine Learning Lifecycle by Yaqi Chen (Strange Loop 2022) @StrangeLoopConfWhat We Learned Dissecting the Worlds Most Popular Containers by Ayse Kaya (Strange Loop 2022) @StrangeLoopConfBeyond Blockchain: Convergent Consensus by Mike Anderson (Strange Loop 2022) @StrangeLoopConfPowering Spotifys Audio Personalization Platform by Josh Baer (Strange Loop 2022) @StrangeLoopConfThe Vera C. Rubin Observatory Legacy Survey of Space and Time by Andrés Plazas Malagón @StrangeLoopConfLiveViewJS is the anti-SPA library for reactive app development in NodeJS and Deno by Donnie Flood @StrangeLoopConfIn the Land of the Sizing, the One-Partition Kafka Topic is King by Ricardo Ferreira @StrangeLoopConfFormal Modeling and Analysis of Distributed Systems by Ankush Desai (Strange Loop 2022) @StrangeLoopConfResillient Microservices without the Chaos by Christopher Meiklejohn (Strange Loop 2022) @StrangeLoopConfWorkflows, a new abstraction for distributed systems by Dominik Tornow (Strange Loop 2022) @StrangeLoopConfDont Get Owned by Your Dependencies by Shravan Narayan (Strange Loop 2022) @StrangeLoopConf

"How to Avoid Safety Hazards when using Closures in Scala" by Philipp Haller (Strange Loop 2022) @StrangeLoopConf