Named adapter
Alternate view of a type with its own wire-shape.md or behavior.
In current Ship design, named adapters are ordinary named behavior modules or view types, not competing implicit instances:
module behavior PublicUserJson: Encode(User) { ... }
module behavior UserByName: Order(User) { ... }
They are passed through API-named module parameters, such as encoder =
PublicUserJson or order = UserByName. The compiler never picks a named adapter implicitly for canonical behavior lookup. See behavior modules.