Implement a non-destructive define method.