The book class: Book.java

The song class: Song.java

The ISame interface: ISame.java

The ISelect interface: ISelect.java

The predicate for old books: OldBook.java

The predicate for books by GBS: GBSBook.java

The predicate for long songs: LongSong.java

The list interface: AList.java

The empty list: MTList.java

The nonempty list: ConsList.java

The examples and tests: AListTest.java