主要观点: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) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。