File Download
There are no files associated with this item.
Links for fulltext
(May Require Subscription)
- Publisher Website: 10.1007/978-3-642-39038-8-2
- Scopus: eid_2-s2.0-84880004383
- Find via
Supplementary
-
Citations:
- Scopus: 0
- Appears in Collections:
Conference Paper: Feature-oriented programming with object algebras
Title | Feature-oriented programming with object algebras |
---|---|
Authors | |
Issue Date | 2013 |
Publisher | Springer Verlag. The Journal's web site is located at http://springerlink.com/content/105633/ |
Citation | Lecture Notes In Computer Science (Including Subseries Lecture Notes In Artificial Intelligence And Lecture Notes In Bioinformatics), 2013, v. 7920 LNCS, p. 27-51 How to Cite? |
Abstract | Object algebras are a new programming technique that enables a simple solution to basic extensibility and modularity issues in programming languages. While object algebras excel at defining modular features, the composition mechanisms for object algebras (and features) are still cumbersome and limited in expressiveness. In this paper we leverage two well-studied type system features, intersection types and type-constructor polymorphism, to provide object algebras with expressive and practical composition mechanisms. Intersection types are used for defining expressive run-time composition operators (combinators) that produce objects with multiple (feature) interfaces. Type-constructor polymorphism enables generic interfaces for the various object algebra combinators. Such generic interfaces can be used as a type-safe front end for a generic implementation of the combinators based on reflection. Additionally, we also provide a modular mechanism to allow different forms of self-references in the presence of delegation-based combinators. The result is an expressive, type-safe, dynamic, delegation-based composition technique for object algebras, implemented in Scala, which effectively enables a form of Feature-Oriented Programming using object algebras. © 2013 Springer-Verlag Berlin Heidelberg. |
Persistent Identifier | http://hdl.handle.net/10722/188510 |
ISSN | 2023 SCImago Journal Rankings: 0.606 |
References |
DC Field | Value | Language |
---|---|---|
dc.contributor.author | Oliveira, BCDS | en_US |
dc.contributor.author | Van Der Storm, T | en_US |
dc.contributor.author | Loh, A | en_US |
dc.contributor.author | Cook, WR | en_US |
dc.date.accessioned | 2013-09-03T04:08:47Z | - |
dc.date.available | 2013-09-03T04:08:47Z | - |
dc.date.issued | 2013 | en_US |
dc.identifier.citation | Lecture Notes In Computer Science (Including Subseries Lecture Notes In Artificial Intelligence And Lecture Notes In Bioinformatics), 2013, v. 7920 LNCS, p. 27-51 | en_US |
dc.identifier.issn | 0302-9743 | en_US |
dc.identifier.uri | http://hdl.handle.net/10722/188510 | - |
dc.description.abstract | Object algebras are a new programming technique that enables a simple solution to basic extensibility and modularity issues in programming languages. While object algebras excel at defining modular features, the composition mechanisms for object algebras (and features) are still cumbersome and limited in expressiveness. In this paper we leverage two well-studied type system features, intersection types and type-constructor polymorphism, to provide object algebras with expressive and practical composition mechanisms. Intersection types are used for defining expressive run-time composition operators (combinators) that produce objects with multiple (feature) interfaces. Type-constructor polymorphism enables generic interfaces for the various object algebra combinators. Such generic interfaces can be used as a type-safe front end for a generic implementation of the combinators based on reflection. Additionally, we also provide a modular mechanism to allow different forms of self-references in the presence of delegation-based combinators. The result is an expressive, type-safe, dynamic, delegation-based composition technique for object algebras, implemented in Scala, which effectively enables a form of Feature-Oriented Programming using object algebras. © 2013 Springer-Verlag Berlin Heidelberg. | en_US |
dc.language | eng | en_US |
dc.publisher | Springer Verlag. The Journal's web site is located at http://springerlink.com/content/105633/ | en_US |
dc.relation.ispartof | Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) | en_US |
dc.title | Feature-oriented programming with object algebras | en_US |
dc.type | Conference_Paper | en_US |
dc.identifier.email | Oliveira, BCDS: oliveira@comp.nus.edu.sg | en_US |
dc.identifier.authority | Oliveira, BCDS=rp01786 | en_US |
dc.description.nature | link_to_subscribed_fulltext | en_US |
dc.identifier.doi | 10.1007/978-3-642-39038-8-2 | en_US |
dc.identifier.scopus | eid_2-s2.0-84880004383 | en_US |
dc.relation.references | http://www.scopus.com/mlt/select.url?eid=2-s2.0-84880004383&selection=ref&src=s&origin=recordpage | en_US |
dc.identifier.volume | 7920 LNCS | en_US |
dc.identifier.spage | 27 | en_US |
dc.identifier.epage | 51 | en_US |
dc.publisher.place | Germany | en_US |
dc.identifier.scopusauthorid | Oliveira, BCDS=12239474400 | en_US |
dc.identifier.scopusauthorid | Van Der Storm, T=23399139300 | en_US |
dc.identifier.scopusauthorid | Loh, A=36175691300 | en_US |
dc.identifier.scopusauthorid | Cook, WR=11939670900 | en_US |
dc.identifier.issnl | 0302-9743 | - |