HOMAGE (Heterogeneous Object Multi Agent Environment) is an environment for the development of multi-agent systems that integrates agent and object-oriented programming paradigms. This environment offers two different programming levels: object and agent. The object level allows the use of three object-oriented programming languages (C++, Common Lisp and Java) to develop the components that will be used to build the body of agents. The agent level allows the development of new agents by defining their ``brain'' and by composing the components defined at the object level, and allows the development of multi-agent systems by distributing and interconnecting agent instances. Moreover, these multi-agent systems can be distributed on a net of heterogeneous machines connected through internet taking advantage of a set of communication and distribution libraries allowing the communication between agents through different protocols.