Frontend (command line) examples
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 688
- Forks
- 144
- PR merge metrics
- No merged PRs in 30d
Description
The build setup generates and installs a myriad of frontend executables, some native, some scripts, et cetera.
However, nowhere in the wiki, or even the official documentation is ever given decent examples for their use. For instance:
-
identityTranslatoris hinted at to be able to transpile source-to-source. I've not found any documentary that explains its use.
I have of course studied the--helpoutput, and while one might assume that the options-rose:Fortran_output_language(among others) would be the ones, they actually require input language to be the same as the output language.
There is nothing, no--helptext, no manual page, no documentation, that explains how this command is supposedly transpiling anything.
Maybe it's actually just a sample program; but then, why is it installed globally? -
rose-cc, androse-c++, are, as far as I can surmise from the scarce documentation, drop-in replacements forgcc,clang, etc.
Most frontend commands behave similar to how LLVMclang, or GCC frontends behave: they inherit common options, which little to no hinting at what options are specific to each frontend.
The documentation, scarce as it might be, does include what one could roughly consider examples for transpiling. And by roughly, I really do mean rough: None of them actually translate input source from language $INPUTLANGUAGE to output source language $OUTPUTLANGUAGE.
They appear to do what LLVM Clang's AST rewriting does. Feel free to correct me on this, though.
In short, documentation on these frontends would be useful. While I've been read, grepped, and disseminated the manual pages, documentation, even google to the furthest extend possible, I've yet to actually find anything that properly explains their use.
I know this seems I'm getting hung up on transpiling, and that's mostly because I am: the ROSE framework was recommended for its source-to-source transpiling ability, e.g., from C to Fortran, or vice versa (which, again, I haven't been able to locate).
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the existing wiki, official documentation, manual pages, and --help output for identityTranslator, rose-cc, and rose-c++. Compare those materials with the existing rough transpiling examples and clarify which frontend uses are supported. Done means the documentation provides concrete command-line examples and explains expected input and output languages.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, cpp, fortran
- Domain
- cli, compilers, documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100