GARDEN: an object-oriented framework for conceptual programming