+1 from the perspective of a vendor. When trying to develop strategies I often find myself wondering "Am I missing any important steps" when doing optimizations and such. I think marker interfaces go a long way in helping with that because I now longer have to enumerate all the steps I can think of and reason about them individually. Having coherent documentation would be even nicer.
On Thu, Apr 9, 2015 at 7:29 AM Marko Rodriguez <[email protected]> wrote: > Hi Stephen, > > That sounds good. I think we could put this in the docs (perhaps auto > generated from preprocessor.sh) where we have a table of the all steps and > their inheritance (MapStep, FlatMapStep, etc.) as well as their interfaces > (Ranging, Mutating, etc.). This is easy to do with reflection and Kuppitz > could have it inserted automagically on doc build. > > Marko. > > http://markorodriguez.com > > On Apr 9, 2015, at 5:26 AM, Stephen Mallette <[email protected]> wrote: > > > This issue had me thinking a bit: > > > > https://issues.apache.org/jira/browse/TINKERPOP3-620 > > > > As the list of marker interfaces grows for steps, it will be interesting > to > > see how we will properly maintain them. It worries me a bit that there > > could be ill-effects if we miss a marker for a step somewhere. Perhaps > we > > could do something generative in the docs to produce a "report" that more > > clearly shows the steps and their groupings via marker? Maybe a matrix: > > > > > > STEP | Mutating | Communitative | Ranging | ... > > AddVertexStep | X | | | ... > > RangeGlobalStep | | | X | ... > > > > Not only could we use something like this for general quality control > > before release, but we it would be a pretty nice tool for strategy > > developers to have as a reference. > > > > thoughts? > >
