The semantics of predicate logic as a programming language