Part I

Practice

The average mathematician should not forget that intuition is the final authority.

—J. Barkley Rosser

This part constitutes a gentle and largely informal introduction to our design description language. Its purpose is to introduce programmers and software designers to effective means of modelling programs and design patterns without requiring any mathematical training.

Throughout this part we will adhere to the following writing conventions:

– Starred sections (e.g., 6.4: * Modelling Implementation Minutia) include advanced reading which can be skipped without affecting the readability of most of the remainder of the book.

– Much of what will be presented is set outside the main text and captioned as follows: Legends introduce symbols, Codecharts are specifications in LePUS3, programs are valid expressions in a programming language, tables depict tabular information, and figures include anything else that need be set apart from the main text.

– Source code follows Knuth's conventions with keywords in boldtypewriter.

– Codechart symbols (Iterator, JavaRMIImp) appear in Euclid typeface.

– When a new term is introduced or defined it appears in bold typeface

Get Codecharts: Roadmaps and blueprints for object-oriented programs now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.