A composition language based on a formal semantic foundation will facilitate precification of glue abstractions and compositions, and will support reasoning about their behaviour. The semantic foundation, however, must address a set of ents like encapsulation, objects as processes, components as abstractions, plug compatibility, a formal object model, and scalability. In this work, we propose the L-calculus, an extension of the -calculus, as a formal foundation for software composition, define a language in terms of it, and illustrate how this language can be used to plug components together.