The best Fortran95 code for using ISO Varying Strings that I am aware of is the one below provided by Rich Townsend
ISO Varying String
A new implementation can be found here