‹ BackHN Continuity

Thread

C++ Insights – See your source code with the eyes of a Compiler

172 points · 36 comments · rramadass

  1. f1shy · · focus · HN ↗
    I must be the only one who (while I like the tool) feel a little strange, somewhere between sad, angry, annoyed and disappointed (can’t really express it), that a language needs (or at least is of good use) such a tool.

    Like: I wish what is the first interpretation of my code to be obvious. Is not about advanced optimization, or nitty gritty compiler tricks, is about the language. This tool is useful in any C++ compiler. How did we end with such a complex language?

    I mean (sorry, very personal take) the programming language is for me a tool to help me think about a problem and its solution. In this era of LLM more than before, is not a tool to get the machine to do something, is a language for formalizing ideas, problems and solutions, like math. Should not be so obscure, that you need to be a lawyer to understand it, right? Or I am very much old and totally in the weeds with my ideas?

    1. rramadass · · focus · HN ↗
      You have misunderstood the language and the tool.

      Compilers for all languages have the concept of "lowering" the level of source-language abstractions from high-level to low-level viz. Written Source -> Simpler Source -> AST -> IR -> Machine Code. One type is "desugaring" i.e. transforming complex syntax to simpler ones so that the following stages of compilation have to operate only on a smaller and hence more manageable language subset.

      This tool shows both desugaring and other lowering (eg. implicit transformations, type deductions etc.) within the C++ source language by regenerating the source from the AST thus giving you full visibility until that stage in the compilation process.

      PS: Explanatory video presentation by the author - <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=VJ6ZvDRYzNE&amp;t=558s" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=VJ6ZvDRYzNE&amp;t=558s

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.