Visitor pattern by @neoneye, Playground generated from markdown file