Code is linked to textual representations because code... is text? The entire point is that there are algorithms to go from "print()" to something that actually makes the computer work. How else could it even possibly work?
I think we don't have any sort of flexible AST sort of thing because they're mostly not necessary. The hard problems of programming don't usually have much to do with syntax.
And if you're going to downvote, kindly explain why, thanks. I just want to know exactly how this thing is supposed to work...
I may recall incorrectly but AppleScript may be an example: some file formats are serialized ASTs. The editor displays it as textual code. A downside of this is that you can’t save a syntactically invalid file.
You could always have an AST node to encapsulate the invalid code. Of course any affected code would be stuck in the source format it was written in until it was fixed.
Sure it's an intuitive way of representing your data. Is it the most appropriate though?
See an example [0] about using Projectional Editing in order to use mathematical notations for formulas.
There are visual programming languages that chain together blocks, instead of raw text.
> The hard problems of programming don't usually have much to do with syntax.
I guess it depends on how you define hard. You are clearly talking about "a singular issue that needs to be solved", which really only effects a single developer / team and, to a lesser extent, those that use that solution. But if you consider something like syntax, you're now talking about something that much a much smaller impact _per developer_, but has that impact on _every_ developer. The syntax issue may have a much larger impact overall.
I think we don't have any sort of flexible AST sort of thing because they're mostly not necessary. The hard problems of programming don't usually have much to do with syntax.
And if you're going to downvote, kindly explain why, thanks. I just want to know exactly how this thing is supposed to work...