|This article does not cite any sources. (October 2011) (Learn how and when to remove this template message)|
KRoC, the Kent Retargetable occam Compiler, is an occam implementation 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.
Along with the translation to different processors, the KRoC team have modified the compiler significantly, creating a compiler for what has become known as occam v2.5, and now as occam-pi.
Originally the translation from the occam compiler front-end was by interpretation of the ASCII assembly language file. 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.