Lua용 정적 타입 방언 'Teal' 공개
원제 Teal – A statically-typed dialect of Lua
126 포인트댓글 55
Key Point
Lua는 게임·임베디드 시스템에서 널리 쓰이는 언어인데, Teal은 실행 시간 오버헤드 없이 정적 타입 검사를 추가해 대규모 프로젝트의 유지보수성을 높인다.
핵심 요약
- Teal은 Lua에 타입 주석을 추가한 정적 타입 방언으로, 배열·맵·레코드뿐만 아니라 인터페이스·유니언 타입·제네릭 등을 지원한다.
- JavaScript 세계의 TypeScript처럼 Lua에 타입 안정성을 제공하면서도 Lua의 최소성·이식성·임베더빌리티 정신을 유지하도록 설계됐다.
- tl 컴파일러로 .tl 소스 코드를 .lua 파일로 변환하며, 브라우저에서 직접 사용할 수 있는 Teal Playground도 제공한다.
- LuaRocks를 통해 컴파일러를 설치할 수 있고, Linux·Windows용 미리 컴파일된 바이너리도 제공된다.
- 대규모 프로젝트는 Teal용 빌드 도구인 Cyan을 사용하는 것을 권장한다.
- Visual Studio Code·NeoVim·다른 편집기를 위한 언어 서버 및 플러그인이 지원된다.
- Hisham Muhammad가 시작했고 증가하는 수의 기여자가 개발 중이며, Teal 자체로 작성되어 있다.
- MIT 라이선스(Lua와 동일)의 오픈소스 소프트웨어이며, GitHub 커뮤니티 포럼과 Matrix 채널에서 지원한다.