Date: Thu, 13 Apr 2023 21:54:46 +0100
Hi folks,
Further to today's meeting I wanted to add a further thought about
standardizing explicitly named algorithms, such as Dijksrta's.
To recap:
1. I expressed worry with this direction as I think we should be
standardizing what algorithms do, rather than how they do it. I drew an
analogy with sort and stable_sort: this is what is standardized, not
quick_sort, merge_sort etc. Therefore, my preference is the shortest_path
'driver' approach.
2. A counter-argument was given that users may wish to specify a particular
algorithm since e.g. Dijkstra's is inappropriate if there are negative
weights.
That's pretty much where we left it at the meeting.
However, I think what point 2 is really highlighting is that the
shortest_path 'driver' algorithm should be sufficiently flexible to
disambiguate things like this (and this is true regardless of whether there
are explicitly named alternatives). For example, I could imagine an
overload set with a tag parameter indicating whether there are negative
weights.
All the best,
Oliver
Further to today's meeting I wanted to add a further thought about
standardizing explicitly named algorithms, such as Dijksrta's.
To recap:
1. I expressed worry with this direction as I think we should be
standardizing what algorithms do, rather than how they do it. I drew an
analogy with sort and stable_sort: this is what is standardized, not
quick_sort, merge_sort etc. Therefore, my preference is the shortest_path
'driver' approach.
2. A counter-argument was given that users may wish to specify a particular
algorithm since e.g. Dijkstra's is inappropriate if there are negative
weights.
That's pretty much where we left it at the meeting.
However, I think what point 2 is really highlighting is that the
shortest_path 'driver' algorithm should be sufficiently flexible to
disambiguate things like this (and this is true regardless of whether there
are explicitly named alternatives). For example, I could imagine an
overload set with a tag parameter indicating whether there are negative
weights.
All the best,
Oliver
Received on 2023-04-13 20:55:00