我构建了一个能说 8 种人类语言的编程语言

发布: (2026年4月4日 GMT+8 20:10)
4 分钟阅读
原文: Dev.to

Source: Dev.to

问题

45 亿人并不流利使用英语。然而,每一种主流编程语言——Python、JavaScript、Java——都要求你在写下第一行代码之前先学习英语关键字。对于生活在圣保罗、孟买或北京的 12 岁孩子来说,ifwhilefunction 都是陌生的词汇。他们必须先学会一种新的人类语言,才能学习计算思维。

Zuse:一种多语言编程语言

Zuse 让你使用母语编程。相同的程序用四种语言编写后,会编译成完全相同的抽象语法树(AST),并且可以转译为 Python、JavaScript、Java、C# 或 WebAssembly。

示例程序

德语

WENN alter >= 18 DANN
    AUSGABE "Willkommen!"
ENDE WENN

英语

IF age >= 18 THEN
    PRINT "Welcome!"
END IF

印地语

अगर उम्र >= 18 तो
    दिखाओ "स्वागत है!"
अंत अगर

中文

如果 年龄 >= 18 则
    输出 "欢迎!"
结束 如果

所有四个版本产生相同的规范抽象语法树(AST)。

架构

8 Human Languages → Lexer → Canonical AST → 5 Backends

关键字从外部 JSON 配置文件加载,因此解析器和解释器只会看到规范化的 token。添加新语言实际上只需新增一个 JSON 文件。

添加新语言(示例:hindi.json

{
    "KW_WENN": "अगर",
    "KW_DANN": "तो",
    "KW_SONST": "वरना",
    "KW_AUSGABE": "दिखाओ"
}

特性

  • 完整面向对象 – 类、继承、多态
  • 错误处理try/catch
  • Lambda 函数 – 匿名函数
  • 2D 游戏引擎 – 精灵、碰撞检测、60 fps 游戏循环
  • 海龟绘图 – 绘制分形和星形
  • IDE – 语法高亮、带断点的调试器
  • LSP 服务器 – VS Code 集成
  • 包管理器 – 安装和分享 Zuse 包
  • 1086+ 自动化测试

与 Python 的互操作性

因为 Zuse 基于 Python 运行,你可以导入任何 Python 库:

BENUTZE pandas ALS pd
daten = pd.read_csv("data.csv")
AUSGABE daten.describe()

学生可以使用 AUSGABESCHLEIFE 学习编程,同一天就能用 pandas 分析真实数据或用 matplotlib 绘制图表。

灵感与哲学

名称来源于 Konrad Zuse,他在 1941 年构建了 Z3——世界上第一台功能完整的可编程计算机,并设计了 Plankalkül,第一种高级编程语言。他的简约哲学指引了本项目:

“Because ‘simple’ is simply simple.”

项目信息

  • GitHub:
  • License: GPL v3
  • 当前支持的语言: 德语 🇩🇪、英语 🇬🇧、西班牙语 🇪🇸、法语 🇫🇷、意大利语 🇮🇹、葡萄牙语 🇵🇹、印地语 🇮🇳、中文 🇨🇳

征求反馈

我期待你的反馈。我们接下来应该加入哪种语言? 🌍

在 GitHub 上尝试 Zuse 并点星 ⭐

0 浏览
Back to Blog

相关文章

阅读更多 »

编程语言 vs 脚本语言

在软件开发的世界里,programming language 和 scripting language 这两个术语经常被交替使用。然而,它们有着不同的目的……