Although most programming languages naturally share several language features, they are typically implemented as a monolithic product. Language features cannot be plugged and unplugged from a language and reused in another language. Some modular approaches to language construction do exist but composing language features requires a deep understanding of its implementation hampering their use. The choose and pick approach from software product lines provides an easy way to compose a language out of a set of language features. However, current approaches to language product lines are not sufficient enough to cope with the complexity and evolution of real world programming languages. In this work, we propose a general light-weight bottom-up approach to automatically extract a feature model from a set of tagged language components. We applied this approach to the Neverlang language development framework and developed the AiDE tool to guide language developers towards a valid language composition. The approach has been evaluated on a decomposed version of Javascript to highlight the benefits of such a language product line.

Choosy and picky: Configuration of Language Product Lines / T. Kühn, W. Cazzola, D.M. Olivares - In: Proceedings of the 19th International Software Product Line Conference (SPLC'15)[s.l] : ACM, 2015 Jul. - ISBN 9781450336130. - pp. 71-80 (( Intervento presentato al 19. convegno Software Product Line Conference tenutosi a Nashville, TN, USA nel 2015 [10.1145/2791060.2791092].

Choosy and picky: Configuration of Language Product Lines

W. Cazzola
Secondo
;
D.M. Olivares
Ultimo
2015

Abstract

Although most programming languages naturally share several language features, they are typically implemented as a monolithic product. Language features cannot be plugged and unplugged from a language and reused in another language. Some modular approaches to language construction do exist but composing language features requires a deep understanding of its implementation hampering their use. The choose and pick approach from software product lines provides an easy way to compose a language out of a set of language features. However, current approaches to language product lines are not sufficient enough to cope with the complexity and evolution of real world programming languages. In this work, we propose a general light-weight bottom-up approach to automatically extract a feature model from a set of tagged language components. We applied this approach to the Neverlang language development framework and developed the AiDE tool to guide language developers towards a valid language composition. The approach has been evaluated on a decomposed version of Javascript to highlight the benefits of such a language product line.
Settore INF/01 - Informatica
lug-2015
ACM
Book Part (author)
File in questo prodotto:
File Dimensione Formato  
p71-kuhn.pdf

accesso riservato

Tipologia: Publisher's version/PDF
Dimensione 958.46 kB
Formato Adobe PDF
958.46 kB Adobe PDF   Visualizza/Apri   Richiedi una copia
Pubblicazioni consigliate

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/2434/343830
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 34
  • ???jsp.display-item.citation.isi??? ND
social impact