My third year project whilst studying Computer Science at The University Of Warwick in 1997 involved the design, implementation and testing of a compiler for a distributed language derived from C.
The compiler was implemented using g++ 2.7.2 on Linux and Solaris. It generates GNU C which was compiled using gcc 2.7.2. The runtime system uses POSIX threads and should be reasonably portable to other platforms.
Extracted from the project report:
This is an investigative project which set out to discover a new way of providing distributed processing capabilities to the C language. It centred on the viability of treating a function as a unit of code that can be executed remotely. The resulting language Distributed C proves that this approach to distributed programming works.
This document describes the design of the language, a compiler and runtime environment for executing Distributed C programs across a network of UNIX workstations. Testing shows that the system can yield great reductions in processing time for some problems.
Keywords: C Parallel Concurrent Distributed Sockets Compiler Dynamic Libraries