Чтобы завершить ответ @Moritz
, вам нужно выбрать аргумент типа для T1
, который является подтипом типа ввода каждой функции в списке. Nothing
соответствует требованиям - это подтип любого типа.
scala> val l: List[Nothing => Any] = List((b: String) => b, (a: Int) => a)
l: List[(Nothing) => Any] = List(<function1>, <function1>)
Экзистенциальный тип также работает:
scala> val l: List[_ => _] = List((b: String) => b, (a: Int) => a)
l: List[Function1[_, _]] = List(<function1>, <function1>)