Reimplement translation of sum types for more practical interfaces