 Languages with small interpreters are preferred.Languages developed primarily for the purpose of teaching and learning of programming.An esoteric programming language is a programming language designed as a test of the boundaries of computer programming language design, as a proof of concept, or as a joke.