Apache Avalon is a computer software framework developed in 1999 as a project to provide a reusable component framework for container (server) applications. Avalon pioneered the use of Design Patterns such as separation of concerns (SoC) and inversion of control (IoC). By 2004 Avalon had grown into several subprojects which have since separated into the following: Excalibur: Apache Excalibur houses the Avalon 4.x framework, the Fortress IoC container, and several Avalon related components and utilities such as LogKit and the Cornerstone Component Collection. Loom: Codehaus Loom continues development of a microkernel container after the design of Avalon Phoenix. Metro: DPML Metro project develops the next generation of the Merlin Service Platform using the Open Participation Software model. Castle: an IoC Framework and Container for C# and the .NET platform. Based on the C# Avalon implementation. Excalibur, and consequently the Avalon framework, was retired on 15 December 2010, and both projects are in Apache Attic.