Mertgen, AndreasJähnichen, StefanKüpper, AxelAlbayrak, Sahin2018-11-192018-11-192012978-3-88579-292-5https://dl.gi.de/handle/20.500.12116/18349Role-based programming, as in the Object Teams/Java (OT/J) language, aims to improve object-oriented programming with regard to separation of crosscutting or context-related concerns. Therefore, OT/J introduces class-like modules for roles and context, which connect common classes to build collaborations. However, since role and base objects are directly linked, it implies strong coupling and limited possibilities of reuse. This research aims to create a generic way of expressing connections between a collaboration and its base in order to further decouple modules and enhance their reusability. We introduce a quantification mechanism based on logic meta-programming in Prolog that allows using generic references to declaratively defined program elements, which are transformed to build valid OT/J code. We propose that the use of logic meta-variables improves the expressiveness and genericity of rolebased programming.enGeneric roles for increased reuseabilityText/Conference Paper1617-5468