  The naive combination of polymorphic effects and polymorphic type assignment
has been well known to break type safety. Existing approaches to this problem
are classified into two groups: one for restricting how effects are triggered
and the other for restricting how they are implemented. This work explores a
new approach to ensuring the safety of polymorphic effects in polymorphic type
assignment. A novelty of our work lies in finding a restriction on effect
interfaces. To formalize our idea, we employ algebraic effects and handlers,
where an effect interface is given by a set of operations coupled with type
signatures. We propose signature restriction, a new notion to restrict the type
signatures of operations, and show that signature restriction is sufficient to
ensure type safety of an effectful language equipped with unrestricted
polymorphic type assignment. We also develop a type-and-effect system to enable
the use of both operations that satisfy and do not satisfy the signature
restriction in a single program.
