@INPROCEEDINGS{swrtj,
  title = {{A Prototypical Java-like Language with Records and Traits}},
  author = {Bettini, Lorenzo and Damiani, Ferruccio and Schaefer, Ina and Strocco, Fabio},
  booktitle = {Proc. of PPPJ, Principles and Practice of Programming in Java},
  pages = {2096-2102},
  abstract = {Traits have been designed as units of fine-grained behavior reuse in
      the object-oriented paradigm. In this paper, we present the language
      SUGARED WELTERWEIGHT RECORD-TRAIT JAVA (SWRTJ), a
      JAVA dialect with records and traits. Records have been devised to
      complement traits for fine-grained state reuse. Records and traits
      can be composed by explicit linguistic operations, allowing code
      manipulations to achieve fine-grained code reuse. Classes are assembled
      from (composite) records and traits and instantiated to
      generate objects. We present the prototypical implementation of
      SWRTJ using XTEXT, an Eclipse framework for the development
      of programming languages as well as other domain-specific languages.
      Our implementation comprises an Eclipse-based editor for
      SWRTJ with typical IDE functionalities, and a stand-alone compiler,
      which translates SWRTJ programs into standard JAVA programs.},
  year = {2010},
  url = {http://rap.dsi.unifi.it/phpbibliography/files/09-11-2010-122628-main.pdf},
  publisher = {ACM},
}