2. O léxico: as palavras da linguagem
▶ Abrir no Aratu para ouvir e mudar os exemplos
O léxico é o conjunto de "palavras" (em inglês, tokens) que o Aratu
reconhece. Cada linha é uma declaração (statement). Dentro de chaves,
; separa declarações na mesma linha, e // começa um comentário até o fim
da linha.
| Tipo | Exemplos | O que é |
|---|---|---|
| nome (identificador) | melodia, bass, riff, temas |
letras, números e _, começando por letra |
| caminho | bass.reverb.mix, drums.hh, riff.inv |
nomes ligados por pontos |
| palavra-chave | tempo, meter, key, pattern, play, at, every, now, over, motif, row, list, from |
palavras reservadas, com sentido fixo, em inglês, português ou espanhol (tempo, andamento, pulso) |
| número | 120, 0.42, -1, 1.2 |
inteiros e decimais, com ponto |
| unidade | Hz, kHz, ms, s, % |
logo depois de um número |
| operador | =, :, ->, <->, ., , |
ligam as partes de uma declaração |
| música | dó4, c4, fá#, mib, Am, c, o, _, -, [ ], { | }, | |
os símbolos dentro de uma linha de música |
Os símbolos de música formam uma pequena linguagem dentro da linguagem: um
literal de música, como uma string ou um número são literais em outras
linguagens. O espaço separa tempos, | separa compassos, [ ] agrupa num
tempo, { | } sorteia, _ sustenta, - é pausa, + junta notas num
acorde, maiúscula é acento, ' é staccato, ^ é fermata, ? é acaso e
x4 repete.