Skip to content

Commit

Permalink
Homework 2 : Exercise 7
Browse files Browse the repository at this point in the history
  • Loading branch information
ffesseler committed Apr 16, 2012
1 parent a35491f commit 6d4f3da
Showing 1 changed file with 25 additions and 1 deletion.
26 changes: 25 additions & 1 deletion mus/compiler.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,38 @@ var endTime = function (time, expr) {
}
};

var letterPitch = function (letter) {
switch (letter.toUpperCase()) {
case 'A':
return 9;
case 'B':
return 11;
case 'C':
return 0;
case 'D':
return 2;
case 'E':
return 4;
case 'F':
return 5;
case 'G':
return 7;
}
};

var convertToPitchNumber = function (pitch) {
var letter = pitch[0], octave = pitch[1];
return 12 + 12 * octave + letterPitch(letter);
};

var compileT = function (time, expr) {
var note = {};
if (expr.tag === 'note' || expr.tag === 'rest') {
note.tag = expr.tag;
note.start = time;
note.dur = expr.dur;
if (expr.tag === 'note') {
note.pitch = expr.pitch;
note.pitch = convertToPitchNumber(expr.pitch);
}
return [note];
} else {
Expand Down

0 comments on commit 6d4f3da

Please sign in to comment.