Ferlium: An Extended Hindley–Milner Language with Mutable Value Semantics for Safe Scripting
Ferlium (https://ferlium.dev) is a small statically typed functional scripting language that explores the combination of Hindley–Milner type inference with mutable value semantics. While Hindley–Milner systems traditionally favor immutability, many scripting and interactive domains require controlled mutation for expressiveness and performance. Ferlium investigates how these design goals can be reconciled without introducing the full complexity of ownership systems such as Rust’s.
The language provides generics, type inference and constraints in the style of Haskell, while supporting mutation through a value-or-mutable-reference parameter model inspired by Racordon et al., “Implementation Strategies for Mutable Value Semantics.” A lightweight borrow discipline enforces memory safety while keeping the surface model accessible and predictable.
Ferlium is deployed as a scripting language in a production educational environment, which imposes strong usability and clarity constraints on the design. In this talk, we present the language design, discuss the trade-offs involved in combining inference with controlled mutation, and reflect on how these decisions affect usability in practice. The session will include a live demonstration of the language and conclude with open discussion.
Mon 16 MarDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 12:00 | |||
10:30 45mIndustry talk | Ferlium: An Extended Hindley–Milner Language with Mutable Value Semantics for Safe Scripting VIMPL Stéphane Magnenat Enlightware GmbH | ||
11:15 45mTalk | Value support in the qBeta language VIMPL Link to publication | ||