occam jest językiem świadomie minimalistycznym i bardzo formalnie zdefiniowanym. Zabronione są wszelkie konstrukcje, które mogłyby prowadzić do niejednoznaczności działania programu (np. równoległe procesy nie mogą modyfikować żadnych wspólnych lokacji pamięci, do których mają dostęp). Umożliwia to formalne dowodzenie poprawności programów napisanych w tym języku.

Obecnie istnieje działający na współczesnych komputerach kompilator occama, KRoC (ang. Kent Retargetable occam Compiler). Kompiluje on programy do plików wykonywalnych działających współbieżnie. Wspiera on też post-mortem debugging, czyli debugowanie programu po błędzie, który spowodował jego wyłączenie, również wyłączenie spowodowane zakleszczeniem.

Wersje języka occam 1 occam 1 (wydany w 1983 r.) był wstępną wersją języka. Ze katalogu typów danych, dostępnych z czasem w języku, wspierał tylko VAR, który był typem liczby całkowitej o zakresie uzależnionym od długości słowa w docelowej architekturze, oraz jedno wymiarowe tablice.

occam 2 occam 2 to rozszerzenie, stworzone przez INMOS Ltd w 1987 roku które dodało liczby zmiennoprzecinkowe, funkcje, wielowymiarowe tablice i więcej typów danych takich jak liczby całkowite różnych rozmiarów (INT16, INT32) oraz bajty (BYTE).