Automated synthesis of interface adapters for reusable classes
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Isomorphisms of types: from &lgr;-calculus to information retrieval and language design
Isomorphisms of types: from &lgr;-calculus to information retrieval and language design
Elementary Strong Functional Programming
FPLE '95 Proceedings of the First International Symposium on Functional Programming Languages in Education
Logical Aspects of Computational Linguistics: An Introduction
LACL '96 Selected papers from the First International Conference on Logical Aspects of Computational Linguistics
From Hilbert Spaces to Dilbert Spaces: Context Semantics Made Simple
FST TCS '02 Proceedings of the 22nd Conference Kanpur on Foundations of Software Technology and Theoretical Computer Science
A short survey of isomorphisms of types
Mathematical Structures in Computer Science
The design and implementation of typed scheme
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Hi-index | 0.00 |
Many beginning students of functional programming have difficulty understanding higher-order functions and their types. Experienced functional programmers have such a close familiarity and intuitive grasp of these crucial concepts that they may find it hard to "bridge the gap," so as to provide their students with a firm understanding of these ideas. I describe a loosely-related cluster of tips and techniques which address the pedagogy of higher-order functions and types, for students with varying degrees of mathematical background and different learning styles - these techniques include tabular presentations, code tools, visual metaphors and an abstract algebra. Although the underlying ideas will be familiar to experts, I believe these presentations can help educators bring important ideas in functional programming to a broader range of students, with less pain and with a deeper understanding.