Homological Algebra Programming