BNF-based HLL code generation & associated user(tool)

Seima Rao <>
Fri, 25 Sep 2015 14:00:31 +0530

          From comp.compilers

Related articles
BNF-based HLL code generation & associated user(tool) (Seima Rao) (2015-09-25)
| List of all articles for this month |

From: Seima Rao <>
Newsgroups: comp.compilers
Date: Fri, 25 Sep 2015 14:00:31 +0530
Organization: Compilers Central
Keywords: question, syntax, comment
Posted-Date: 27 Sep 2015 15:05:50 EDT


        I have a requirement wherein, I would need to implement a tool
        that generates C code from the C grammar. For that matter C++.

        This is unlike what a compiler does.

        The C grammar is embedded inside the tool and some handholding
        (aka menu) would put proper identifiers and context(i.e. particular
        production to generate from).

        The tool will not have anything to do with semantics, though so
        this makes the job easier. No parsing is required.

        My question is , is this top-level generation of language code
        from grammar(by me) & semantics, etc(by anyone) been done
        historically ?

        My basic motive in asking this is to understand, how usefully
        have dimensions internal and external been inputted to
        such "compilers".

        I will give an example:

        Say, I intend to inspect 'C' codes for HLL-driven parallelism
      like EPIC/VLIW, Multithreading.

      Then grossly speaking, a dimension of 'parallelism' and
        then a subdimension of 'IPC' can be input to the tool
      along with other general-purpose inputs which I have mentioned
      earlier. This will allow someone to inspect VLIW C snippets
      via an automated system.

      Before proceeding to implement this tool, I would like your
      help in assimilating if others have attempted before and
      any suggestions that you want to make.

Seima Rao.
[Sounds sort of like the syntax directed editors that were popular 30 years ago. -John]

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.