-
Notifications
You must be signed in to change notification settings - Fork 110
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
astool tool improvement idea: pruning #95
Comments
I wonder if this is making it too easy, and goes against design principles and the USP of adding your own vocabularies. The pruning might be an additional CLI action that can be part of In general for non-AS vocabularies that people use to build their extension, the OWL definition would be an intricate part of the design process of the application. Very carefully designed and fit-to-the-task, so no pruning needed. Where the extensions build on top of ActivityStreams this careful-design-approach is still a best-practice then. Instead of auto-pruning it might be better to have a directive telling the code generator to ignore parts of the AS2 spec for code generation (i.e. to manually prune). This way you don't have to cut things from the spec, and just remove the directives where needed as your app + extension requires. (From my perspective and understanding ignore directives is more of a should-have than auto-pruning, which is a could-have) |
I see what you're saying. The difficulty is -- if I'm remembering right, this was some nasty code -- that
As such it doesn't have a way to really read the output generated code to do the prune, nor currently does it have a way to save the internal struct state that could read to either a reproducible non-pruned code-gen command or a pruned version. That's a long way of saying: it's far easier to introduce something like a Now the idea of splitting out such a behavior for something like EDIT: I think my diagram is slightly misleading (the loop arrow should come after the "internal structs") but making that diagram was so hard I can't be arsed to fix it. |
Or it can be stand-alone and provide all options, depending on how you combine things. |
The idea is that the tool would do the existing steps:
Then the novel functionality:
This could cut down on compilation and linking time as well as binary bloat, since the Manager is linked against every instantiation.
Note that a tricky bit will be to make sure it works for others who want to provide alternate implementations to go-fed's interfaces.
The text was updated successfully, but these errors were encountered: