The Kent Retargetable occam Compiler (KRoC), is computer software, an implementation of the programming language occam, that is based on the Inmos occam 2.1 compiler as a front-end and a retargetable back-end to produce machine code for various microprocessors. Ports of the compiler have been made for PowerPC, SPARC, x86, and Alpha processors.
|Original author(s)||Fred Barnes, Peter Welch|
|Developer(s)||University of Kent, Occam For All Group|
1.4.0 / 14 January 2006
|Operating system||Solaris, OSF/1, Parsytec, Linux, FreeBSD|
|Platform||SPARC, Alpha, PowerPC, IA-32|
Along with the translation to different processors, the KRoC team have modified the compiler significantly, creating a compiler for what has become termed occam v2.5, and now as occam-π, pronounced occam-pi.
Originally the translation from the occam compiler front-end was by interpretation of the American Standard Code for Information Interchange (ASCII) file in assembly language. This worked reasonably well but was slow and occasionally inconvenient.
The current KRoC compiler target is an Extended Transputer Code (ETC), which is then translated into the target machine language. ETC code can be viewed as a kind of byte code: it is a compact description of the compiler's intent on a virtual machine that is similar to the transputer.