Consider "capability" tags to describe tools
- Dominant language
- Python
- Stars
- 9
- Forks
- 9
- Avg merge
- 12d 12h
- Merged PRs (30d)
- 2
Description
At the moment tools are grouped into "categories" which describe what they do, e.g. Fortran compiler, Archiver, PSyclone. They also have a set of flags which modify these but while they only apply to some tools they are held for all, e.g. OpenMP.
An alternative solution might be for each tool to hold an arbitrary list of "capabilities" which could replace both. For instance Cray Fortran would have capabilities of "compile Fortran", "link objects", "OpenMP". By contrast the nVidea compiler would have all those plus "OpenAcc" as well. On the other hand `ar` would have the "archive" capability.
MPI may have to be handled by a wrapper, much as it is in implementation.
Contributor guide
Research direction
No file, test, or entry point is named. Start by tracing how tools currently store categories and flags, then review how MPI wrappers are represented; the issue is done only when a decided capability model can replace both concepts while covering the listed compiler and archiver examples.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fortran, python
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100