主要观点:Goal 是一种用 Go 语言编写的可嵌入数组编程语言,有字节码解释器,命令行解释器可执行脚本或运行在交互模式。它在常见脚本任务如处理列数据或文本处理方面表现出色,也适合探索性编程。
关键信息:
- 安装只需安装 Go 编译器(Go 1.22 或更高版本),无额外依赖,可通过
go build./cmd/goal
构建解释器,运行goal
无参数打开 REPL,可安装rlwrap
提升体验。 - 有 SIMD 优化(默认在 amd64 上使用向量 SIMD 汇编实现,需 SSE CPU 扩展,可通过
-tags nosse4
禁用),默认构建只包含os
扩展包,-tags full
可启用所有标准扩展包。 - 提供多个链接,如文档、REPL 帮助、在线尝试、变更日志、Go API 文档等。
- 有多个示例代码所在目录,如
examples
、lib
、testdata/scripts
、scripts
等,还有示例脚本展示其用法。 - 有多种工具,如
ari
、goal2html
、gw
、jupyter kernel
、vim-goal
等。 - 有社区,如多个矩阵聊天房间和关于 Goal 的播客。
- 欢迎用户测试和报告 bug,可通过打开 issue、发送 pull request 或邮件提交补丁,还可查看实现笔记等开始了解内部。
重要细节: - 命令行解释器构建命令为
go build./cmd/goal
。 - SIMD 优化在 amd64 上的默认情况及禁用方式。
- 不同扩展包的启用方式及相关目录。
- 各个工具的用途和相关链接。
- 社区的矩阵聊天房间地址和播客信息。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。