I can see the value in going in this direction due to consistency and clarity
but Iām not a fan of making Some more verbose given we already have quite descriptive and long-named traits. Iām not opposed to doing it though, since it does provide value in bringing clarity for people unfamiliar with the concept.
Iām 100% pro *SomeTypes above the other cited options, it still follows the lead of our current and alternative Some naming.
However, if somebody does come up with an interesting alternative (for Some or SomeTypes) I think itās worth hearing.
In an ideal world I would prefer Some/*Some
but I think thatās not possible with the current language constructs and implementation as comptime type alias.
Why not Impl and ImplList? Reading back through the old Github thread, there was never a strong reason not to use Impl and Some now has two strikes against it: collision with Optional variants (in our heads at least), and it doesnāt translate nicely to SomeList.
Some is well established, short and no abbreviation.
Semantics: Some type that conforms to the trait.
*Each complements Some as it is short and no abbreviation too. It implies plurality.
Semantics: Each type conforms to the trait.
IMO the names must be short and easy to recognize. This allows for a āconciseā implicit alternative to the more complex and verbose explicit syntax.