Geben Sie Rollen und verwirrendes Verhalten durch "Zwang" ein

Ich habe eine Art Id aund ich versuche , aus Versehen Nötigung zu verhindern, beispielsweise ein Id Doublezu ein Id Int. Wenn ich Typrollen richtig verstehe, sollte Folgendes nicht kompiliert werden. {-# LANGUAGE RoleAnnotations #-} import Data.Coerce (coerce) type role Id nominal newtype Id a =...