Blocks
Indented lines form blocks, so nested logic stays visible without extra braces.
Small language, practical scripts
Tya pairs lightweight, indentation-based writing with straightforward command-line tooling and compile-to-C execution.
user =
name: "komagata"
age: 20
greet = user -> "Hello, " + user["name"]
if user["age"] >= 20
print greet(user)
Language shape
The page is organized around what the language feels like to read and write.
Indented lines form blocks, so nested logic stays visible without extra braces.
Use nil, booleans, numbers, strings, arrays, dictionaries, functions, errors, and modules.
if, elseif, else, while, array loops, dictionary loops, break, and continue.
Function literals, calls, implicit returns, explicit return, and multiple return values keep scripts compact.
Split code with module, load it with import module_name, and call members with module.member.
Documentation
Start with the guide, then open the current reference when you want exact behavior.