Constraining Type Parameters of UML 2 Templates with Substitutable Classifiers

  • Authors:
  • Arnaud Cuccuru;Ansgar Radermacher;Sébastien Gérard;François Terrier

  • Affiliations:
  • CEA LIST, France F-91191;CEA LIST, France F-91191;CEA LIST, France F-91191;CEA LIST, France F-91191

  • Venue:
  • MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Generic programming is a field of computer science which consists in defining abstract and reusable representations of efficient data structures and algorithms. In popular imperative languages, it is usually supported by a template-like notation, where generic elements are represented by templates exposing formal parameters. Defining such generic artifacts may require defining constraints on the actual types that can be provided in a particular substitution. UML 2 templates support two mechanisms for expressing such constraints. Unfortunately, the UML specification provides very few details on their usage. The purpose of our article is to provide such details with regard to one of these constraining mechanisms (namely, "substitutable constraining classifiers") as well as modeling patterns inspired by practices from generic programming.