Is there a specific reason why we have two “submit” implementations: one for single party and one for multiple ones?
According to the docs for
IsParties (Module Prelude — Daml SDK 1.10.0 documentation):
Accepted ways to specify a list of parties: either a single party, or a list of parties.
I played with this a bit and got the following code:
submit : IsParties p => p -> Commands a -> Script a submit isParties commands = do let parties = toParties isParties case parties of  -> error "Specify at least on party." [party] -> party `submit` commands _ -> submitMulti parties parties commands
This seems backward compatible to me.