The toolkit is designed to support the creation of Modula-3 program development tools and is structured around a compiler front-end which uses a public Abstract Syntax Tree (AST) to represent program source. A description of the (original) system can be found in: "An Extensible Programming Environment for Modula-3", Mick Jordan, Proceedings of the Fourth ACM SIGSOFT Symposium on Software Development Environments, Software Engineering Notes, 15, 6, Dec 1990. A number of tools are provided with the toolkit, vis: * (m3check) A tool that is a step towards an integrated, incremental program development environment for Modula-3. It includes a compiler front end, a tool to scan the file system for source file changes and recompile changed (and dependent) units, a pre-linker to analyse a program for completeness, and a primitive browser. On a DECstation 5000, if compiled with optimisation, it compiles at about 500 lines a second and, since it caches interfaces and is interactive, can provide a fast turnround syntax/semantic checker, before invoking "m3make". * (m3fe) (Just a) compiler front-end (syntax/semantic analysis), with optional checks for unused variables, uncaught exceptions, etc. The compiler can compile multiple sources in one invocation and compiles each interface once only. * (m3modgen) A tool to generate skeleton modules from interfaces. * (m3seegen) A tool to generate a textual form of a generic instantiation, with optional substitution of the generic formals by the actuals. The toolkit is designed to be extensible, by virtue of the AST and a collection of reusable compiler components. I expect to add more tools over time, and hope that others will be motivated to do so. The system is made available under the same licence terms as the SRC compiler. In addition the original Olivetti sources are covered by a separate, non-restrictive, copyright notice.