From C to Comonads to Climate: A Functional Programmer's Journey in Array Programming(…)
summary
Argues that stencil computations fit a comonadic interface and demonstrates a working DSL, ipnos DSL, with Haskell desugaring and 5–10% speedups in prototypes; builds a Fortran analysis pipeline, Cortt static analysis, that scans 2.5M lines of Fortran to infer ~73,000 access patterns, uses VCS diffs to surface real bug fixes, and produces unit/shape checks and refactorable specs; helps start the Institute of Computing for Climate Science to apply these tools to real climate models and workflows.
AI-written summary · about
chapters (27)
- 0:00Workshop introduction
- 1:24Speaker introduction
- 2:05Talk overview
- 3:08Early C and stencils
- 8:08Stencils in climate
- 9:34DSLs for stencils
- 12:44Comonads for stencils
- 15:30Comonadic grid ops
- 20:29Stencils in ipnos
- 22:34Grid patterns
- 27:26Comonad optimizations
- 29:55Cycle two: Bridging the gap with scientists
- 32:43Fortran stencil analysis
- 38:05Declarative stencil language
- 41:57Evaluating cortt
- 43:23Units in Fortran
- 46:15Engaging scientists paper
- 48:22Climate institute
- 52:18Climate modeling challenges
- 55:28Global models limits
- 1:00:25Scaling challenges
- 1:03:55Scientific complexity
- 1:05:20Language design for climate
- 1:07:48Future directions
- 1:11:46Semantic gap
- 1:13:54Science language features
- 1:17:45Conclusion
related talks
22mCategorical Composition of Discrete Exterior Calculus Climate Models
01h 01mFunction Composition in Programming Languages
34mGraded Monads and Type-Level Programming for Dependence Analysis
55mKeynote: Functionalist programming language design
46mMove Over Free Monads: Make Way for Free Applicatives!
01h 47mFunctional C++
42mProgramming with Math
15mMetaprogramming with Combinators
