  This paper describes an approach to computer aided calculations in the
cohomology of arithmetic groups. It complements existing literature on the
topic by emphasizing homotopies and perturbation techniques, rather than
cellular subdivision, as the tools for implementing on a computer topological
constructions that fail to preserve cellular structures Furthermore, it focuses
on calculating integral cohomology rather than just rational cohomology or
cohomology at large primes. In particular, the paper describes and fully
implements algorithms for computing Hecke operators on the integral cuspidal
cohomology of congruence subgroups $\Gamma$ of $SL_2(\mathbb Z)$, and then
partially implements versions of the algorithms for the special linear group
$SL_2({\cal O}_d)$ over various rings of quadratic integers ${\cal O}_d$. The
approach is also relevant for computations on congruence subgroups of
$SL_m({\cal O}_d)$, $m\ge 2$.
