基于证明辅助的程序设计语言理论交互式教学

Péter Bereczky, István Donkó, Dániel Horpácsi, A. Kaposi, D. J. Németh
{"title":"基于证明辅助的程序设计语言理论交互式教学","authors":"Péter Bereczky, István Donkó, Dániel Horpácsi, A. Kaposi, D. J. Németh","doi":"10.36427/cejntrep.2.1.470","DOIUrl":null,"url":null,"abstract":"Teaching of programming language theory has a long track record at ELTE Faculty of Informatics. Traditionally, formal semantics and type systems of programming languages, similarly to other theory-oriented subjects, were taught with the pen and paper method. However, modern proof assistants call for replacing this old-fashioned way of teaching with novel and interactive methods that bring deeper understanding, provide better learning experience and build technical skills in applying formal methods. The authors have launched practice classes for two programming language theory subjects and carefully developed course material based on executable and verifiable definitions formalised in the Coq proof assistant. In this paper, we share our experiences regarding the design and implementation of the new material, we outline the pros and cons of using a proof assistant in the courses, and we describe how the presented method may be adapted to other courses.","PeriodicalId":355843,"journal":{"name":"Central-European Journal of New Technologies in Research, Education and Practice","volume":"51 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-04-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Interactive Teaching of Programming Language Theory with a Proof Assistant\",\"authors\":\"Péter Bereczky, István Donkó, Dániel Horpácsi, A. Kaposi, D. J. Németh\",\"doi\":\"10.36427/cejntrep.2.1.470\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Teaching of programming language theory has a long track record at ELTE Faculty of Informatics. Traditionally, formal semantics and type systems of programming languages, similarly to other theory-oriented subjects, were taught with the pen and paper method. However, modern proof assistants call for replacing this old-fashioned way of teaching with novel and interactive methods that bring deeper understanding, provide better learning experience and build technical skills in applying formal methods. The authors have launched practice classes for two programming language theory subjects and carefully developed course material based on executable and verifiable definitions formalised in the Coq proof assistant. In this paper, we share our experiences regarding the design and implementation of the new material, we outline the pros and cons of using a proof assistant in the courses, and we describe how the presented method may be adapted to other courses.\",\"PeriodicalId\":355843,\"journal\":{\"name\":\"Central-European Journal of New Technologies in Research, Education and Practice\",\"volume\":\"51 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2020-04-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Central-European Journal of New Technologies in Research, Education and Practice\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.36427/cejntrep.2.1.470\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Central-European Journal of New Technologies in Research, Education and Practice","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.36427/cejntrep.2.1.470","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

ELTE信息学学院的程序设计语言理论教学有着悠久的历史。传统上,编程语言的形式语义和类型系统,与其他面向理论的科目类似,是用纸和笔的方法教授的。然而,现代证明助理要求用新颖和互动的方法取代这种老式的教学方式,这些方法能带来更深入的理解,提供更好的学习经验,并在应用正式方法时培养技术技能。作者已经为两个编程语言理论科目开设了实践课程,并根据Coq证明助手中形式化的可执行和可验证定义精心开发了课程材料。在本文中,我们分享了我们在设计和实施新材料方面的经验,我们概述了在课程中使用证明助手的优点和缺点,我们描述了如何将所提出的方法适用于其他课程。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Interactive Teaching of Programming Language Theory with a Proof Assistant
Teaching of programming language theory has a long track record at ELTE Faculty of Informatics. Traditionally, formal semantics and type systems of programming languages, similarly to other theory-oriented subjects, were taught with the pen and paper method. However, modern proof assistants call for replacing this old-fashioned way of teaching with novel and interactive methods that bring deeper understanding, provide better learning experience and build technical skills in applying formal methods. The authors have launched practice classes for two programming language theory subjects and carefully developed course material based on executable and verifiable definitions formalised in the Coq proof assistant. In this paper, we share our experiences regarding the design and implementation of the new material, we outline the pros and cons of using a proof assistant in the courses, and we describe how the presented method may be adapted to other courses.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信