Programs that write programs - Naylor, Chris (Sigma technical press, 1983)