Explore layout polymorphism in OCaml programming through this 30-minute conference talk from ACM SIGPLAN's ML'23 event. Delve into the challenges of implementing unboxed types to reduce garbage collection latency in specific OCaml programs. Examine the conflict between unboxed types' varied representations and parametric polymorphism. Learn about an innovative approach to layout polymorphism that allows functions to work with multiple representations while maintaining ML's abstraction principles. Discover the type-system design, including a novel static mode, and implementation strategies for managing specializations without compromising separate compilation. Gain insights into the future of efficient polymorphism in OCaml programming through this comprehensive exploration of layout flexibility, layout monomorphisation, and related concepts.
Layout Polymorphism: Using Static Computation for Efficient Polymorphism Over Variable Representations
ACM SIGPLAN via YouTube
Overview
Syllabus
Introduction
Unboxed types
Unboxed vs boxed types
Layout flexibility
Layout monomorphisation
Separate compilation
Discussion
Taught by
ACM SIGPLAN