Можно ли реализовать такую функцию?
Функция будет иметь тип:
f : (a -> b) -> (c -> d) -> Maybe (a -> d)
так, что если b
и c
имеют одинаковый тип при вызове, мы возвращаем Just (a -> d)
в противном случае Nothing
.
Если нет, то есть ли способ создать наши собственные типы для представления функций, чтобы мы могли реализовать эту идею?