Advances in computer networks that support the invocation of remote services in heterogeneous environments enable new levels
of software composition. In order to manage composition at such a high level we envision a need for purely compositional languages.
We introduce the CLAM composition language, a megaprogramming language. By breaking up the traditional CALL statement the
CLAM language focuses on the asynchronous composition of large-scale, autonomous modules. Furthermore the language has the
capability to support various optimizations that are specific to software composition.