Gravar-mail: Domain specific languages: a theoretical survey