Dans le langage Antescofo le processus « whenever » peut se représenter ainsi :
whenever (condition)
{
action
}
Il s’agit d’un déclencheur qui va exécuter une action à chaque fois qu’une condition est remplie. Par exemple
whenever (do_mi_sol)
{
ajouter si bémol
}
Ce qui se traduit par : toutes les fois où apparaitra la succession do – mi – sol : on ajoute un si bémol.
Ce processus, une fois lancé, sera tout le temps actif, jusqu’à ce qu’on le « tue » (abort do_mi_sol).
Dans l’exemple de ce premier événement la syntaxe est la suivante :
que je peux traduire par :
À chaque fois que 2eme voix de smerdiakov produit un pitch)
le spatialisateur n°2 reçoit un nombre aléatoire entre 0 et 360 qui détermine la position du son à 1m de distance
la variable « $alea_toupie2 » reçoit un nombre aléatoire entre 0 et 99
si ce nombre est plus petit que 25 (dans 25% des cas), alors le niveau de sortie du Leslie = 75 et la vistesse de rotation du Leslie est un nombre aléatoire compris entre 0 et 4 secondes auquel on ajoute 2 secondes.
sinon le niveau de sortie du Leslie = 0
Ou, pour le dire avec une syntaxe plus humaine : à chaque fois que la deuxième voix de smerdiakov produira une note on effectuera les opérations suivantes :
- calcul aléatoire de sa position spatiale (sur une sphère de 360°)
- calcul de la condition pour que le Leslie se déclenche (ici 25%)
- calcul aléatoire de la vitesse de rotation du Leslie (si la conditions 2 est remplie) entre 2 et 6 secondes.