This book describes the programming language Modula-2. It is written for people who know the Pascal language and who wish to learn Modula-2 in terms of their knowledge of Pascal. The text is divided into three parts. Part 1 introduces concepts unique to Modula-2 and thus new to Pascal programmers. Part 2 describes differences from Pascal. Part 3 defines modules which provide basic programming facilities. The appendices include a glossary and syntax diagrams. Please note that this book does not offer a complete description of the Modula-2 language; it is intended to complement Niklaus Wirth's definitive book Programming in Modula-2 (Springer-Verlag, 1983). Some readers will recognize this book as being based upon the Volition Systems Modula-2 User's Manual. Enough has changed to merit its reappearance in this more dignified form: existing material has been reorganized to improve clarity; new material has been added to improve content. This book was written with the ASE text editor. The text was produced in camera-ready form on the Scenic LaserTezt composition system. I wish to thank the following people and organizations for their contributions to the development of this book: Volition Systems, for giving me the opportunity to write about Modula-2; Jim Merritt, for reviewing an early draft; the Institut far Informatik, ETH Zarich, for publishing a series of informative technical papers on Modula-2; and finally, all the pioneer users of Volition Systems Modula-2, for their patience and foresight and support.This book describes the programming language Modula-2. It is written for people who know the Pascal language and who wish to learn Modula-2 in terms of their knowledge of Pascal. The text is divided into three parts. Part 1 introduces concepts unique to Modula-2 and thus new to Pascal programmers. Part 2 describes differences from Pascal. Part 3 defines modules which provide basic programming facilities. The appendices include a glossary and syntax diagrams. Pleasel³+