Transactions on Pattern Languages of Programming I - Noble, James; Johnson, Ralph (Springer Berlin Heidelberg, 2009)