PLT develops foundations for building reliable, high-performance software. Foundations include practices, languages, semantics, implementation techniques and type systems. To demonstrate the impact of these foundations, PLT implements various tools. These include compilers and IDEs, and applies them to challenging software development domains.