Description:This book constitutes the refereed proceedings of the 16th European Symposium on Programming, ESOP 2007, held in Braga, Portugal in March/April 2007 as part of ETAPS 2007, the European Joint Conferences on Theory and Practice of Software.The 34 revised full papers presented together with the abstract of 1 invited talk were carefully reviewed and selected from 136 submissions and address fundamental issues in the specification, analysis, and implementation of programming languages and systems. The papers are organized in topical sections on models and languages for Web services, verification, term rewriting, language based security, logics and correctness proofs, static analysis and abstract interpretation, semantic theories for object oriented languages, process algebraic techniques, applicative programming, and types for systems properties.