There is an abstract gadget called monad, which can be used to define cohomology and homology theories.
arXiv: Experimental full text search
CT (Category theory)
http://ncatlab.org/nlab/show/monadic+cohomology
Quote from the n-category cafe:
It’s sometimes called the bar construction. Eilenberg and Mac Lane first used that phrase for a special case, but it applies very generally: you get simplicial sets from any algebraic gadget described by a monad.
People usually turn these simplicial sets into simplicial groups, then turn those into chain complexes, and then take their cohomology. This is sometimes called ‘monad cohomology’ — or, since monads are also called triples, ‘triple cohomology’. This subsumes group cohomology, Lie algebra cohomology, Hochschild cohomology, etc..
This might be a good place to start: J.W. Duskin, Simplicial methods and the interpretation of “monad” cohomology, Mem. Amer. Math. Soc., 3 (1975).
Or, take this course! Monad cohomology is the main thing I’ll be talking about.
nLab page on Monad cohomology