Sorry. I guess I don't see how a goal oriented language would work without declaring the goal and declaring the conditions under which it must be achieved.
It specifically mentions that the kind of "missing paradigm" looked for is not one of the declarative ones we currently have (SQL, Prolog, etc) because those fall into the Evaluate + Consequent combo.
So, he gives 3 paradigms:
FunctionalProgramming -> Evaluate + Mechanism (list of instructions)
ImperativeProgramming -> Execute + Mechanism
LogicProgramming/ConstraintProgramming -> Evaluate + Consequent (i.e. towards a consequent (result) based on constraints) [this is where declarative falls).
So, the "goals oriented" language he defines as the missing: Execute + Consequent pair.
Logic-programming style control flow can be implemented on top of these two primitives.
a -> b
b = T b = F
+--------+--------+
a = T | T | F |
+--------+--------+
a = F | T | T |
+--------+--------+
For me, the statement about there being some fourth category is trivially true because the division into two categories is false.