Quite a few:<p>- Enumerated types<p>- Enumerations as array indexes<p>- Generics<p>- Classic OO with inheritance<p>- Untraced references in unsafe packages<p>- Unsafe packages for low level systems programming<p>- Exceptions<p>- Reference parameters<p>- Bit packing<p>- Since Modula-3 was a system programming language for SPIN OS, the runtime library was richer, including GUI components<p>There a few other features.