Escher Escher is a functional logic programming language designed with the aim of providing in a simple computation mechanism the best features of functional programming and logic programming. The theoretical foundations for Escher is provided in the book `Logic for Learning' by John Lloyd. Escher is implemented in Noweb-C++, with fairly extensive documentation. It is being actively supported.