Chennai OCaml: First Meetup


Details
Welcome to the first Chennai OCaml Meetup! In this meetup we'll have a couple of talks and lots of informal discussions about OCaml and FP!
Talk 1: Concurrent Programming with Effect Handlers
Speaker: KC Sivaramakrishnan
Effect handlers are a language primitive for implementing non-local control-flow features such as async/await, generators/iterators, user-level threads, etc. The expressive power of effect handlers is due to the fact that they promote structured programming with delimited continuations. The latest major release of OCaml, version 5.0, includes support for effect handlers. In this talk, I will discuss the motivation for introducing effect handlers into OCaml and touch upon their implementation. I will also discuss how we have made effect handlers a pleasure to use for working programmers by paying particular attention to debugging and profiling.
Talk 2: FIDES: Hardware-assisted Compartments for Securing Functional Programs
Speaker: Sai Venkata Krishnan
Two major causes for the rapidly increasing threat of cyber-attacks are unsafe languages like C and C++ and a monolithic software architecture that combines code with varied security expectations without isolation. To counter these critical issues, developers are migrating to memory-safe languages like OCaml and Rust and employing software compartmentalization techniques that reduce the attack surface. Current compartment schemes are designed specifically for C and C++ and do not accommodate language features found in high-level programming languages, such as exceptions, first-class functions, tail-call optimization, and garbage collection. That said, even with the advent of memory-safe languages, developers must still rely on legacy third-party libraries written in C and C++. This requires re-imagining the compartment schemes to work seamlessly in the presence of both unsafe and safe language codes. We propose FIDES, a novel hardware-enabled compartment scheme designed for high-level, memory-safe, functional programming languages targeting resource-constrained embedded systems. FIDES creates code compartments with custom compiler and hardware extensions. It leverages the language-level safety guarantees of a memory-safe language to enforce fine-grained data sharing across compartments. FIDES' compartment scheme supports essential functional programming features like tail-call optimization and higher-order functions. To permit mixed-language applications, FIDES extends C with a hardware-assisted fat pointer scheme to preserve the guarantees of the compartment scheme.
The meetup will take place at Tarides India Chennai offices: https://maps.app.goo.gl/HJxg11Mew1xxPnNJA
We'll start at 5.30 PM. Talk sessions will be followed by informal discussions.
Who's this for?
Anyone interested in OCaml and functional programming is welcome. Whether you are a beginner or a seasoned OCaml programmer, we hope you will have something to take away.
We're happy to help folks set up and get started with OCaml. Feel free to drop by earlier.
This event follows the OCaml Code of Conduct, found here: https://ocaml.org/policies/code-of-conduct

Chennai OCaml: First Meetup