What is Modula-3 ?
Modula-3 is a modern programming language that derives from Mesa, Modula-2, Cedar, and Modula-2+. In addition, it resembles the languages Pascal, Oberon, and Euclid. The language was first designed in1989 and later revised in 1991. Except for a few minor corrections, the language definition has been stable over the succeeding years.
The goal of Modula-3 is to be as simple and safe as possible, at the same time, meeting the needs of modern systems programmers. Instead of exploring new features, developers studied the features of the Modula family that have prove to be effective and tried to simplify them into a harmonious language. They found that most of the successful features were aimed at one of two main goals: greater robustness, and a simpler, more systematic type system.
Modula-3 supports interfaces, objects, generics, lightweight threads of control, the distinction of unsafe code, garbage collection, exceptions, and subtyping. It was designed to be much simpler than other languages with similar power, in order to facilitate the construction of large, robust applications.
Experienced programmers may recognize this pattern from Java. Developers did not do this accidentally. Though the syntax of Java is derived from C++, many key improvements come directly from Modula-3. An implementation from the Critical Mass version allows mix-and-match integration with Java.
Interest in Modula-3 is growing, both in industry and in academics. Due to recent activity, a second revision of the language may result, incorporating such particulars as support for Unicode. Like Linux, Modula-3 is a powerful piece of software built and maintained by enthusiastic programmers.