For some time, it has been recognized that the development and use of complex systems has been stifled by the inadequacy of ordinary programming languages (Winograd 1979). Music composition and synthesis (MCS) by computer offers a particularly clear example of this barrier. In the 1970s, a new generation of interactive languages appeared (Cointe 1983), establishing the concepts of active objects and message passing as a control structure for computation. It is significant that object-oriented programming matches most of the requirements of MCS. Toward a solution to problems of complexity in computer music, an object-oriented programming environment called FORMES has been developed and implemented at IRCAM. It supports a new language with original features for composition and scheduling of objects. FORMES are obviously not in exact correspondence with musical processes as perceived by the listener. FORMES is an interactive system first intended for MCS. However, by virtue of its unique architecture, its flexibility, and its ease of use, it should find applications in a large number of domains such as graphics animation and speech synthesis. Composers use FORMES for score development and sound synthesis. As an example, Chreode, a piece composed with FORMES by Jean-Baptiste Barriere, won the International Bourges Festival award in 1983 (Barriere 1983). Why is MCS one of the most interesting fields for testing advanced technology for computing? In MCS, perhaps even more than in artificial intelligence, programs have to be tested, modified, and rewritten very often. This modification must be effected quickly and easily; otherwise, the continuity between musical ideas and results gets lost. The complexity usually involved in human composing activity is far beyond what we are nowadays able to code in a few weeks or months. At the same time, scientists and musicians cannot be hampered by esoteric or hairy programs in the course of sophisticated musical research. Thus, friendly interaction is not a wish but a necessity. Finally, the system must be interactive and fast enough to control a real-time synthesizer.