Skip to Main content Skip to Navigation
Journal articles

Extending FeatherTrait Java with Interfaces

Luigi Liquori 1 Arnaud Spiwack 2, 3
3 TYPICAL - Types, Logic and computing
LIX - Laboratoire d'informatique de l'École polytechnique [Palaiseau], Inria Saclay - Ile de France
Abstract : In the context of Featherweight Java by Igarashi, Pierce, and Wadler, and its recent extension FeatherTrait Java (FTJ) by the authors, we investigate classes that can be extended with trait composition. A trait is a collection of methods, i.e. behaviors without state; it can be viewed as an "incomplete stateless class" ie, an interface with some already written behavior. Traits can be composed in any order, but only make sense when "imported" by a class that provides state variables and additional methods to disambiguate conflicting names arising between the imported traits. We introduce FeatherTrait Java with interfaces (iFTJ), where traits need to be typechecked only once, which is necessary for compiling them in isolation, and considering them as regular types, like Java-interfaces with a behavioral content.
Complete list of metadatas

Cited literature [22 references]  Display  Hide  Download
Contributor : Arnaud Spiwack <>
Submitted on : Monday, November 16, 2009 - 3:56:16 PM
Last modification on : Friday, January 8, 2021 - 11:22:05 AM
Long-term archiving on: : Thursday, June 17, 2010 - 8:31:05 PM


Files produced by the author(s)




Luigi Liquori, Arnaud Spiwack. Extending FeatherTrait Java with Interfaces. Theoretical Computer Science, Elsevier, 2010, Theoretical Computer Science, 30 (1-3), pp.243-260. ⟨10.1016/j.tcs.2008.01.051⟩. ⟨inria-00432540⟩



Record views


Files downloads