Footnotes

1. Most behaviors will stop at time 1, warped according to *warp* to some real time, but this is by convention and is not a direct specification.

2. Since XLISP does not support multiple value returns, multiple value returns are simulated by having the function assign additional return values in a list to the global variable *rslt*. Since this is a global, it should be inspected or copied immediately after the function return to insure that return values are not overwritten by another function.

3. To be consistent, a blank line ought to specify zero attributes and generate a note that inherits all of its attributes from the previous one. Adagio is intentionally inconsistent in this respect.

4. My TX816 Owner's Manual gives an incorrect format for the change parameter sysex command (according to the manual, there is no data in the message!) I am assuming that the data should be the last byte before the EOX and that there is no byte count. If you are reading this, assume that I have not tested this guess, nor have I tested this example.

5. This is not part of standard XLISP nor is it built-in. Nyquist defines it though.

6. This is not a standard XLISP 2.0 function.

7. This is not a standard XLISP 2.0 function.

8. This is not a standard XLISP 2.0 function.

9. This is not a standard XLISP 2.0 function.

10. This is not a standard XLISP 2.0 function.

11. This is not a standard XLISP 2.0 function.

12. This is not a standard XLISP 2.0 function.

13. This is not a standard XLISP 2.0 function.

14. This is not a standard XLISP 2.0 function.