MultipleInterfaces.jl - Multiple Inheritance and Multiple Dispatch
The Julia Programming Language via YouTube
Overview
Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Explore a conference talk introducing MultipleInterfaces.jl, a Julia package that enables multiple inheritance and enhanced multiple dispatch for interface-based programming. Learn how to define interfaces through required method lists and create complex interface hierarchies using multiple inheritance, eliminating the need for optional interface methods by expressing optionality through directed acyclic graphs of interfaces. Discover how to implement enhanced multiple dispatch methods that can dispatch on traditional Julia types and interfaces simultaneously, including intersection dispatching on combined interfaces like `Iterator & Table`, all while maintaining zero runtime performance overhead. Follow along as the speaker demonstrates practical applications through a graph type hierarchy example, showing how to define interfaces, declare interface implementors, and create methods with interface-based multiple dispatch. Understand how to resolve complex type hierarchy challenges by transitioning from traditional type hierarchies to more flexible interface-based architectures that better express the relationships between different data structures and their capabilities.
Syllabus
MultipleInterfaces.jl: Multiple Inheritance & Multiple Dispatch | Bieganek | JuliaCon Global 2025
Taught by
The Julia Programming Language