Sorts can be costly (though parsing is definitely our highest-priority optimization target). At some point, it might make sense to memoize the topological sort we perform on a dag in build_usage_examples. Questions include:
do we assume the sort will always be over the collapsed view of provenance?
does group_by_action then just get the dag as an arg, and grab the sorted view from a dag property?
is there any reason group_by_action would not want a topologically sorted view? We're currently flexible on that, but could lock it in.
Sorts can be costly (though parsing is definitely our highest-priority optimization target). At some point, it might make sense to memoize the topological sort we perform on a dag in
build_usage_examples
. Questions include:group_by_action
then just get the dag as an arg, and grab the sorted view from a dag property?group_by_action
would not want a topologically sorted view? We're currently flexible on that, but could lock it in.