7 月 9 日 上午 10 点,MoonBit 团队负责人张宏波应清华大学计算机科学与技术系韩文弢老师的邀请,在清华大学舜德楼开展 「程序设计训练课」课程教学。本门课程旨在带领学生了解具备「安全、并发、实用」属性的编程语言,并通过细致探索所有权、生命周期、模式匹配、函数式编程、泛型与特型等核心概念,帮助学生掌握正确的编程方法,并在实践中进行验证。
在这次课程中,张宏波不仅详细介绍了 MoonBit 语言的基本构成和工具链,更细致阐述了 MoonBit 语言的主要特色以及在数据处理和错误处理等方面的创新之处。此外,他还分享了编程语言未来发展趋势,为学生们提供了前沿的行业洞察。
课程介绍
MoonBit 作为国内首个工业级编程语言及配套工具链,MoonBit 的语言设计结合 Golang 和 Rust 的优点,兼顾语言简洁易用的同时具备容错的类型系统,适用于现代的云和边缘计算环境。据统计,MoonBit 在编译速度、运行速度和体积大小等方面已成功领先传统语言。在 AI 应用方面,MoonBit还融合了传统 IDE 智能与大模型智能,通过局部重采样和全局重采样实现了智能代码生成的调整和修正。
MoonBit 结合命令式和函数式编程特性,支持可变量、while 循环等命令式控制流,便于学习数据结构和算法。它具备不可变数据结构、模式匹配、高阶函数和尾递归等函数式特性,便于编写快速排序。不同于 Scheme 等常见的函数式教学语言,MoonBit 作为强类型语言,为每个变量和函数提供明确类型,增强代码可读性和可维护性。
授课现场座无虚席,更吸引了一部分线上同学听讲,课程结束后众多同学前来交流。
大作业
作为正式纳入清华大学课程体系的一部分,在授课结束过后,张宏波老师针对课程内容设计了一份「大作业」:学生们通过 MoonBit 实现 Woedle 游戏。Wordle 是由 Josh Wardle 开发的网页文字游戏,以其简单有趣的规则在 2021 年底风靡全球,并在 2022 年被纽约时报收购。
Wordle 的玩法是,玩家每日可挑战在六次尝试内,猜出由五个字母所组成的英文单词。所有人每天要猜测的单词都一样,来源于作者预先定义的词库(“候选词”),均为比较常见的五字单词。玩家在尝试中可以使用的单词(“可用词”)也是预定义的,比候选词的数量更多。简单来说,“候选词”是所有可能的答案,“可用词”是所有玩家可以输入的词。“候选词”是“可用词”的子集,这样做的目的是保证答案不会过于生僻,但同时允许玩家输入生僻的单词。
为了帮助用户猜词,每次尝试后,每个字母会显示为绿、黄或灰色:绿色表示字母猜中,而且位置正确;黄色表示单词包含此字母但位置不正确;灰色则表示字母出现的次数多于实际出现的次数。
后续我们将会在 MoonBit 平台上公开本次课程的详细教学内容,届时,欢迎同学们前来学习并完成这项有趣且富有挑战性的作业。
MoonBit 走进大学
MoonBit 的影响力正在迅速扩展,除了清华大学,我们还成功走进了中山大学、香港科技大学(广州)、北京大学、复旦大学、中科院软件所、香港中文大学(深圳)、杭州学军中学教育集团文渊中学等众多知名高等学府的课堂。
本周四,张宏波老师即将带领 MoonBit 开启新一段学术之旅——前往武汉大学进行《国产编程语言的应用现状与发展》专题讲座,带领学生回顾编程语言的演进历程,分析传统语言与新型编程语言的异同,并探讨编程语言的发展趋势及其设计与实现。
小助手提醒:MoonBit 构建系统 moon 昨天已正式在 GitHub 平台上开源!我们热忱地欢迎您来贡献!https://github.com/moonbitlang/moon
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。