summaryrefslogtreecommitdiff
path: root/examples/mp3/MP3.gf
blob: cc4dd882a684e7c694a4f2e707b30c553cd0aa56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
abstract MP3 = {
  cat
    Move ;
    Song ;

  fun
    Play      : Song -> Move ;
    CanPlay   : Song -> Move ;
    WantPlay  : Song -> Move ;
    WhichPlay : Move ;

    ThisSong : Song ;
    This   : Song ;

    Yesterday : Song ;

----    MkSong : String -> Song ;

}