Sintaxe da Linguagem
Variaveis e Tipos
MelScript e dinamicamente tipada. Nao e necessario declarar tipos explicitamente. Use atribuicao direta para criar variaveis.
// Numeros
x = 10;
y = 3.14;
hex = 0xFF;
// Strings
nome = "MelScript";
simples = 'Aspas simples tambem funcionam';
// Template Strings (interpolacao)
mensagem = `O valor de x e ${x}`;
// Booleanos
ativo = true;
inativo = false;Arrays (Listas)
Armazene multiplos valores em uma unica variavel usando colchetes.
// Criando um array
numeros = [1, 2, 3, 4, 5];
frutas = ["Maca", "Banana", "Laranja"];
// Acessando elementos (indice comeca em 0)
primeiro = numeros[0];
print(frutas[1]); // Imprime "Banana"
// Modificando elementos
numeros[0] = 10;
// Tamanho do array
tamanho = numeros.length;Comentarios
// Comentario de uma linha
/*
Comentario de
multiplas linhas
*/Estruturas de Controle
Condicional (if/else)
if (x > 5) {
print("Maior que 5");
} else if (x == 5) {
print("Igual a 5");
} else {
print("Menor que 5");
}Loop (while)
i = 0;
while (i < 5) {
print(i);
i = i + 1;
}Funcoes
Defina funcoes usando a palavra-chave function.
function saudacao(nome) {
return "Ola, " + nome;
}
print(saudacao("Victor"));Parametros Padrao e Rest
// Valor padrao
function multiplicar(a, b = 2) {
return a * b;
}
// Rest parameters (variadic)
function listar(...itens) {
print(itens.length); // Acessa tamanho do array
}Operadores
| Tipo | Operadores |
|---|---|
| Aritmeticos | + - * / % |
| Comparacao | == != === !== < > <= >= |
| Logicos | && (E), || (OU), ! (NAO) |
| Ternario | condicao ? verdadeiro : falso |
Referencia de Palavras-Chave
function
Declara uma nova funcao reutilizavel.
Escopo global ou dentro de funcoes (closures).
Usado com 'return' para devolver valores.
return
Finaliza a execucao da funcao atual e especifica o valor a ser retornado para quem chamou.
Exclusivamente dentro de blocos 'function'.
Pode retornar qualquer tipo de dado (numero, string, etc).
if
Inicia um bloco condicional que so e executado se a expressao for verdadeira.
Controle de fluxo.
Frequentemente usado com 'else' e operadores de comparacao (==, >, <).
else
Define o bloco a ser executado caso a condicao do 'if' anterior seja falsa.
Deve vir imediatamente apos um bloco 'if'.
Pode ser encadeado como 'else if' para multiplas condicoes.
while
Cria um loop que executa repetidamente um bloco de codigo enquanto a condicao for verdadeira.
Loops e repeticoes.
Geralmente requer uma variavel de controle (contador) alterada dentro do loop.