Introduction to Functional Classes in CS1
Marco T. Moraz\'an (Seton Hall University)

TL;DR
This paper discusses integrating object-oriented concepts into a functional programming course to enhance students' understanding of interfaces, classes, and polymorphism, bridging the gap between functional and object-oriented paradigms.
Contribution
It introduces a novel methodology for teaching objects within a functional programming course, connecting first-class functions to object-oriented design.
Findings
Students benefit from the integrated approach
Improved understanding of object-oriented concepts
Positive initial student feedback
Abstract
Students introduced to programming using a design-based approach and a functional programming language become familiar with first-class functions. They rarely, however, connect first-class functions to objects and object-oriented program design. This is a missed opportunity because students inevitably go on to courses using an object-oriented programming language. This article describes how students are introduced to objects within the setting of a design-based introduction to programming that uses a functional language. The methodology exposes students to interfaces, classes, objects, and polymorphic dispatch. Initial student feedback suggests that students benefit from the approach.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
