Pliant and Java are C++ extended in opposite directions:

Java mainly extended C++ by making the execution level higher, but providing nearly no extra expressive power. The immediate result is that its negative quality measure collapsed, whereas the size of your application source code will not.

On the other hand, Pliant raises the execution level as far as possible, but within the constrains of not impacting low level performance. The key design advantage of Pliant over Java is that it raises C++'s expressive power by an order of magnitude through it's type Lisp like reflexivity that enables the program to be a very powerful and well integrated code generator for itself.