Re[11]: Шейпы убрали из C#9
От: hi_octane Беларусь  
Дата: 05.05.20 11:54
Оценка:
S>Зачем с нуля? Что кодогенерацию отменили? Мы как раз в этой теме и сидим. Мы вместо явного интерфейса используем op методы, которые мы можем и явно подменить.
S>Смысла особого нет для тех же числовых типов использовать op_XXX
С арифметикой можно было бы вырулить сравнительно малой кровью. Но есть задачки посложнее. Причиной появления шейпов было то что в существующих дженериках хрен запишешь ограничение "тип T имеет статический метод Create(int, string)" или "имеет экземплярный или экстеншен метод GetAwaiter()", при том что в обсуждении развития языка всё больший упор делается на развитие возможностей extension методов (например поддержку GetEnumerator() расширений), и т.д. C++ показал как это сделать относительно красиво и читабельно. Имея возможность такой записи, нужно думать — может можно шейпы вообще не вводить, и все сценарии закрываются дженериками, а значит не требуют и серьёзных изменений рантайма.
Отредактировано 05.05.2020 12:02 hi_octane . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.