PhD course on “Functional Programming and Climate Impact Research”
- Current instance: end of March - May/June 2026
- Previous instance info: FPClimate 2024
This is a course aimed at PhD students or MSc students interested in the application of functional programming, domain-specific languages, and dependent types to climate impact research.
Note. This course is run as a seminar / reading course. Therefore, you must have the motivation and capacity to digest material with limited teacher presence.
The detailed schedule for 2026 is not yet settled (it depends on the participants’ schedules).
The course is based on material from the following research papers:
- 2010: Vulnerability modelling with functional programming and dependent types
- 2011: Testing versus proving in climate impact research
- 2012: Dependently-Typed Programming in Scientific Computing - Examples from Economic Modelling
- 2014: Towards a Computational Theory of GSS: a Case for Domain-Specific Languages
- 2017: Sequential decision problems, dependent types and generic solutions
- 2017: Contributions to a computational theory of policy advice and avoidability
- 2018: The impact of uncertainty on optimal emission policies
- 2023: Responsibility Under Uncertainty: Which Climate Decisions Matter Most?
- 2025: Types, equations, dimensions and the Pi theorem
- 2026: Optimization under uncertainty: understanding orders and testing programs with specifications
Good background reading is provided by:
- The 2023 book ”Computing the Climate” by Steve M. Easterbrook
- The 2022 book ”Domain-Specific Languages of Mathematics” by Jansson, Ionescu, Bernardy.
The course is examined through:
- a sequence of graded hand-ins (solutions to exercises to be further specified during the course)
- active participation in most of the weekly seminars
The plan is to award 7.5 higher education credits (ECTS) upon successful completion of the course.
- BSc degree in Computer Science and Engineering or equivalent.
- Functional programming (ideally in Haskell, but other languages are also OK)
- Formal methods (ideally using dependent types, but other methods are also OK)
After completion of the course the student should be able to:
- Use functional programming specification / implementation / formalisation as a way of understanding new domains
- Understand a selection of topics in Climate Impact Research
- Effectively use Haskell and Agda for formalisation
- Master the terminology, concepts and theories associated with the selected area;
- Demonstrate deep knowledge and understanding in the area of the course, and insight into current research and development;
- Demonstrate deep methodological knowledge in the area of the course;
- Demonstrate the ability to critically and systematically integrate knowledge and to analyse, assess, and deal with complex issues in the area of the course;
- Search for, and extract, necessary information from scientific publications in the selected area of the course, with the purpose of identifying strengths and weakness of solutions, approaches and methodologies.
- The course will start in March 2026 and end in May or June.
- The schedule will be made available below (Dates TBD):
- Prel. Monday afternoons 15-17
- Time zone: CET (UTC+1) until end of March, then CEST (UTC+2).
- For local participants, the room is usually EDIT 6128 (at Chalmers campus Johanneberg).
- For remote participants, the zoom link is almost https://chalmers.zoom.us/my/CUTpatrikja but without the upper case letters.
- If you do not need formal credits, you can just contact Patrik Jansson.
- If you want credits for your local MSc degree, contact the examiner for (DAT235/DIT577): Ana Bove
- If you want credits for your local PhD degree, obtain the approval of your supervisor and examiner, then contact Patrik Jansson.