Well-designed security is required to enable cooperation with strangers and enemies. A number of prototype and experimental systems have demonstrated that object-capability programming languages can blend security with cooperation with little impact on programmer or user behavior. However, heretofore all programming languages in the object-capability family have had inadequate performance for many projects, leading programmers to use languages such as C++.
We present Emily, a language with performance characteristics similar to those of C++, but with secure cooperation support that emerges from the enforcement of the Principle of Least Authority (POLA).