Currently GString is not serializable so if you place a GString into a distributed cache or session which is replicated you get an NotSerializableException which forces you to write code like this:
session.setAttribute("foo", "hello $var".toString())
To explicitly convert to a String beforehand. GString should implement Serializable such that it calls toString() and writes the String out
GROOVY-855