Joe-E

Joe-E
Paradigm(s) object-capability
Appeared in 2004[1]
Designed by David A. Wagner, Adrian Mettler, Chip Morningstar, Mark S. Miller
Stable release 2.2.0a
Influenced by Java, E
Influenced Caja project

Joe-E is a subset of the Java programming language intended to support programming according to object-capability discipline.[2]

The language is notable for being an early object-capability subset language. It has influenced later subset languages, such as ADsafe and Caja/Cajita, subsets of Javascript.

It is also notable for allowing methods to be verified as functionally pure, based on their method signatures.[3]

The restrictions imposed by the Joe-E verifier include:

Cup of Joe is slang for coffee, and so serves as a trademark-avoiding reference to Java. Thus, the name Joe-E is intended to suggest an adaptation of ideas from the E programming language to create a variant of the Java language.

Waterken Server is written in Joe-E.

References

  1. ^ An early reference to Joe-E on the cap-talk mailing list, Mark S. Miller, 2004/11/01, retrieved 2009/11/21.
  2. ^ Joe-E: A Security-Oriented Subset of Java, Adrian Mettler, David Wagner, and Tyler Close; January 2010.
  3. ^ Verifiable Functional Purity in Java, Matthew Finifter, Adrian Mettler, Naveen Sastry, David Wagner; October 2008, Conference on Computer and Communications Security.

External links