Universal-Variability-Language / uvl-lsp

Language server protocol for the Universal Variability Language (UVL)
MIT License
10 stars 4 forks source link

Simple variant generation mechanism #39

Open SundermannC opened 1 year ago

SundermannC commented 1 year ago

UVLS should be a starting point to learn basic principles of feature modeling and software product lines. A very simple mechanism to showcase how to derive a variant from a configuration would be helpful. In particular, I think having a powerful composer for actual programming languages would already be too complex for the use case.

Some simple format/language that can easily be extended with presence conditions and could be used to showcase variant generation could be great.

Some suggestions:

TobiUUlm commented 1 year ago

Please explain further what you mean here.
Should we add a mechanism that generates a concrete example (in one of the languages) or should there be an example how feature models might be useful?
Implementing a (fairly simple) preprocessor should be possible but otherwise would not be powerful enough to be useful in real projects.

SundermannC commented 1 year ago

The idea would be a very simple preprocessor for a single language. For instance, we could use it to generate several variants of a markdown file. UVLS should then identify the preprocessor statements and generate a concrete markdown file given a configuration by removing the preprocessor statements and the parts belonging to deselected features.