The Magic of Metalinguistic Programming