File Download

There are no files associated with this item.

  Links for fulltext
     (May Require Subscription)
Supplementary

Conference Paper: Classless Java

TitleClassless Java
Authors
KeywordsInterface-based programming
multiple inheritance
code generation
Issue Date2017
PublisherAssociation for Computing Machinery. The Journal's web site is located at http://dl.acm.org/citation.cfm?id=J706&CFID=105303601&CFTOKEN=28840328
Citation
Proceedings of the 2016 ACM SIGPLAN 15th International Conference on Generative Programming: Concepts and Experiences (GPCE’16), Amsterdam, the Netherlands, 31 October – 1 November 2016 . In ACM / SIGPLAN Notices, 2017, v. 52 n. 3, p. 14-24 How to Cite?
AbstractThis paper presents an OO style without classes, which we call interface-based object-oriented programming (IB). IB is a natural extension of closely related ideas such as traits. Abstract state operations provide a new way to deal with state, which allows for flexibility not available in class-based languages. In IB state can be type-refined in subtypes. The combination of a purely IB style and type-refinement enables powerful idioms using multiple inheritance and state. To introduce IB to programmers we created Classless Java: an embedding of IB directly into Java. Classless Java uses annotation processing for code generation and relies on new features of Java 8 for interfaces. The code generation techniques used in Classless Java have interesting properties, including guarantees that the generated code is type-safe and good integration with IDEs. Usefulness of IB and Classless Java is shown with examples and case studies.
Persistent Identifierhttp://hdl.handle.net/10722/301302
ISSN
2020 SCImago Journal Rankings: 0.310

 

DC FieldValueLanguage
dc.contributor.authorWang, Y-
dc.contributor.authorZhang, H-
dc.contributor.authorDos Santos Oliveira, BC-
dc.contributor.authorServetto, M-
dc.date.accessioned2021-07-27T08:09:07Z-
dc.date.available2021-07-27T08:09:07Z-
dc.date.issued2017-
dc.identifier.citationProceedings of the 2016 ACM SIGPLAN 15th International Conference on Generative Programming: Concepts and Experiences (GPCE’16), Amsterdam, the Netherlands, 31 October – 1 November 2016 . In ACM / SIGPLAN Notices, 2017, v. 52 n. 3, p. 14-24-
dc.identifier.issn1523-2867-
dc.identifier.urihttp://hdl.handle.net/10722/301302-
dc.description.abstractThis paper presents an OO style without classes, which we call interface-based object-oriented programming (IB). IB is a natural extension of closely related ideas such as traits. Abstract state operations provide a new way to deal with state, which allows for flexibility not available in class-based languages. In IB state can be type-refined in subtypes. The combination of a purely IB style and type-refinement enables powerful idioms using multiple inheritance and state. To introduce IB to programmers we created Classless Java: an embedding of IB directly into Java. Classless Java uses annotation processing for code generation and relies on new features of Java 8 for interfaces. The code generation techniques used in Classless Java have interesting properties, including guarantees that the generated code is type-safe and good integration with IDEs. Usefulness of IB and Classless Java is shown with examples and case studies.-
dc.languageeng-
dc.publisherAssociation for Computing Machinery. The Journal's web site is located at http://dl.acm.org/citation.cfm?id=J706&CFID=105303601&CFTOKEN=28840328-
dc.relation.ispartofACM SIGPLAN Notices-
dc.relation.ispartofProceedings of the 2016 ACM SIGPLAN Symposium on Generative Programming: Concepts and Experiences (GPCE’16)-
dc.rightsACM SIGPLAN Notices. Copyright © Association for Computing Machinery.-
dc.subjectInterface-based programming-
dc.subjectmultiple inheritance-
dc.subjectcode generation-
dc.titleClassless Java-
dc.typeConference_Paper-
dc.identifier.emailDos Santos Oliveira, BC: bruno@cs.hku.hk-
dc.identifier.authorityDos Santos Oliveira, BC=rp01786-
dc.description.naturelink_to_subscribed_fulltext-
dc.identifier.doi10.1145/3093335.2993238-
dc.identifier.hkuros323712-
dc.identifier.volume52-
dc.identifier.issue3-
dc.identifier.spage14-
dc.identifier.epage24-
dc.publisher.placeUnited States-

Export via OAI-PMH Interface in XML Formats


OR


Export to Other Non-XML Formats