Nowadays, developers have to face the proliferation of hardware and software environments, the increasing demands of the users, the growing number of p- grams and the sharing of information, competences and services thanks to the generalization ofdatabasesandcommunication networks. Aprogramisnomore a monolithic entity conceived, produced andnalized before being used. A p- gram is now seen as an open and adaptive frame, which, for example, can - namically incorporate services not foreseen by the initial designer. These new needs call for new control structures and program interactions. Unconventional approaches to programming have long been developed inv- iousniches and constitute are servoiro falter native ways to face the programming languages crisis. New models of programming (e. g. , bio-inspired computing, - artificial chemistry, amorphous computing, . . . )arealsocurrentlyexperiencinga renewed period of growth as they face specific needs and new application - mains. These approaches provide new abstractions and notations or develop new ways of interacting with programs. They are implemented by embedding new sophisticated data structures in a classical programming model (API), by extending an existing language with new constructs (to handle concurrency, - ceptions, open environments, . . . ), by conceiving new software life cycles and program executions (aspect weaving, run-time compilation) or by relying on an entire new paradigm to specify a computation. They are inspired by theoretical considerations (e. g. , topological, algebraic or logical foundations), driven by the domain at hand (domain-specific languages like PostScript, musical notation, animation, signal processing, etc. ) or by metaphors taken from various areas (quantum computing, computing with molecules, informationprocessing in - ological tissues, problem solving from nature, ethological and social modeling).