加州大学伯克利分校与德国企业软件巨头 SAP 联合推进的图形化编程语言平台 Snap!,于 2026 年 4 月 22 日在官方论坛公布了 Snap! 12 的 Beta 测试版,并明确计划在 2026 年 6 月 1 日推出正式生产版本。目前官方最新参考手册已同步升至 Version 12.0,整套代码在 GNU GPL 与 AGPL 协议下完全开源,参考手册则遵循 CC BY-NC-SA 4.0 许可证。

这绝不是又一个面向学龄前儿童的游戏积木玩具,而是一场延续十余年、旨在打破编程教学鄙视链的学术实验。大众对积木编程的刻板印象普遍停留在画几何图案或拼凑简易闯关游戏,认定图形化工具的上限只能到分支循环;Snap! 的推进则给出了明确判断:剥离错漏百出的语法标点负担之后,图形界面反倒能直击算法结构最核心的抽象本质。

披着积木外壳的Scheme哲学

Snap! 的前身是针对麻省理工学院 Scratch 进行底层重构的 BYOB(Build Your Own Blocks),由 Jens Mönig 与加州大学伯克利分校讲师 Brian Harvey 联手打造。早期的 Scratch 虽然降低了入门门槛,却存在致命缺陷:学生无法自行创建具有返回值的函数积木,导致复杂的程序逻辑只能依靠全局变量与广播机制相互拼凑,无法用于讲授严谨的计算概念。

Snap! 图形化编程积木构造示意
Snap! 图形化编程积木构造示意

为了填补这条断层,开发团队将经典计算机教材《计算机程序的构造和解释》(SICP)背后的 Scheme/Lisp 语言精髓注入图形引擎。Snap! 相比 Scratch 的核心语言突破,在于完整实现了第一类过程与高阶函数。用户可以通过界面中独特的圆环结构,将一整段代码块作为匿名数据存储在变量中,或者当作参数直接塞入 map、keep、combine 这类高阶积木中动态调用。

编程教学阶梯:从指令堆叠到函数抽象 入门级积木(如标准 Scratch) 控制维度:仅支持预设控制流与全局广播 函数能力:无内置返回值积木,缺乏闭包 数据结构:扁平列表,难以处理深度嵌套 定位边界:启蒙玩具,难以支撑高等算法 大学级积木(Snap! 架构) 控制维度:延续控制流、尾递归优化 函数能力:第一类过程,通过圆环传递代码块 数据结构:异构嵌套列表、多维矩阵 定位边界:无缝衔接大学先修与专业计算

在这一架构支持下,平台展区里出现的不是粗糙的动画拼贴,而是开发者完全利用积木搭建的 3D 渲染器、词格解密游戏 Wordle、A* 寻路算法,乃至能够运行经典二进制程序的 CHIP-8 虚拟机。它消解了敲键盘输入分号与括号的挫败感,却保留了最硬核的数据抽象与递归逻辑。

伯克利课堂里的八百万个项目实践

这门看似反直觉的语言并非停留在实验室内部自娱自乐,加州大学伯克利分校早已将其作为明星计算机通识课 BJC(The Beauty and Joy of Computing)以及美国大学先修课程 AP Computer Science Principles 的指定教学基石。它解决了一个长年困扰教育界的现实问题:直接上手 C++ 或 Java 会让大量非计算机专业学生在环境配置与语法排错中丧失信心,而纯粹的拼图玩具又无法传达真实的工程思维。

基于伯克利 BJC 体系开展的计算机教学课堂
基于伯克利 BJC 体系开展的计算机教学课堂

真实教学网络的辐射力印证了这条路线的可行性。早在 2012 至 2015 年间,BJC 教师培训项目就完成了 133 名教师的专业辅导,并在全美促成 89 门高中课程正式开设。随后在美国国家科学基金会(NSF)的资助下,该体系进一步进驻纽约市,覆盖了约 100 名高中教师2000 名在校学生

摆脱语法标点的纠缠,才能将思考的全部火力对准算法逻辑的核心。

根据项目维护者在 2024 年 9 月 7 日披露的运行数据,Snap! 云端已累计沉淀约 80 万个注册账户,全平台生成项目总数达到约 800 万个。即便没有商业机构那种激进的投流推广,社区每月仍稳定保持着约 2 万名活跃用户,单月更新与保存的项目数超过 10 万个,且以每周约 1 万名新用户的速度平稳递增。

Snap! 开源教学平台关键运行指标 800万 云端累计项目总数 80万 平台累计注册账户 10万 单月项目更新频次 1万/周 社区单周新增用户

纯前端运行的性能红线与学区藩篱

然而,纯粹的学术理想在落地现实时必须直面工程与体制的双重瓶颈。Snap! 依靠纯浏览器端的 JavaScript 引擎解析运行,无需配置本地开发环境,这一特性极大地降低了开箱体验成本,但也意味着它必须面对解释执行的性能天花板。当学生在项目里引入密集帧循环、大量舞台克隆体或逐像素的图像滤镜运算时,美国公立学校常见的低配置 Chromebook 往往不堪重负。

运行 Snap! 平台的校园低配终端设备
运行 Snap! 平台的校园低配终端设备

事实上,开发团队一直在同底层性能角力。早在 2020 年推出的 Snap! 6 中,系统便彻底重构了内存分发与变量查找机制,使得超大型工程的载入速度提升最高达 7 倍,一个代表性大型测试应用的内存开销更是一口气从 2GB 骤降至 80MB。尽管系统内置了忽略刷新率强制计算的 Turbo 与 Warp 模式,解释型积木在物理硬件上的算力损耗依然无法与编译型语言相提并论。

更隐蔽的阻力来自于校园合规制度。虽然 Snap! 天生支持无须注册账号的本地纯离线使用,能从物理链路截断学生个人数据的上传路径,但美国各地学区往往要求供应商统一签署定制化的学生数据隐私协议(SDPC)。由大学学者与少数工程师组成的小型维护团队根本没有法务精力逐个学区对接合同条款,这无形中将许多受制于死板采购规则的基础教育学校挡在了门外。

  • 风险.过于精简的学术研发编制难以支撑复杂的合规法务谈判,可能导致公共教育系统在采购准入中出现被动退守。

随着生成式人工智能迅速接管基础代码编写、Python 学习路径不断向低龄渗透,Snap! 的生存空间正在被两端挤压。但只要计算机科学的核心依然建立在递归、抽象与高阶逻辑之上,这套把 Scheme 灵魂藏进积木里的纯粹工具,就始终是初学者绕开语法泥潭、直抵思考本质的高效跳板。