CCSC Central Plains Region
You must use a modern 32 or 64-bit operating system such as Windows NT/2000/XP, Mac OS X, or any recent flavor of Linux, BSD, or commercial Unix. The important features of these operating systems are (1) support for writing programs using a flat 32 or 64-bit memory model, and (2) preemptive multitasking, which means that if a program crashes it shouldn't take the whole OS with it, requiring a reboot. Windows 95 or lower, any flavor of DOS, and Mac OS 9 or lower are not acceptable. Windows 98/98SE/ME are marginally acceptable, but because they use 16-bit legacy code internally their use may be deprecated in the future.
Teams may elect to program in C, C++, or Java. You must provide compilers for these languages.
The compiler must support the Standard C (1989) specification, as documented in Harbison & Steele's C: A Reference Manual (5/e). All modern compilers do. Support for the newer 1999 specification is not currently required.
The compiler must support the Standard Template Library as defined in Stroustrup's The C++ Programming Language 3/e. In particular, it must support the modern iostream library, strings, container classes, algorithms, and function objects.
The minimum requirement is compatibility with Sun's Java 2 SDK 1.5 or higher. No Microsoft Java or J++ compiler is acceptable.
Free Compilers and IDEs
You will probably just use the compilers that you normally provide for your students. If they are not acceptable, or if you want to consider other alternatives, here are a few free compilers and IDEs.
Supports C++ for Linux.
A good Windows C/C++ compiler. Make sure to get the STL port.
"An open extensible IDE for anything and nothing in particular." Very good, and used at the World Finals. For Windows and Linux.
A nice Java IDE for Windows, Linux, Solaris, and Mac OS X.
A native Windows version of gcc and friends. Get a recent version that provides gcc 3.2 or higher.
A good Java IDE, for Windows and Linux. Can be a memory hog.
An open-source version of Watcom's C/C++ compilers, for Windows.
The latest version of Sun's Java Development Kit and NetBeans for Windows, Linux, and Solaris.
Based on procedures and materials developed for the ACM Mid-Central Regional Programming Contest.