Design Patterns in Dynamic Languages