Tipos de dados
A linguagem Tenda oferece diversos tipos de dados que você pode usar para armazenar e manipular informações.
Número
Números em Tenda são representados como ponto flutuante de 64 bits (precisão dupla), permitindo trabalhar com inteiros e decimais.
Você pode utilizar os operadores matemáticos usuais: adição (+), subtração (-), multiplicação (*) e divisão (/).
Além disso, a linguagem suporta diferentes formatos numéricos:
- Decimal:
42,3.14,2.7e-3 - Binário:
0b1010_0101 - Octal:
0o755 - Hexadecimal:
0xDead_Beef
Você pode usar sublinhados (_) para melhorar a legibilidade dos números.
seja binário = 0b1101_0010
seja octal = 0o755
seja hexadecimal = 0xDead_Beef
seja decimal = 1_000_000
seja flutuante = 3.14e-10
exiba("Binário: " + binário)
exiba("Octal: " + octal)
exiba("Hexadecimal: " + hexadecimal)
exiba("Decimal: " + decimal)
exiba("Flutuante: " + flutuante)
Texto
Textos são sequências de caracteres delimitadas por aspas duplas ("). Você pode concatenar textos com o operador + e usar sequências de escape como \n (nova linha) e \t (tabulação).
Lista
Listas armazenam coleções ordenadas de elementos e são criadas com colchetes ([]). Os elementos são separados por vírgulas, e o acesso é feito por índices numéricos a partir de 0.
seja lista = [1, 2, 3, 4, 5]
seja primeiro_elemento = lista[0]
exiba("O primeiro elemento da lista é: " + primeiro_elemento)
Dicionário
Dicionários são coleções de pares chave‑valor, criados com chaves ({}). As chaves geralmente são textos.
Você pode acessar os valores por colchetes ou pelo operador de ponto (.):
seja dicionário = { "nome": "Tenda", "versão": 1.0 }
seja nome = dicionário["nome"]
seja versão = dicionário.versão
exiba("Nome: " + nome + ", Versão: " + versão)
É possível verificar se uma chave existe usando o operador tem:
seja dicionário = { "nome": "Tenda", "versão": 1.0 }
seja chave = "nome"
se dicionário tem chave então
exiba("A chave " + chave + " existe no dicionário.")
senão
exiba("A chave " + chave + " não existe no dicionário.")
fim
Lógico
Valores lógicos representam condições verdadeiras (verdadeiro) ou falsas (falso). Use os operadores e, ou e não para construir expressões lógicas.
seja a = verdadeiro
seja b = falso
seja resultado = a e b
exiba("O resultado da operação lógica é: " + resultado)
Função
Funções são blocos reutilizáveis de código. Elas podem ser nomeadas ou anônimas, e recebem parâmetros via parênteses.
Funções anônimas podem ser definidas usando a palavra-chave função:
Intervalo
Intervalos representam sequências numéricas com início e fim. Você pode usá-los em laços de repetição com o operador até.
Data
Tenda oferece suporte a datas com fusos horários. Para obter a data e hora atual, use Data.agora().
Nada
O valor Nada representa ausência de valor. É útil para inicializações ou retornos vazios.