HN 日本語サマリー

← 一覧へ戻る
プログラミング

Teal – Luaの静的型付け方言

Teal – A statically-typed dialect of Lua (teal-language.org)

160 pointsby Lyngbakr64 コメント

要約

TealはLuaの静的型付け方言であり、型アノテーションを追加することでLuaの機能を拡張します。TypeScriptがJavaScriptの世界で果たした役割のように、Luaのミニマリズムと組み込みやすさを維持しながら、配列、マップ、レコード、インターフェース、ユニオン型、ジェネリクスなどをサポートします。Tealはコンパイラ`tl`として実装されており、`.lua`ファイルを生成します。ビルド管理ツールのCyanやIDE連携機能も提供されています。

全文翻訳

Tealプログラミング言語

[画像]

Tealについて

Tealは、Luaの静的型付け方言です。型注釈をLuaに拡張し、配列、マップ、レコード、インターフェース、ユニオン型、ジェネリクスを指定できるようにします。

JavaScriptの世界におけるTypeScriptと同様のニッチを埋めることを目指していますが、Luaのミニマリズム、ポータビリティ、組み込み性という精神に準拠しています。

コンパイラであるtlとして実装されており、.tlソースコードを.luaファイルにコンパイルします。

Tealの簡単な紹介

Tealコードがどのようなものか、簡単に見てみましょう。

local function add(a: number, b: number): number
   return a + b
end

local s = add(1, 2)
print(s)

…または、このページのソースコードをご覧ください!

Teal Playgroundを使って、ブラウザから直接Tealコンパイラを試すこともできます。

Tealのインストール

LuaRocksを使用している場合、コンパイラは次のようにインストールできます。

luarocks install tl

LinuxおよびWindows用の事前コンパイル済みバイナリも見つかります。

大規模なプロジェクトをビルドする場合、各ファイルを個別にtlで実行するのは避けたいでしょう。Teal用に設計されたビルドツールであるCyanの使用をお勧めします。

Visual Studio Codeとの統合のためにvscode-teal、NeoVimなどのためのteal-language-server、そしてその他もインストールできます。

ドキュメント

Tealのドキュメントはオンラインで閲覧できます。

Luaと型の歴史、Tealの動機、プロジェクトの進捗について説明した録画された講演がいくつかあります。

コミュニティ

開発はGitHubで行われています。

GitHubでホストされているコミュニティフォーラムがあります。Matrixの#teal-language_community:gitter.imでもチャットできます。

TealはHisham Muhammadによって開始されたプロジェクトで、多数の貢献者によって開発されており、Teal自体を使用して書かれています!

ライセンス

Tealはフリーでオープンソースのソフトウェアです。
そのライセンスはMITで、Luaと同じです。