-
Notifications
You must be signed in to change notification settings - Fork 35
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
Recipe: Dependency loop detection #240
Conversation
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you very much for this recipe @Lotes!
It makes a lot of sense to have this recipe and I like the nice application for the hello-world example!
However, the first section with the motivation is not clear enough from my point of view. After reading the first sentences, it is not very clear, what the actual problem is.
Thanks @Lotes for the improvements! The two use cases are much more clear in the introduction now and I like the explicit examples. "approved" from my side 🙂 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, can be merged after resolving the minor issues below.
I added a recipe for detecting any kind of dependency loop and resolving acyclic dependencies.
It is not specific to Langium, but it is one of these problems, that might need to be solved for several language features. Like recursion detection or recursive data structures.
The detection is implemented as a Langium validation. I think this is useful for users, that have never came across with such graph algorithms.