PMOS is a large library of Modula-2 modules, distributed in source form. Its primary purpose is to make it easy to write multitasking programs for real-time and/or embedded applications.
Very good series of exercises to learn Modula-2. Exercise code is available online so that you can focus on the questions. Topics are clearly addresses in independent questions.