Abstract
Type-directed programming, where one uses the overall data structure and type signatures to drive programming, is a well known technique in functional programming. In a strongly typed language such as Haskell, type signatures provide valuable information and context to the function we are working with. Often the type signature alone is enough to define the body of a function or at least to understand the overall shape of the problem.
Combining type-directed programming with a live programming lecturing style provides students with more tools to interrogate and define functions in a setting which is generally found difficult. The live programming setting is especially useful for providing guidance and insight on how to solve problems. type-directed programming helps to provide shape and restriction to what students can implement, moving some weight from the lecturer's explanations and onto the types.
Combining type-directed programming with a live programming lecturing style provides students with more tools to interrogate and define functions in a setting which is generally found difficult. The live programming setting is especially useful for providing guidance and insight on how to solve problems. type-directed programming helps to provide shape and restriction to what students can implement, moving some weight from the lecturer's explanations and onto the types.
Original language | English |
---|---|
Title of host publication | ITiCSE 2025 - Proceedings of the 2025 Conference on Innovation and Technology in Computer Science Education |
Editors | Erik Barendsen, Floor Binkhorst, Ángel Velázquez-Iturbide, Jaime Urquiza Fuentes, James Paterson, Keith Quille |
Pages | 731-732 |
Number of pages | 2 |
ISBN (Electronic) | 979-8-4007-1569-3 |
DOIs | |
Publication status | Published - 17 Jun 2025 |
Event | 30th ACM Conference on Innovation and Technology in Computer Science Education - Nijmegen, Netherlands Duration: 27 Jun 2025 → 2 Jul 2025 |
Conference
Conference | 30th ACM Conference on Innovation and Technology in Computer Science Education |
---|---|
Abbreviated title | ITiCSE 2025 |
Country/Territory | Netherlands |
City | Nijmegen |
Period | 27/06/25 → 2/07/25 |
Keywords
- Computational thinking
- Computing education