Categorical computation