See the conversation. 
 - What are the main aspects of Prolog?
 - Prolog syntax and semantics The syntax and semantics of the Prolog programming language are the set of rules that defines how a Prolog program is written and how it is interpreted.
 - Are there any other interesting aspects about this article?
 - The rules are laid out in ISO standard ISO/IEC 13211 although there are differences in the Prolog implementations.
 - What are some of the differences between the implementations?
 - Prolog is dynamically typed.
 - Why is it so flexible?
 - 
It has a single data type, the "term", which has several subtypes: "atoms", "numbers", "variables" and "compound terms".