Prolog: between logic and programming language