Isolating backend implementation from the concept of value classes