Describir: Category Theory and Computer Programming