Partial evaluation and mix computation in logic programming. - David Alfredo Fuller (1989)