认识 parsh
parsh 意为 parenthesis shell。它是一个命令行与脚本共用同一种小巧 Lisp 方言的 Linux Shell。
提示符为 $ ()。输入 str hello 并按 Enter 即可求值 (str hello)。输入未完成时 Enter 换行,Ctrl+J 始终换行。
(let name world)(defn greet (who) (str "hello, " $who))(greet $name)交互环境会显示返回值 "hello, world"。脚本使用完全相同的语法;在 Linux 上,表达式还可以启动真实程序、构建管道并重定向文件。
- 在 Linux 上开始使用,运行你自己的命令。
- 在线体验语言,无需安装。
- 了解语法,逐步学习函数与命令组合。
- 定义结构与宏,扩展语言本身。
- 阅读这些选择背后的设计原则。
对 AI 友好
Section titled “对 AI 友好”Shell 脚本常常把逻辑交给 awk、sed 或内联的解释器,每多一层就多一套引号规则要处理。parsh 把逻辑留在脚本里:算术、列表与映射、函数和循环像通用脚本语言一样可用,外部命令、管道与重定向则共用同一套语法。值不会被隐式拆词,也不会被悄悄做通配符展开,脚本写的是什么,执行的就是什么。
(let count (int (| (find . -name "*.rs") (wc -l))))(echo "rust files: $count; doubled: $(* $count #2)")生成和检查都只需要记住一套语法、一套规则,这正是 parsh 脚本对 AI 友好的地方。后续计划支持引入库,届时脚本可以像 Python 模块那样复用现成的代码。
parsh 目前是早期实现,版本为 0.1.0。原生版本支持 Linux 前台任务、交互程序、管道与隔离的后台任务。交互式 Tab 支持命令、路径和变量补全。引入库和持久化配置属于后续工作。浏览器终端提供语言核心、29 条 coreutils 命令、临时文件和命令组合。