首页出版物导航 用户协会 博客
 精确匹配 高级检索 检索历史
河北工业大学

Xtraitj: Traits for the Java platform.

Title: Xtraitj: Traits for the Java platform.
Authors: Bettini, Lorenzo1 lorenzo.bettini@unifi.it
Damiani, Ferruccio2 ferruccio.damiani@unito.it
Source: Journal of Systems & Software. Sep2017, Vol. 131, p419-441. 23p.
Document Type: Article
Subject Terms: COMPUTER software development
PROGRAMMING languages (Electronic computers)
JAVA (Computer program language)
XBASE (Computer program language)
SOURCE code (Computer science)
Author-Supplied Keywords: Eclipse ; IDE ; Implementation ; Java ; Trait
NAICS/Industry Codes: 541514 Computer systems design and related services (except video game design and development) ; 541511 Custom Computer Programming Services ; 511210 Software Publishers ; 511211 Software publishers (except video game publishers)
Abstract: Traits were proposed as a mechanism for fine-grained code reuse to overcome many limitations of class-based inheritance. A trait is a set of methods that is independent from any class hierarchy and can be flexibly used to build other traits or classes by means of a suite of composition operations. In this paper we present the new version of Xtraitj , a trait-based programming language that features complete compatibility and interoperability with the Java platform. Xtraitj is implemented in Xtext and Xbase , and it provides a full Eclipse IDE that supports an incremental adoption of traits in existing Java projects. The new version of Xtraitj allows traits to be accessed from any Java project or library, even if the original Xtraitj source code is not available, since traits can be accessed in their byte-code format. This allows developers to create Xtraitj libraries that can be provided in their binary only format. We detail the technique we used to achieve such an implementation; this technique can be reused in other languages implemented in Xtext for the Java platform. We formalize our traits by means of flattening semantics and we provide some performance benchmarks that show that the runtime overhead introduced by our traits is acceptable. [ABSTRACT FROM AUTHOR]
(Copyright applies to all Abstracts.)
Author Affiliations: 1Dipartimento di Statistica, Informatica, Applicazioni, Università di Firenze, Italy ; 2Dipartimento di Informatica, Università di Torino, Italy
ISSN: 0164-1212 (Sherpa/RoMEO, JCR)
PageCount: 419-442
volume: 131
issn: 01641212
pubdate: 2017
DOI: https://doi.org/10.1016/j.jss.2016.07.035
Custom Links: Full Text Finder