一句话GALA 是一种函数式优先、静态类型的 Go 替代语言,可转译为原生 Go 代码并兼容 Go 生态。
适合谁希望在 Go 项目中使用 sealed types、模式匹配、不可变数据、函数式集合与 monadic 错误处理的 Go 开发者和团队。
核心功能转译为 Go 并通过标准 Go 工具链生成原生二进制Sealed Types / 代数数据类型穷尽式模式匹配、解构、guard、嵌套模式与自定义 extractorOption / Either / Try monadic 错误处理默认不可变绑定与不可变结构体函数式不可变与可变集合零反射 JSON CodecRegex 模式匹配完整 Go 模块互操作LSP、GoLand/IntelliJ 插件与 Playground
功能与用途GALA 是 Go Alternative LAnguage,一种静态类型、函数式优先语言,转译为 Go。核心用途是在 Go 生态内提供 sealed types、穷尽式 pattern matching、Option/Either/Try、不可变数据、默认参数、零反射 JSON、Regex extractor、函数式集合、Future/IO 等能力。
支持语言/框架面向 Go 生态,生成 Go 代码并通过标准 Go 工具链编译为原生二进制;可直接使用 Go imports、Go types、Go functions 和任意 Go library。支持 Bazel 构建集成。
开源还是闭源正文提供 GitHub 链接,并说明可从源码构建,但未明确许可证。
自托管选项可下载 Linux、macOS、Windows 预构建二进制;也可 git clone GitHub 仓库后用 bazel build 从源码构建。Playground 为浏览器在线试用。
API/SDK提供标准库与语言级 API,包括 Option[T]、Either[A,B]、Try[T]、Future[T]、Tuple、ConstPtr、Codec[T]、Regex、IO[T]、不可变/可变集合及 Go interop。
集成与生态强调与所有 Go 模块开箱即用,兼容现有 Go modules、第三方 packages 和 tooling;支持 GoLand/IntelliJ 插件、LSP server、Bazel、Playground,并展示 Playground、状态机示例、日志分析器、HTTP server、TUI 等项目。
文档质量文档覆盖较完整,包括 Language Specification、Getting Started、GALA vs Go、Sealed Types、Pattern Matching、Immutability、Error Handling、Collections、Concurrency、JSON Codec、Regex、IO Effect、Go Interop、Dependency Management 等专题,并提供大量代码示例。
中国访问未知
适用场景状态机、AST/消息建模、需要穷尽匹配的业务逻辑、函数式错误处理管道、希望继续复用 Go 生态但需要更强类型表达力的后端或工具项目。
同类Go 原生开发、Rust、Scala、Haskell、samber/lo、IBM/fp-go、go-pattern-match