6. Los datos: lo que sale del compilador
▶ Abrir en Aratu para escuchar y cambiar los ejemplos
El IDE habla con el compilador por unas pocas funciones exportadas por el
WebAssembly (aratu_compile, aratu_render, aratu_check, aratu_grid,
aratu_voices), intercambiando texto en JSON. Compilar devuelve los
mensajes, las partes, las perillas, las listas, las series y las líneas
escritas en vivo. Pedir compases devuelve los eventos. Un evento de nota se
parece a esto:
{"bar": 3, "beat": 1.5, "time": 4.75, "dur": 0.24, "part": "bajo",
"line": "bajo", "vel": 80, "note": 45, "from": 120, "to": 123}
| Campo | Qué es |
|---|---|
bar, beat |
el compás y el tiempo dentro de él, como está escrito |
time, dur |
cuándo suena y cuánto dura, en segundos desde el principio |
part, line |
la parte y la línea que lo tocan |
vel |
la fuerza, de 0 a 127, como en MIDI |
note |
la nota, como número MIDI (60 es el do central) |
drum |
en lugar de note, la pieza de la batería: kick, snare, closed-hat… |
acc |
1 cuando la nota se escribió en mayúscula |
param, value, glide |
en lugar de la nota, un cambio de parámetro; glide son los segundos en que el sonido se desliza hasta el valor |
from, to |
dónde está escrito el símbolo en el texto, para encenderlo cuando suena |
Los mensajes también son datos: cada uno tiene la gravedad (error o aviso), el trozo del texto y el texto en el idioma elegido. Un error no detiene la música: mientras el texto tenga un error, sigue sonando la última versión correcta, como un hot reload que rechaza una versión rota.