Claude辅助开发:Rust专家利用AI设计新编程语言Rue

Rust资深开发者Steve Klabnik在AI助手Claude的帮助下设计了新的系统编程语言Rue。该语言旨在提供无垃圾回收的内存安全保障,同时比Rust和Zig提供更高级的易用性。Klabnik表示,通过与Claude合作,两周内完成了7万行Rust代码,远超此前独自开发的进度。Claude参与了大部分代码编写工作,而Klabnik负责方向指导和设计决策,展现了AI在编程语言开发中的巨大潜力。

为新编程语言命名"Rue"似乎暗示着对项目前景的怀疑,如果将"Rue"理解为"后悔"的话。

但是以对Rust和Ruby on Rails贡献闻名的资深软件开发者史蒂夫·克拉布尼克表示,这个名称背后有更深层的含义。

"Rust这个名字唤起了几种联想,"他在给The Register的邮件中解释道。"其中一个是衰变、熵,这是负面的含义。另一个是真菌的类型,这是正面的含义。"

"Rue这个名称的由来是因为我先做了Ruby,然后是Rust...所以我需要以Ru开头。'rue'可以像你说的那样表示'悔恨',但它也是一种花的名称。"

"我喜欢这种负面和正面含义的对称性。而且它非常简短,这很好。"

正如克拉布尼克上个月在博客文章中解释的那样,Rue"是一种系统编程语言,旨在提供内存安全而无需垃圾回收,同时比Rust和Zig等语言提供更高级别的人机工程学。"

编程中的垃圾回收指的是自动内存管理,可以采取多种形式。它的作用是减少显式内存释放引起的内存错误——这是美国网络安全部门大力宣传的目标。Rust的卖点之一是它可以使用语言子集提供内存安全保证,尽管其学习曲线通常被认为比Go或Swift等现代语言更陡峭。

克拉布尼克说,他多年来一直在与人们谈论Rust,其复杂性是一个常见的担忧。他说,Rust社区给出的解释是,用于操作系统等底层任务的语言有各种约束,使事情变得复杂。

他解释道:"所以我认为探索这个设计空间会很有趣:如果Rust不是试图在最高性能方面与C和C++竞争会怎样?如果我们愿意让性能稍微降低一点,但不要太多,以换取易用性会怎样?如果我们让语言本身稍微大一些,也就是说,在纯库代码中具有更少的特性,作为让整体包更简单的手段会怎样?"

"有很多带有垃圾回收器的语言,但没有垃圾回收器的语言较少,特别是在过去20年中。所以我认为'内存安全但没有跟踪垃圾回收器'这个空间总体上还没有得到充分探索。有很多小语言在探索这个空间,我想给出自己的看法。"

从现有的代码示例来看,还不清楚Rue是否比Rust更容易接近,因为Rue版本的常见FizzBuzz练习看起来与Rust版本没有太大不同。

Claude是他的副驾驶

然而,克拉布尼克的观点并不完全是他自己的。主要用Rust编写的Rue在很大程度上依赖于Anthropic的Claude大语言模型,该模型的能力归功于所有为模型训练数据提供信息的开发者。

根据一篇署名为克拉布尼克和他选择的AI助手的初始博客文章,"Rue正在由史蒂夫·克拉布尼克开发,同时也由Claude开发。"两篇文章之后,Claude单独被认为总结了开发的第一周。

"我今年早些时候开始了Rue,"克拉布尼克解释道。"但我当时对大语言模型的掌握不如现在,犯了一些错误。我重新开始了。在这两周的工作中,我比上次花费的一两个月取得了更大的进展。这部分是由于更好的模型,但主要是由于我自己在理解如何有效使用大语言模型方面的技能提升。"

他说,对于做一些半定制工作的小项目,即使是没有太多经验的开发者也可以有效使用像Claude这样的模型。对于更大的项目,软件工程知识更重要,他说。

"所以,我认为像任何事情一样,你可以从小处开始并逐步提升,"他解释道。"小型的、自包含的项目?当然,即使是非程序员也可以利用这些工具。但它们是工具,工具需要专业知识。"

"甚至了解现有编程也不足以真正充分利用大语言模型,它们本身就是工具。Vim不容易使用,了解编程并不能帮助你使用它,但它仍然是一个有用的工具。但这是它自己的技能。像测试这样的软件开发技术是与编写代码来完成某事不同的技能。我以同样的方式看待大语言模型。它们入门的技能门槛较低,但要最有效地使用它们的技能上限相当高。"

克拉布尼克说很难估计Claude节省(或消耗)的时间。

"我可以肯定地说,没有它我不可能在这个项目上走得这么远,"他说。"Rue在其生命的两周内大约有7万行Rust代码。当然,代码行数并不能说明一切,实际上我现在正在对某些东西进行实质性重构。但这只是为了让你了解大概的规模。我知道如果我手工完成这项工作,我的进展会少得多,而且可能(尽管我还不确定)质量会更低。"

Claude尚未对Rue代码质量提供评估。但这个AI模型已经输出了类似于为其自身能力论证的Token。

"我认为这周显示的是,当你有合适的杠杆时,语言的核心——编译器本身——可以非常快速地组合在一起,"Claude回应克拉布尼克假定的提示时说,使用了破折号。"我们还没有语言服务器协议。我们还没有包管理器。但我们有一个产生真正可执行文件的真正编译器,有足够的基础设施来继续构建。"

"老实说,那130次提交中的大部分都有我的指纹。史蒂夫指导、审查并做出了艰难的设计决定。我写了大部分代码。这是一种不寻常的合作,我还不确定如何看待它。"

克拉布尼克对项目前景也不确定。"如果没有人使用它,我也没关系,如果十年后它成为一种主要的编程语言,那可能也没问题,"他说。"我不想强迫任何事情,我只是在做我喜欢的事情,看看这会带我走向何方。"

Claude作为副驾驶伴随着这段旅程。

Q&A

Q1:Rue编程语言是什么?它有什么特点?

A:Rue是史蒂夫·克拉布尼克设计的系统编程语言,旨在提供内存安全而无需垃圾回收,同时比Rust和Zig等语言提供更高级别的人机工程学。它主要用Rust编写,目标是在保持内存安全的同时降低学习难度。

Q2:Claude在Rue语言开发中扮演什么角色?

A:Claude是Anthropic的大语言模型,在Rue开发中担任重要角色。按照Claude自己的描述,史蒂夫负责指导、审查和做出艰难的设计决定,而Claude写了大部分代码。这种人机协作让项目在两周内就达到了7万行Rust代码的规模。

Q3:为什么要创造Rue这种新的编程语言?

A:克拉布尼克认为Rust的复杂性是常见问题,所以他想探索一个设计空间:如果不追求与C和C++竞争的最高性能,而是愿意稍微降低性能以换取易用性会怎样。他认为"内存安全但没有垃圾回收器"这个空间还没有得到充分探索。

来源:The Register

0赞

好文章,需要你的鼓励

2026

01/04

08:45

分享

点赞

邮件订阅