ICFP/SPLASH 2025
Sun 12 - Sat 18 October 2025 Singapore
Thu 16 Oct 2025 11:05 - 11:35 at Peony NE - ML Workshop 1 Chair(s): Chris Casinghino

Standard ML is a “safe” language, which helps improve the security and robustness of code at the cost of additional runtime checks. Two examples of such checks are tests for overflow on arithmetic operations and tests for invalid indices into arrays and vectors. In this paper, we describe ongoing work in the SML/NJ system to reduce the overhead of such tests without compromising the safety of the language. Our approach is based on applying a range analysis to SML/NJ’s CPS intermediate representation, the results of which are then used to eliminate overflow and bounds checking when it is sound to do so. the results of which are then used to eliminate overflow bounds checking when it is sound to do so. Some preliminary experiments with by-hand application of these optimizations suggest that the performance benefits can be significant for array-heavy code.

Thu 16 Oct

Displayed time zone: Perth change

10:30 - 12:15
ML Workshop 1ML Family Workshop at Peony NE
Chair(s): Chris Casinghino Jane Street
10:30
5m
Day opening
Welcome
ML Family Workshop
Sam Westrick New York University
10:35
30m
Talk
MsML: A Proposal for a successor MLRemote
ML Family Workshop
David MacQueen University of Chicago (Emeritus)
11:05
30m
Talk
Range-Analysis-Based Optimization for SML/NJ
ML Family Workshop
John Reppy University of Chicago, Byron Zhong University of Chicago
Pre-print
11:35
30m
Talk
LunarML: From Standard ML to Scripting Languages
ML Family Workshop
File Attached