
I recommend the "Going Deep" show episodes of Erik Meijer and Brian Beckman, http://channel9.msdn.com/search?term=erik+meijer+brian+beckm...
plus the book "Algebra of Programming" by Richard Bird, Oege de Moor http://www.amazon.com/Algebra-Programming-Prentice-Hall-Inte...
* http://stackoverflow.com/questions/5710078/in-haskell-perfor...
Algebra of Programming FTW!
See Richard Bird (or others at Oxford) for more on this style. E.g. http://lambda-the-ultimate.org/node/1117
Any more general comments on applying algebras to solving programming problems would also be appreciated.
My rough understanding of the benefits/rationale atm:
1) the algebra is a nice/minimal factoring of the problem
2) being able to formally classify it means we know a bunch of its properties, which tells us certain approaches are definitely (im)possible (and these properties are drawn from a fairly small set: e.g. associativity, distributivity, existence of inverses)
3) If the algebra is explicitly represented in code (maybe in a library), we can use that general structure to verify (and generate?) certain aspects of our particular problem solution.
Edit: The paper mentions "Over the years, Richard Bird and others have developed the algebra of programming to a fine art" —and I found Bird's book "Algebra of Programming". Seems like what I'm looking for maybe, but would be grateful to hear of any alternative resources as well.