Software » Cosy

Choosing Symbols for a Compact Musical Syntax

Here's a few principles I've used to determine how Cosy's syntax should be designed:

Given these principles, let's take a look at the alphabet and how it's mapping to musical concepts in Cosy.

A → pitch A [aug → augmented interval]
B → pitch B
C → pitch C
D → pitch D [dim → diminished interval]
E → pitch E [ei → eighth note duration]
F → pitch F [fo → forte intensity]
G → pitch G
H → duration half
I → numeric interval in semitones (i12 is an octave)
J → imaginary constant sqrt(-1) [tentative, for graphics and experimental music]
K → unused
L → unused
M → Major or minor interval (M3 is major 3rd, m3 is minor 3rd)
N → unused
O → unused
P → intensity piano [pN → perfect interval (p5 is perfect fifth)]
Q → duration quarter
R → duration thirty-second ['t' taken by triplet, 'h' by half, 'i' by interval]
S → duration sixteenth
T → duration modifier triplet
U → numeric duration value (u480 is 480 MIDI ticks) [deprecated, will switch to 'dur' / 'duration']
V → numeric velocity value (v100 is the MIDI velocity 100) [will also support 'vel' / 'velocity']
W → duration whole note
X → duration sixty-fourth note ['s' taken by sixteenth, 'i' by interval]
Y → numeric pitch (frequency) value (y60 is MIDI pitch 60) [deprecated, will switch to 'pit' / 'pitch']
Z → unused

For the most part, this mapping works out ok. But some things I don't like:

The weird mappings for thirty-second and sixty-fourth notes don't bother me too much, because these durations are not that common, and the mappings for these actually feel somewhat intuitive to me.

At first I imposed the requirement that all note names must have an octave number (C4, D3, F#5, etc), and eighth note was represented as 'e'. But very often a pitch is in the same octave as the previous pitch, so this resulted in a lot of extra typing that goes against what Cosy is all about (being as concise as possible). So it was a very nice improvement to make octave numbers optional. At this point I had to choose another symbol for eighth note. I tried 'i' but it didn't feel right. I decided I should always use the first letter or letters of a musical term, so I ended up going with 'ei' for eighth note.

I used similar reasoning for forte being 'fo'. It is possible to spell out 'eighth' and 'forte' instead of 'ei' and 'fo', but I prefer the double letter forms because I want to type as little as possible.