Implement a domain specific language