Teal Logo

The Teal programming language

About Teal

Teal 是 Lua 的一个静态类型方言。它通过类型注解扩展了 Lua,允许你指定数组、映射和记录,以及接口、联合类型和泛型。

它的目标是填补类似 TypeScript 在 JavaScript 世界中的角色,但坚持 Lua 的极简主义、可移植性和可嵌入性的精神。

它作为一个编译器 tl 实现,该编译器将 .tl 源代码编译成 .lua 文件。

A taste of Teal

这里有一个 Teal 代码的快速示例:

**local function** add(a: number, b: number): number
  **return** a + b
**end**
**local** s = add(1, 2)
print(s)

...或者查看此页面的源代码!

你也可以使用 Teal Playground 直接在浏览器中玩转 Teal 编译器。

Install Teal

如果你正在使用 LuaRocks,你可以使用以下命令安装编译器:

luarocks install tl

你也可以找到适用于 Linux 和 Windows 的 预编译二进制文件

为了构建更大的项目,你可能不想单独地在每个文件上运行 tl。我们建议使用 Cyan,这是专为 Teal 设计的构建工具。

你还可以安装 vscode-teal 以集成 Visual Studio Code,teal-language-server 以支持 NeoVim 和其他编辑器,以及更多

Documentation

你可以在线浏览 Teal 文档。

以下是一些讨论 Lua 历史和类型、概述 Teal 背后的动机并讨论项目进展的录制演讲:

Community

开发在 GitHub 上进行。

我们有一个由 GitHub 托管的 社区论坛。你也可以通过 Matrix 在 #teal-language_community:gitter.im 上与我们聊天。

Teal 是一个由 Hisham Muhammad 发起的项目,由越来越多的贡献者开发,并且本身是用 Teal 编写的!

License

Teal 是免费和开源软件。它的 license 是 MIT,与 Lua 相同。