A view of the origins and development of Prolog
Semantics of context-free languages