Remix.run Logo
hrmtst93837 4 hours ago

The orphan rule is annoying. It's also one of the few things stopping trait impls from turning crate boundaries into a knife fight, where two deps both decide they own the same foreign type and the compiler has no sane answer once both impls are in the graph.

Rust pays for coherence up front with wrapper types and boilerplate, which is ugly, but the alternative is the kind of ambient monkeypatching that makes APIs hard to reason about once a codebase gets large. A narrow escape hatch might be worth trying, but a global 'disable it' switch sounds like repo poison.