The Merlin programming language