*Result*: ICE: An Automated Tool for Teaching Advanced C Programming
*Further Information*
*There are many difficulties with learning and teaching programming that can be alleviated with the use of software tools. Most of these tools have focused on the teaching of introductory programming concepts where commonly code fragments or small user programs are run in a sandbox or virtual machine, often in the cloud. These do not permit user software to directly interact with system resources and accordingly do not directly support advanced programming concepts such as multiprocessing, inter-process communication (IPC), Device IO, concurrency, synchronization, and platform independence. This paper presents a new tool for teaching advanced programming called the Interactive C Environment (ICE) that is designed to support teaching of all these programming concepts by automating many tasks for both the learner and teacher. It consists of an integrated development environment (IDE) with a built-in editor, compiler, automated testing framework, and a built-in makefile processor. It supports programs written in C-99 and a subset of C++ using both MS Windows and Linux System APIs. ICE not only provides secure, automated testing and assessment of projects but also group learning support in terms of comparative statistics. [For the complete proceedings, see ED579282.]*
*As Provided*