Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restructure AST for easier use in the IDE backend #68

Open
anka-213 opened this issue May 17, 2021 · 1 comment
Open

Restructure AST for easier use in the IDE backend #68

anka-213 opened this issue May 17, 2021 · 1 comment
Assignees

Comments

@anka-213
Copy link
Collaborator

This mostly consists of adding location information everywhere, but possibly also making it easier to treat the AST uniformly, without having to care about which specific node we are at. One option is to add a separate structure for the uniform AST that we can convert from/to the normal AST.

The "add location information information everywhere" is fairly easy, but there's a large risk of creating tons of merge conflicts, especially with @Martin-Strecker, so we need to coordinate this effort.

@Martin-Strecker
Copy link
Contributor

The question is what this solution would look like.

The answer also depends on the IDE interaction model we would like to have in the future. The current data structure has the advantage that one can get easily rid of location information when it is only of a marginal benefit (for example in some rule transformations required for translations to proof engines). In the rare cases that an error message would be required, it would then not be very precise. But in many cases (such as when generating new rules out of parts of existing ones), one cannot provide precise location information anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants