打开网易新闻 查看精彩图片

1968年,英国某中学机房。一个13岁少年在绿色横线纸上写下14行指令,塞进信封寄往远方。两周后,他收到一叠打印纸——程序跑通了。这门叫CESIL的语言,全英国没几个人听过,却让他第一次摸到了计算机的肋骨。

人学外语像爬珠峰,学编程语言却像逛自家后院。这是作者Chris Ling的真实体验:法语恨之入骨,德语勉强够用,威尔士语直接投降。但给他一门新编程语言?1到2年就能摸透底细。这种反差本身,就藏着计算机教育最反直觉的秘密。

14条指令,两周生死线

14条指令,两周生死线

CESIL全称Computer Education in Schools Instruction Language,直译"学校计算机教育指令语言"。设计初衷很简单:让英国中学生理解CPU在干什么,而不是被高级语言的糖衣炮弹迷惑。

整个语言只有14条指令。什么概念?现在小学生学的Scratch积木块都不止这个数。但少即是多——每条指令都对应真实的机器操作:加载、存储、跳转、算术。作者写下的第一个程序是给三个数字排序,如今用Python三行搞定的事,当时要拆成十几步机器思维。

更折磨的是开发流程。代码手写→打孔卡片→邮寄处理→IBM 370批处理→打印结果寄回。完整周期:14天。打错一个字母?再等两周。这种环境下,"干跑"(dry-run)成了肌肉记忆——在脑子里逐行模拟执行,比任何调试器都管用。

打开网易新闻 查看精彩图片

作者后来找到门路,把周期压缩到2天。但核心训练已经完成:对机器细节的敬畏,对资源效率的敏感,被14天延迟刻进了DNA。

高级语言的"舒适陷阱"

高级语言的"舒适陷阱"

作者毫不客气地指出:从Python、JavaScript甚至Lisp入门的人,缺了这层底裤。

高级语言像全自动相机,CESIL像胶片机的机械快门。前者让你专注构图,后者逼你理解光圈、快门、感光度的三角关系。当硬件资源近乎无限时,这种"理解"似乎多余——直到你遇到性能瓶颈、内存泄漏、或者需要跟硬件对话的时刻。

作者的观点很直接:贴近CPU的学习经历,是数据结构和代码设计的地基。不是要你回去写汇编,而是要知道" plentiful nowadays"的资源不是天上掉下来的,每一层抽象都在付出代价。

这种论调在2024年显得有点"爹味",但数据侧面印证:系统编程、嵌入式、高性能计算领域,懂内存布局、缓存行、指令流水的工程师依然稀缺且高价。CESIL的14条指令,本质上是在教"计算机的物理学"。

打开网易新闻 查看精彩图片

古董语言的僵尸复活

CESIL早已退出历史舞台,但尸体还在发热。

作者提到,现在能找到.NET、Java、JavaScript、Python写的CESIL模拟器。cesil.org这个网站还在运营,供人体验打孔卡片的仪式感。作者自己也写了一个JavaScript解释器——当年等两周的程序,现在浏览器里秒开。

这种复古编程的复兴,有点像黑胶唱片或机械键盘。不是真的想回去,而是想触摸那个"每个比特都很贵"的年代。对年轻开发者来说,跑一遍CESIL可能比读十本《计算机组成原理》更直观:原来变量不是魔法,是内存地址的别名;原来循环不是语法糖,是跳转指令的包装。

作者列出的语言清单还在继续:从CESIL出发,后面还有一长串名字等待被回忆。但第一个总是特殊的——它定义了你理解后续一切的坐标系。

你现在学编程的第一门语言是什么?如果重来,你愿意从14条指令开始,还是直接拥抱Python的温柔乡?