The reminds me of how powerful the expressiveness of Datalog is. You can even syntactically check whether the program can run in p-time or not. Once you introduce negation in the recursion it starts to be a little bit complicated, though.
Also the fact that the language it self is declarative it's inherently more parallelizable than imperative languages.
Also the fact that the language it self is declarative it's inherently more parallelizable than imperative languages.