Atlantis : a tool for language definition and interpreter synthesis.