(Or "ObjM2") An extension to Modula-2 for Cocoa and GNUstep software development. Objective Modula-2 follows the Objective-C object model and retains the bracketed Smalltalk message passing syntax used in Objective-C. Classes written in ObjM2 can be used within ObjC and vice versa. ObjM2 also retains Modula-2's data encapsulation features, namely nested modules with explicit import and export lists. Due to the strict type checking in Modula-2, ObjM2 can be considered a much safer programming language than is ObjC, yet losing none of the capabilities of ObjC.