2016-09-18 8 views

ответ

4

Нет, к сожалению, это не возможно, причина в том, что тип кортеж представлен в системе типа, как связанный список инстанциаций Tuple, но система типа может» t выражает циклы или рекурсию в сигнатуре функции. (И наличие циклов/рекурсии почти наверняка сделало бы систему типов неразрешимой.)

Одним из путей решения этой проблемы в будущем может быть создание встроенного примитива type function, который оценивает последний тип элемента тип кортежа.

С помощью функции «примитивного типа» я имею в виду функцию типа, которая не может быть записана на самом языке, но вместо этого предоставляется как встроенный компилятором.

В настоящее время Цейлон не имеет подобных функций примитивного типа, но есть несколько других подобных проблем, которые могут быть решены таким образом.

+1

Вопрос, как я понимаю, это не о типе последнего элемента, а о все-но-последнем. Хотя я думаю, что это не сильно изменилось. –

+1

@ PaŭloEbermann Конечно, это в основном та же проблема. –