Mon 5 Nov 2018 14:00 - 14:30 at Newbury - Afternoon

In advanced programming languages curricula, the λ-calculus often serves as the foundation for teaching the formal concepts of language syntax and semantics. LambdaLab is an interactive tool that helps students practice λ-calculus reduction and build intuition for its behavior. To motivate the tool, we survey student answers to \lambdaλ-calculus assignments in three previous classes and sort mistakes into six categories. LambdaLab addresses many of these problems by replicating the experience of working through \betaβ-reduction examples with an instructor. It uses visualizations to convey AST structure and reducible expressions, interactive reduction to support self-guided practice, configurable reduction strategies, and support for encodings via a simple macro system. To mimic informal, in-class treatment of macros, we develop a new semantics that describes when to expand and contract them. We use case studies to describe how LambdaLab can fit into student workflows and address real mistakes.

Mon 5 Nov
Times are displayed in time zone: Guadalajara, Mexico City, Monterrey change

13:30 - 15:00: AfternoonSPLASH-E at Newbury
13:30 - 14:00
Talk
Bridging the Gap for At-Risk Cohorts: Experimenting with English Language Learners
SPLASH-E
Celina BergUBC, Computer Science, Fatimah MahmoodUniversity of British Columbia
File Attached
14:00 - 14:30
Talk
LambdaLab: An Interactive Lambda-Calculus Reducer for Learning
SPLASH-E
Daniel SainatiCornell University, Adrian SampsonCornell University
File Attached
14:30 - 15:00
Meeting
Discussion
SPLASH-E