.TL 6. SCOT: A Score Translator .PP .B Scot is a language for describing scores in a fashion that parallels traditional music notation. Scot is also the name of a program which translates scores written in this language into .I standard numeric score .R format so that the score can be performed by .B Csound. The result of this translation is placed in a file called .I score. A score file written in Scot (named .I file.sc, say) can be sent through the translator by the command .i scot file.sc .e The resulting numeric score can then be examined for errors, edited, or performed by typing .i perf file.orc score .e Alternatively, the command .i perf file.orc -s file.sc .e would combine both processes by informing .B perf of the initial score format. .PP Internally, a Scot score has at least three parts: a section to define instrument names, a section to define functions, and one or more actual score sections. It is generally advisable to keep your score sections short to facilitate finding errors. The overall layout of a Scot score has three main sections: .i .ne 3 orchestra { .... } functions { .... } score { .... } .e The last two sections may be repeated as many times as desired. The functions section is also optional. Throughout this .B Scot document, bear in mind that you are free to break up each of these divisions into as many lines as seem convenient, or to place a carriage return anywhere you are allowed to insert a space, including before and after the curly brackets. Furthermore, you may use as many spaces or tabs as you need to make the score easy to read. Scot imposes no formatting restrictions except that numbers, instrument names, and keywords (for example, .I orchestra ) may not be broken with spaces. You may insert comments (such as measure numbers) anywhere in the score by preceding them with a semicolon. A semicolon causes Scot to ignore the rest of a line. .SH Orchestra Declaration Section .PP The orchestra section of a .B Scot score serves to designate instrument names for use within the score. This is a matter of convenience, since an orchestra knows instruments only by numbers, not names. If you declare three instruments, such as: .i .ne 2 orchestra { flute=1 cello=2 trumpet=3 } .e .B Csound will neither know nor care what you have named the note lists. However, when you use the name .I $flute, Scot will know you are referring to \fB instr 1\fR in the orchestra, .I $cello will refer to \fBinstr 2\fR, and .I $trumpet will be \fBinstr 3\fR. You may meaningfully skip numbers or give several instruments the same number. It is up to you to make sure that your orchestra has the correct instruments and that the association between these names and the instruments is what you intend. There is no limit (or a very high one, at least) as to how many instruments you can declare. .SH Function Declaration Section .PP The major purpose of this division is to allow you to declare function tables for waveforms, envelopes, etc. These functions are declared exactly as specified for .B Csound. In fact, everything you type between the brackets in this section will be passed directly to the resulting .I numeric score with no modification, so that mistakes will not be caught by the Scot program, but rather by the subsequent performance. You can use this section to write notes for instruments for which traditional pitch-rhythm notation is inappropriate. The most common example would be turning on a reverb instrument. Instruments referenced in this way need not appear in the Scot orchestra declaration. Here is a possible function declaration: .i .nd 5 functions { f1 0 256 10 1 0 .5 0 .3 f2 0 256 7 0 64 1 64 .7 64 0 i9 0 -1 3 ; this turns on instr 9 } .e