*Result*: Javagi: Generalized interfaces for java

Title:
Javagi: Generalized interfaces for java
Contributors:
The Pennsylvania State University CiteSeerX Archives
Publisher Information:
Springer-Verlag
Publication Year:
2007
Collection:
CiteSeerX
Document Type:
*Academic Journal* text
File Description:
application/pdf
Language:
English
Rights:
Metadata may be used without restrictions as long as the oai identifier remains attached to it.
Accession Number:
edsbas.708732B7
Database:
BASE

*Further Information*

*JavaGI is an experimental language that extends Java 1.5 by generalizing the interface concept to incorporate the essential features of Haskell’s type classes. In particular, generalized interfaces cater for retroactive and constrained interface implementations, binary methods, static methods in interfaces, default implementations for interface methods, interfaces over families of types, and existential quantification for interface-bounded types. As a result, many anticipatory uses of design patterns such as Adapter, Factory, and Visitor become obsolete; several extension and integration problems can be solved more easily. JavaGI’s interface capabilities interact with subtyping (and subclassing) in interesting ways that go beyond type classes. JavaGI can be translated to Java 1.5. Its formal type system is derived from Featherweight GJ. 1*