SLIDE 47 23-Nov-09 Copyleft (GPL) P.H.Welch 47
Summary (2/4) Summary (2/4) Summary (2/4)
At Kent, we teach using At Kent, we teach using occam
π. Students (and staff) should not be . Students (and staff) should not be concerned with learning another language, if the benefits are th concerned with learning another language, if the benefits are there. ere.
π has a careful blend of the has a careful blend of the CSP CSP and and π π-
calculus process process algebrae algebrae built in to its core. built in to its core. Going parallel is as simple as looping Going parallel is as simple as looping – – both syntactically and semantically. Race hazards are not possi both syntactically and semantically. Race hazards are not possible. ble. KRoC KRoC and the and the Transterpreter Transterpreter are (GPL) open are (GPL) open-
source downloadable. KRoC KRoC is an is an occam
π compiler and runtime for x86 architectures under compiler and runtime for x86 architectures under Linux, OS X or Linux, OS X or raw metal raw metal ( (RMoX RMoX). Coming soon, ). Coming soon, via LLVM via LLVM, this will , this will target most things. Memory and processor overheads are ultra target most things. Memory and processor overheads are ultra-
low. In current practice, In current practice, hundreds of thousands hundreds of thousands of processes can be
managed on modern processors. managed on modern processors. It eats multicore for breakfast. It eats multicore for breakfast. The The Transterpreter Transterpreter is an is an occam
π interpreter, available stand interpreter, available stand-
alone
plugin for the for the jEdit jEdit IDE. Available for Windows, it runs almost
- IDE. Available for Windows, it runs almost
- anywhere. It is easy to port to new platforms. It runs with a
- anywhere. It is easy to port to new platforms. It runs with a tiny
tiny memory footprint (e.g. for the Lego memory footprint (e.g. for the Lego Mindstorms Mindstorms). ).