mirror of
https://github.com/bjc/prosody.git
synced 2025-04-01 20:27:39 +03:00
1.3 KiB
1.3 KiB
Teal definitions and sources
This directory contains files written in the
Teal language, a typed dialect of
Lua. There are two kinds of files, .tl
Teal source code and .d.tl
type definitions files for modules written in Lua. The later allows
writing type-aware Teal using regular Lua or C code.
Setup
The Teal compiler can be installed from LuaRocks using:
luarocks install tl
Checking types
tl check teal-src/prosody/util/example.tl
Some editors and IDEs also have support, see text editor support
Compiling to Lua
GNUmakefile
contains a rule for building Lua files from Teal sources.
It also applies LuaFormat to
make the resulting code more readable, albeit this makes the line
numbers no longer match the original Teal source. Sometimes minor
luacheck
issues remain, such as types being represented as unused
tables, which can be removed.
sensible-editor teal-src/prosody/util/example.tl
# Write some code, remember to run tl check
make util/example.lua
sensible-editor util/example.lua
# Apply any minor tweaks that may be needed
Files of note
module.d.tl
- Describes the module environment.