moved pattern DSL to language layout