There is no complete program you can write in CBPV that you couldn't have written in CBV.
The difference is in what you can *abstract over*. In CBV you can only abstract over the "value types" whereas CBPV gives you a new sort you can abstract over: computation types. So you can't write programs in CBPV you couldn't write in CBV but you can write *libraries* that have no direct analogue.
So the difference as a programming language only starts to appear when you start doing higher-order constructions like recursive types and quantified types. In my group we are exploring this space with our language Zydeco (https://github.com/zydeco-lang/zydeco). One of these new abstractions we have in CBPV+forall is relative monads which we study in our recent PACMPL/OOPSLA paper (https://dl.acm.org/doi/10.1145/3720434).