self-applicable interpreter!