Skip to main content
Seminar | Argonne Leadership Computing Facility

Type-Safe Functional Programming for Data Science

ALCF Summer Speaker Series

Abstract: In this talk, we revisit the role of type-safe functional programming in data science, empowering Python (and other) programmers seeking conciseness and expressiveness while transitioning to more predictable, performant and reliable environments. As an alternative to the steep learning curve and tooling complexity associated with modern C++ ecosystems, we aim to demonstrate how statically typed functional programming, combined with modern language features and reasonably performant libraries, can serve as a powerful foundation for modern data science and computational science workflows.

We’ll focus on the fundamentals of working with data: reading, transforming, cleaning, summarizing/analytics and visualizing using idiomatic Scala with suitable frameworks like Smile, Spire and Squants. These tasks remain central to real-world data science but are often overshadowed by discussions of neural networks and GPU frameworks. We aim to reclaim this space with principled approaches that avoid the pitfalls of dynamically typed systems while maintaining programmability and productivity.

We’ll include a gentle introduction for Python programmers interested in transitioning to a more robust and structured environment. This module will demonstrate equivalent workflows between Python’s pandas and Scala’s Smile, how idioms translate into more composable expressions in a statically typed setting and how compile-time type inference and immutability reduce runtime errors and debugging effort.

Bio: George K. Thiruvathukal is a full professor of computer science at Loyola University Chicago. Dr. Thiruvathukal received his Ph.D. and M.S. in computer science from Illinois Institute of Technology and his B.A. in physics and computer science from Lewis University.

Please click on the following IEEE eScience link to see the full tutorial for this presentation: https://​www​.escience​-con​fer​ence​.org/​2​0​2​5​/​t​u​t​o​rials