Lambdulus: teaching lambda calculus practically

Jan Sliacky, Petr Maj
{"title":"Lambdulus: teaching lambda calculus practically","authors":"Jan Sliacky, Petr Maj","doi":"10.1145/3358711.3361629","DOIUrl":null,"url":null,"abstract":"λ calculus is a great formal introduction to functional programming. However, its abstract nature poses a challenge for many students as they struggle both with the unfamiliarity of functional programming and with the high abstraction and minimalism of λ calculus. As a result, functional programming classes are often delayed to older students who are hoped to be better prepared for appreciating its qualities, as was the case at the authors’ university as well. 3 years ago, as part of a redesigned curriculum around programming languages education, we have decided to introduce students to various programming paradigms much sooner than before. In doing so, we faced the problem of explaining very theoretical foundational concepts to very young students in a very short time. We have monitored the achievements and shortcomings of the new course over the past years and as a result of our findings have developed Lambdulus, an interactive and visual evaluator of λ calculus expressions that encourages students to explore the mechanisms of λ calculus by treating it not as a theoretical concept, but as a programming language in its own right.","PeriodicalId":190350,"journal":{"name":"Proceedings of the 2019 ACM SIGPLAN Symposium on SPLASH-E","volume":"7 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-10-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2019 ACM SIGPLAN Symposium on SPLASH-E","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3358711.3361629","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

λ calculus is a great formal introduction to functional programming. However, its abstract nature poses a challenge for many students as they struggle both with the unfamiliarity of functional programming and with the high abstraction and minimalism of λ calculus. As a result, functional programming classes are often delayed to older students who are hoped to be better prepared for appreciating its qualities, as was the case at the authors’ university as well. 3 years ago, as part of a redesigned curriculum around programming languages education, we have decided to introduce students to various programming paradigms much sooner than before. In doing so, we faced the problem of explaining very theoretical foundational concepts to very young students in a very short time. We have monitored the achievements and shortcomings of the new course over the past years and as a result of our findings have developed Lambdulus, an interactive and visual evaluator of λ calculus expressions that encourages students to explore the mechanisms of λ calculus by treating it not as a theoretical concept, but as a programming language in its own right.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
实用的lambda微积分教学
λ微积分是函数式编程的一个很好的正式介绍。然而,它的抽象性质给许多学生带来了挑战,因为他们既不熟悉函数式编程,又不熟悉λ微积分的高度抽象和极简主义。因此,函数式编程课程经常被推迟到年龄较大的学生,他们希望更好地准备欣赏它的品质,就像作者所在大学的情况一样。3年前,作为重新设计的编程语言教育课程的一部分,我们决定比以前更快地向学生介绍各种编程范式。在这样做的过程中,我们面临着在很短的时间内向非常年轻的学生解释非常理论性的基础概念的问题。在过去的几年里,我们已经监测了新课程的成就和缺点,并且由于我们的发现,我们开发了Lambdulus,这是一个交互式和可视化的λ微积分表达式评估器,鼓励学生探索λ微积分的机制,而不是将其视为一个理论概念,而是作为一种独立的编程语言。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Theia: automatically generating correct program state visualizations Towards answering “Am I on the right track?” automatically using program synthesis Microsoft MakeCode: embedded programming for education, in blocks and TypeScript Experiences in bridging from functional to object-oriented programming Evaluating ProDirect manipulation in hour of code
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1