1 个不稳定版本
0.1.0 | 2023年4月1日 |
---|
942 在 编程语言 中排名
每月23 次下载
在 steel-cli 中使用
12KB
Steel
Steel (静态类型嵌入式表达式语言) 是一种可以嵌入其他应用程序的脚本语言。
Steel 正在建设中,尚未准备就绪
它被设计成
- 易于使用且安全,可以从其他语言中使用。
- 简单易用,但具有严格的静态类型安全性。
- 功能完整,无需更新运行时即可运行新脚本。
目标
目标是提供一个简单的语言,让最终用户可以在其中编写小型或中型脚本,作为更大应用程序的一部分运行。它是稳定的,因此脚本和运行时版本之间没有不匹配,且无需不断更新。
简单、安全和易于从其他语言使用使得 Steel 作为脚本语言很方便。例如,在视频游戏中提供修改功能,或允许用户在金融或科学模型中提供自定义计算。
这些是很好的用例,但有很多替代方案,为什么选择 Steel?
如果您更喜欢严格的静态类型,希望在编写脚本时而不是运行时告诉用户他们的错误,那么您可能会选择 Steel 而不是许多其他可嵌入的脚本语言。它还允许预编译,除了解释模式之外。
但 Steel 真正发光的地方是脚本需要在多个语言中嵌入运行。Steel 通过其设计选择努力嵌入到许多语言中,最重要的是提供稳定的语言,使任何 Steel 脚本都能在任何嵌入环境中运行。
这样的多语言用例的一个例子是用户脚本,可以在后端运行,也可以在浏览器或手机应用程序中运行。支持离线模式并节省硬件成本。
另一个例子是跨系统工具中的脚本,如消息代理或消息编码提供脚本。Steel 最初是为了这样的工具而创建的,即Apivolve。
非目标
目标是不是提供所有最新的技巧,扩展到数千行,或编写独立的服务。除非宿主应用程序公开,否则没有文件或网络访问。
依赖项
~8–16MB
~190K SLoC