E is a programming language designed to make it easy to write distributed programs that are correct and secure. As a pure-Java library, ELib provides for inter-process capability-secure distributed programming. Its cryptographic capability protocol enables mutually suspicious Java processes to cooperate safely, and its event-loop concurrency and promise pipelining enable high performance deadlock free distributed pure-object computing. Objects written in the E language are only able to interact with other objects according to ELib’s semantics, enabling object granularity intra-process security, including the ability to safely run untrusted mobile code