anchor.diff:      calculated.
   
       Example: '{ <E-Major:iv> C:5 D Eb F (1:8, 2)[C:3 D:4 E] <:v> [i@C#:3 sBb D:4 Fbb]}'
  +
  +    Secondary chords:
  +      General notation for the chord:
  +          <NUMERAL>(ChordType)?/(NUMERAL)('-' MODALITY)
  +
  +      e.g. <F-Minor: IIIDom7/V-Melodic>, <C-Major, V/V>
   
       NOTE: Ties are in the syntax but not supported at this time.
   */
  
positive.code: durationFraction returns [f]:
      numerator=INT ':'  denominator=INT {$f = ($numerator.int, $denominator.int)};
  
  tonality returns [tonal]:
      tone '-' MODALITY {$tonal = self.lc.construct_tonality($tone.t, $MODALITY.text)};
  
  chordTemplate returns [ctemplate]:
      (tone '-' CHORDMODALITY {$ctemplate = self.lc.construct_chord_template($tone.t, $CHORDMODALITY.text)})
      | CHORDNUMERAL {$ctemplate = self.lc.construct_chord_template(None, $CHORDNUMERAL.text)}
      | COMMON_DURATION_CHORD_NUMERAL_LETTERS {$ctemplate = self.lc.construct_chord_template(None, $COMMON_DURATION_CHORD_NUMERAL_LETTERS.text)}
      ;
  
  harmonicTag returns[ht]:
  
negative.code:         ;
  
  pitch returns [p]
      locals [tt=None, alert=None, reg=None]:
      tone {$tt = $tone.t}
      (':' INT {$reg = $INT.int})? {$p=self.lc.construct_pitch($tt, $reg)};
  
  