Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simple variant generation mechanism #39

Open
SundermannC opened this issue Jun 27, 2023 · 2 comments
Open

Simple variant generation mechanism #39

SundermannC opened this issue Jun 27, 2023 · 2 comments
Labels
enhancement New feature or request Solution Space

Comments

@SundermannC
Copy link
Member

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:

  • Markdown
  • Latex (may require some restrictions)
  • A visualization format such as GraphViz
@SundermannC SundermannC added enhancement New feature or request Solution Space labels Jun 27, 2023
@TobiUUlm
Copy link
Collaborator

TobiUUlm commented Jul 4, 2023

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
Copy link
Member Author

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Solution Space
Projects
None yet
Development

No branches or pull requests

2 participants