Conversation
Member
|
Thanks for the PoC! I'll probably be only able to look into it after VDS, but I guess it doesn't become stale too quickly. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is a quick sketch of the kind of coupling of
VandGmodules I described during today's GobCon regarding @michael-schwarz's question.To use this untested prototype, replace
in an analysis with
Then instead of
man.globalandman.sideg, use (currently not so well named/scoped)global manandsideg man.Additionally, there's
all_globals man.The generality of this interface is that
Vg.Make2could be in-place replaced withVg.Make3to switch from the extra-unknown-based trick to a map domain instead (the kind of thing used for privatizations for similar stuff). This is probably just less efficient, but such change should require no other code changes atglobal,sidegandall_globals.On the other hand, switching
Vg.Make2toVg.Makewould just removeall_globaland just be a thin wrapper against the initial approach. But all the uses ofglobal manandsideg manshould remain valid.