The GNU Modula-2 compiler is one of a number of front end languages to GCC (the GNU Compiler Collection). As such, it has been designed to coexist with other GCC languages. For example, it can be used in mixed language projects and it can catch C++ exceptions and throw exceptions which can be caught by C++. Users can also exploit conditional compilation and full gcc backend optimization and architecture coverage. GNU Modula-2 can produce position independent code and can easily produce shared libraries from modules. The compiler provides a swig interface file generator option, which allows scripting languages such as Python to import modules written in Modula-2 and also catch exceptions thrown by Modula-2. The compiler translates PIM2, PIM3, PIM4, and ISO dialects of Modula-2.
iPDC is a Phasor Data Concentrator that collects data from PMUs and PDC/iPDC that are compliant with the IEEEC37.118 Synchrophasors standard. iPDC does time alignment and combines the received data into frames as per IEEEC37.118 and can send to other iPDCs and applications. It can also archive received data in a MySQL database on the local/remote machine. It includes a PMU Simulator, which is also IEEEC37.118 compliant. A friendly graphical user interface allows a user to add or remove new devices (PMU/iPDC) and send command frames to the devices from which the data is being received.