We investigate a view of compiler generation which does not involve the dir
ect specification of the source --> target relationship. Here, the concentr
ation is on the role of self-interpreters in this context, and their deriva
tion. The method is based on a category theoretic model of language using f
inite limit sketches and requires the automatic derivation of a target part
ial evaluator and a source interpreter, expressed as a target program. We d
escribe a technique to derive a self-interpreter as this represents a signi
ficant step towards the derivation of both partial evaluators and interpret
ers. (C) 1999 Elsevier Science Ltd. All rights reserved.