Hacker News 中文摘要

RSS订阅

我用Claude Code构建了一门编程语言 -- I built a programming language using Claude Code

文章摘要

作者Ankur Sethi利用Claude Code在四周内开发了一款名为Cutlet的新编程语言,并以自己的猫命名。该项目源代码和构建说明已发布在GitHub上。

文章总结

《我用Claude Code构建了一门编程语言》内容精要

作者Ankur Sethi在2026年1月至2月期间,利用Claude Code人工智能工具开发了一门名为Cutlet(以其宠物猫命名)的动态编程语言。该项目具有以下核心特点:

  1. 技术实现
  • 完全由AI生成代码,作者仅负责设计规范和测试验证
  • 采用C语言开发,兼容macOS和Linux系统
  • 具备数组/字符串处理、元操作符(@)、函数定义等基础功能
  • 集成REPL交互环境、标记清除垃圾回收机制
  1. 语言特性展示
  • 支持向量化运算:(temps-c @* 1.8) @+ 32
  • 提供zip操作:cities @: temps-f
  • 包含布尔索引过滤:cities[temps-f @> 75]
  • 内置reduce功能:@+ temps-c
  1. 开发方法论
  • 采用"代理工程"(agentic engineering)四要素:
    • 问题筛选:选择适合AI解决的确定性任务
    • 意图传达:编写详细规范文档(plans目录)
    • 环境构建:配置测试套件、静态分析工具等
    • 流程优化:自动化重复任务,提升AI效率
  1. 行业思考
  • 否认"软件工程已死"论,认为工程师需转型为AI协作者
  • 指出AI在视觉设计领域的局限性
  • 反思代码所有权问题,暂未添加开源许可证
  • 警示AI开发易成瘾性,建议设定使用边界
  1. 项目现状
  • 作为概念验证已完成主要目标
  • 尚缺文件IO、错误处理等关键功能
  • 作者计划转向其他代理编程实验

该项目展示了AI辅助开发的巨大潜力,同时也揭示了技术伦理、心理健康等亟待解决的问题。完整代码及示例可见GitHub仓库。

(注:精简了重复的代码示例、开发工具细节描述及个人网站导航信息,保留核心技术内容和行业观点)

评论总结

以下是评论内容的总结,平衡呈现不同观点:

  1. AI编程语言的实用性争议

    • 质疑观点:认为AI生成代码使编程语言失去意义,因为人类不再需要读写代码(评论1:"If you're not writing or reading it, the language, by definition doesn't matter")
    • 支持观点:AI可快速创建实用语言,适合特定用途(评论6:"you can now make a fully fledged, compiled language for basically every single purpose")
  2. 代码质量的担忧

    • 批评者指出AI生成的单元测试可能不可靠(评论8:"It's stupidly easy to make unit tests pass with broken code")
    • 实际案例显示AI生成的代码可能不符合需求(评论12:"the AI struggled to produce code that was functional to spec")
  3. 人机协作的价值

    • 强调人类在复杂系统设计中的核心作用(评论13:"the core value of the software wouldn't exist without a human at the helm")
    • 认为AI是高效工具(评论13:"I'd rather use power tools. The tools don't own the house")
  4. 创新性不足的批评

    • 认为AI只是复制现有模式(评论21:"spewing slop based on that vibe")
    • 期待真正突破性的创造(评论15:"build something uniquely novel that's not actually in the dataset")
  5. 开发体验的变化

    • 失去传统编程乐趣(评论25:"missing all the heart, the soul")
    • 上瘾性使用模式(评论27:"Just like a slot machine, you can never tell what might happen")
  6. 实用建议

    • CLI优先的开发策略(评论19:"CLI tool is cheaper, simpler, but still has a real human UX")
    • 对现有语言的依赖更高效(评论24:"inventing a new domain specific language might not be as efficient")