与类似平台的对比
概述
以下是与传统编程或脚本平台相比的一些区别和优势。
重点主要放在自动化、工具和日常工作负载上。
值得一提的是,对于 GUI 开发或原型设计,HTML/CSS/JS 非常好用,与生成式 AI 搭配尤其出色。
值得注意的事项
- Pure(1/2)提供 REPL,虽然比较简陋(不支持多行),但这是 dotnet 基于文件的应用所缺少的。
- 总体而言,Pure 与生成式 AI 配合良好,只需极少的调整。
表格对比
| 平台 | 类型 | 安装大小 | 稳定性 | 特性 | 局限 | 包管理/功能 | 适用场景 | 总结 |
|---|---|---|---|---|---|---|---|---|
| Python | 编程语言 | 版本太多。 | 相当稳定。 | 几乎任何功能都能在某个库中找到。 | 版本太多;环境臃肿。 | 包管理麻烦;可分发程序/终端脚本环境混乱。 | 敏捷软件;Web 后端;仿真原型。面向 CLI 或基于 Web;生态系统不太偏向桌面 GUI 应用(虽然有 PyGame 和 PyQt)。 | 缺少高级语言结构;支持无处不在。完成任务极其容易;与生成式 AI 配合良好。 |
| Perl | 编程语言 | 超级轻量、快速。 | (待定) | (待定) | (待定) | (待定) | 正是为完成任务而设计的(就语法而言),但其生态系统可能落后于 Python。从简洁性的角度看,可能已经过时。 | |
| PowerShell | Shell 脚本语言 | 安装和使用都极其简单。 | 相当稳定。 | 流程控制;可调用 .Net 函数。 | 语法古老。 | 自带齐全的功能,导入额外的非官方功能通常不是好主意。 | Shell 自动化。 | 适合流程自动化;语法不适合高效的 OOP 编程。 |
| Easy Shell | Shell 脚本语言 | 超级轻量、快速。 | 开发中;内部工具。 | 与命令行使用习惯一致;可调用 C# 函数。 | 不够成熟,缺少完整的 Shell 功能。 | 当前版本不支持;计划提供文件级支持 | 构建自动化;使用 C# 函数进行快速 REPL 求值。 | 适合构建脚本。 |
| C#(项目) | 编程语言 | 使用 IDE(Visual Studio 或 IntelliJ)进行正式开发,安装耗时极长。 | 只要避免重度 GUI 配置,就非常稳定。 | 安装包需要大量按钮点击(在 IDE 中)、命令或 .csproj 修改。自包含的依赖环境;快速且轻量。 |
非 DSL 的通用应用。 | 最适合强类型、高度精细的解决方案。 | ||
| C# 14(基于文件的应用) | 脚本语言 | Dotnet SDK。 |
高度稳定。 | NuGet 和 .csproj 引用。 |
完整的 C#;r: 指令;单文件执行 |
不能有多个脚本文件;函数和类必须在文件底部声明 | (主要是 Pure 做不到的事情) | 除了比 Pure 更稳定之外,不确定它适合做什么。 |
| Pure(原版) | 脚本语言 | 需要 .NET 8 (ASP.NET) Runtime;可分发程序约 100MB | 基于 C# .NET 8,很可能永远不会改变,非常稳定(取决于底层 C#);新增语言结构极少。可轻松迁移到正式 C#。 | 单文件、自由风格的 C# 脚本编写。 | 跟踪和多文件支持有缺陷;跨平台未经测试。 | 零麻烦的包管理和功能导入;始终是单文件。 | 短小(几百到几千行)的单文件脚本。 | 提供最高效的短代码片段编写能力。 |
| Pure 2 | 脚本语言 | 300MB | (待定) | 符合 POS。 | (待定) | 如果你想要更方便的版本控制、基于文本的脚本编写体验以及接近 C# 的感觉,它是更好的选择。 | ||
| Divooka | 编程语言 | 500MB | (待定) | 自带满足日常使用的齐全功能。 | (待定) | 日常脚本编写所需的一切。 |
文字对比
以下将表格重新组织为易读的 Markdown 小节。每个平台都以一致的方式呈现,字段标注清晰,并保留了原有意图和内容。
Python
类型: 编程语言 安装大小: 较大;版本和环境众多 稳定性: 相当稳定
优势
- 生态系统极其丰富;几乎任何需求都有对应的库
- 非常适合快速开发和原型设计
- 生成式 AI 集成和工具支持强大
局限
- 版本碎片化
- 运行时和环境臃肿
- 桌面 GUI 生态系统相比 Web/CLI 较弱
包管理 / 分发
- 麻烦且混乱
- 虚拟环境和分发往往很脆弱
最适合
- 敏捷软件开发
- Web 后端
- 仿真和原型设计
- 面向 CLI 或基于 Web 的工具
总结
- 无处不在,完成任务很容易
- 缺少高级语言结构
- 生产力高,但以长期的整洁性为代价
Perl
类型: 编程语言 安装大小: 超级轻量、快速 稳定性: 待定
优势
- 语法明确为完成任务而设计
- 极其简洁、富有表现力
局限
- 生态系统落后于 Python
- 在现代环境中被视为过时
包管理 / 分发
- 待定
最适合
- 文本处理和快速脚本编写
总结
- 从语法角度看非常高效
- 奉行简洁至上的理念,但生态系统正在老化
PowerShell
类型: Shell 脚本语言 安装大小: 安装和使用都非常简单 稳定性: 相当稳定
优势
- 内置流程控制
- 与 .NET 深度集成
- 自动化能力强大
局限
- 语法古老且冗长
- 不太适合结构化的 OOP
包管理 / 分发
- 自带齐全的功能
- 通常不建议导入非官方功能
最适合
- Shell 和流程自动化
总结
- 非常适合自动化
- 不适合大型或结构良好的程序
Easy Shell
类型: Shell 脚本语言 安装大小: 超级轻量、快速 稳定性: 开发中;内部工具
优势
- 熟悉的命令行语法
- 能够调用 C# 函数
- 快速的 REPL 式求值
局限
- 成熟度有限
- Shell 功能集不完整
包管理 / 分发
- 当前版本不支持
- 计划提供文件级支持
最适合
- 构建自动化
- 借助 C# 互操作进行快速脚本编写
总结
- 适用于构建脚本和快速求值的实用工具
C#(基于项目)
类型: 编程语言 安装大小: 庞大;IDE 配置(Visual Studio / IntelliJ)耗时 稳定性: 如果避免重度 GUI 技术栈,则非常稳定
优势
- 强类型和丰富的语言结构
- 面向大型系统的优秀工具
局限
- 配置门槛高
- 需要大量 IDE 操作或
.csproj编辑
包管理 / 分发
- 自包含的依赖模型
- 构建完成后运行时快速且轻量
- 安装包需要显式配置
最适合
- 非 DSL 的通用应用
- 大型、结构化的系统
总结
- 非常适合高度精细、强类型的解决方案
- 对于小任务开销较大
C# 14(基于文件的应用)
类型: 脚本语言 安装大小: 需要 .NET SDK 稳定性: 高度稳定
优势
- 完整的 C# 语言支持
r:指令和 NuGet 集成- 单文件执行模型
局限
- 不支持多文件脚本
- 函数和类必须在底部声明
包管理 / 分发
- 通过
.csproj引用使用 NuGet
最适合
- Pure 无法满足需求的情况
- 作为轻量级脚本编写的更稳定替代方案
总结
- 比 Pure 更死板
- 稳定性优先,灵活性其次
Pure(原版)
类型: 脚本语言 安装大小: 可分发程序约 100 MB;需要 .NET 8 (ASP.NET) Runtime 稳定性: 非常高(基于 C# .NET 8;语言改动极少)
优势
- 单文件、自由风格的 C# 脚本编写
- 可轻松迁移到正式的 C# 项目
- 编写短脚本极其高效
局限
- 跟踪和多文件支持有缺陷
- 跨平台行为未经充分测试
包管理 / 分发
- 零麻烦的包管理
- 始终是单文件
最适合
- 短脚本(几百到几千行)
- 以最小阻力快速编写
总结
- 最大化短代码片段的编写效率
- 最少的抽象,最快的思维速度
Pure 2
类型: 脚本语言 安装大小: 约 300 MB 稳定性: 待定
优势
- 符合 POS
- 对版本控制更加友好
- 接近 C# 的基于文本的脚本编写体验
局限
- 规范和评估待定
包管理 / 分发
- 尚未最终确定
最适合
- 希望获得类 C# 脚本编写体验并更好地配合版本控制系统的用户
总结
- Pure 朝着可维护性和工具支持方向的演进
Divooka
类型: 编程语言 安装大小: 约 500 MB 稳定性: 待定
优势
- 自带满足日常使用的齐全功能
- 内置功能广泛
局限
- 详情待定
包管理 / 分发
- 内置功能丰富
最适合
- 日常脚本编写和通用任务
总结
- 满足日常脚本编写需求的一体化解决方案