Object oriented software technology has major impacts on the traditional software life-cycle. One of these impacts is the shift of emphasis brought about in the relation between the design and the implementation phases of a software development project. The design phase has become increasingly more important since the availability of object oriented programming languages, allowing to regard the implementation as a process of refining the decisions made when designing the system. In this paper we take this development one step further by proposing a logic-based object oriented language that allows to employ an abstract specification of an object oriented system as an executable prototype. We argue that distributed logic programming provides in a natural way the means required for object oriented modeling and may thus be regarded as a potent tool to create high level executable specifications of object oriented systems.