MrC is a recent compiler for the PowerPC created by either Motorola or Apple-- which one did it is ambiguous, and it was probably both working together. It will be the final compiler used in Apple's MPW development environment once MPW is left behind in the move to Mac OS X (( apple recently abandoned MrC in favor of gcc, despite claims by some that MrC was a superior compiler, and will apparently be optimising gcc using code from MrC )) and as of this writing is pretty much the compiler you are expected to use if you want support for Alti-vec under Mac OS 9. When compiling C++ this compiler is known as MrCpp.

Damn case insensitivity...

MRC: military acronym for Major Regional Contingency

An MRC is, effectively, a war--the commitment of military assets to a specific regional theater of operations for the purpose of engaging in armed conflict. Current strategic thinking in the US military is built around the so called two-MRC or two-war scenario, which requires the United States to be able to fight and win in two separate but simultaneous MRCs or moderate size. It is generally assumed that one MRC would take place in the Middle East, the other most likely involving Korea.

This thinking, a move away from American commitment to a single, major, Europe-focused conflict with the Soviet Union, began to evolve after the collapse of the USSR and the Gulf War. Originally the two-MRC scenario was designed to identify a kind of "floor" below which it would be dangerous to cut military spending. This was a key factor in the bottom up review of the military conducted during the early years of the Clinton Administration.

It is interesting to note that rumblings emanating from the Defense Department (now under the direction of Secretary Donald Rumsfeld, a Bush Administration appointee) suggest that the new administration is considering a move away from the idea of fighting in MRCs and instead developing a smaller, more sophisticated, more nimble force which could be deployed to quell smaller regional distrubances, as was the aim with the Clinton Administration's Kosovo operations.

As mcc says, MrC/MrCpp was a compiler included with MPW, the free command-line development environment from Apple.

MrC was really great in its time. Until after new versions ceased to be released (the last was 5.0d4), it pretty reliably beat CodeWarrior in code optimization and/or code size (whichever you choose). Just by looking at disassemblies of internal Mac OS routines, you can see some of its neater features, such as early returns from a function that aborts on a simple parameter sanity check.

MrC was an original compiler, started from scratch on a new C++ framework. There were several compilers used in the early days of PowerPC Macs, causing confusion about its lineage. Apple generally does not create derivative works. GCC cannot be improved with code from MrC because it is written in C.

The MrC development budget must have been much less than CodeWarrior's. Its rate of improvement and final feature set were truly incredible given this fact.

MrC is available as a CodeWarrior plugin compiler, which was very nice. Unfortunately, there were some ABI incompatibilities caused by differences in C++ name mangling, and differences in C++ language extensions, between Metrowerks C++ and MrCpp. Also, being a late 90's era compiler, it lacks support for template features such as partial instantiation.

Log in or register to write something here or to contact authors.