Independent modules communicate by passing entire data structures “Tramp data” is present By an insightful designer for performance reasons not a lazy programmer