-
Notifications
You must be signed in to change notification settings - Fork 64
Description
Currently only Concrete syntax can be printed faithfully to what the user wrote.
-
In many parts of the compiler we need to print
InternalandCore(to a lesser extend, at least for now) code. E.g. error messages, repl, type information in the IDE, etc.
When printing these fragments of code inInternalorCorewe have been careful to print them in a way that they resembleConcretecode, so that it is often very clear what it means and what is the equivalentConcretecode.
However, we need a long term solution to printInternalexactly as it was parsed. Eventually, we will need to support this inCoretoo, especially, when we move typechecking there. This issue will become more and more important as we extend the frontend syntax (Recursive lambdas #1638, Iterator syntax #2126, Special syntax for folds, maps, etc #1992 etc.). -
I would say that this should be done after Remove
Abstract#2002 to minimize the amount of redundant work.
In order to implement this, we should probably use the Info strategy (or something similar) that we are using in Core.