Сообщение Re[13]: IEquatable<T> от 14.02.2017 7:50
Изменено 14.02.2017 7:51 vdimas
Re[13]: IEquatable<T>
Здравствуйте, samius, Вы писали:
V>>Сам разве не обратил внимания, что между List<T> и ограничением IEquatable<T> нет никакой связи на уровне типов языка.
S>А ты не обратил внимания, что между списком в Хаскеле и Eq a тоже нет никакой связи на уровне типов языка?
В Хаскеле эта связь есть через текущий контекст вычислений, когда над каждым типом может выводиться более одного ограничения.
В ФП другая техника, другие принципы декомпозиции.
V>>Он ведь правильно пишет (по наитию, скорее):
V>>
S>Какая рефлексия в List<T>?
Рефлексия идёт везде, где в либах используется Comparer<T>.Default.
S>Тебе принципиально впендюривать IndexOf с генериккомпарером внутрь List<T>?
Не понял?
Это отказ об обсуждения систем типов и возможностей параметрического полиморфизма? ))
Ну вот представь, что рефлексия (т.е. хак системы типов) недоступна.
И сразу станет принципиально.
V>>Сам разве не обратил внимания, что между List<T> и ограничением IEquatable<T> нет никакой связи на уровне типов языка.
S>А ты не обратил внимания, что между списком в Хаскеле и Eq a тоже нет никакой связи на уровне типов языка?
В Хаскеле эта связь есть через текущий контекст вычислений, когда над каждым типом может выводиться более одного ограничения.
В ФП другая техника, другие принципы декомпозиции.
V>>Он ведь правильно пишет (по наитию, скорее):
V>>
V>>"Пофигу", потому что ему хочется проигнорить вот этот "разрыв" в системе типов, из-за чего, собсно, и подключается рефлексия.V>>Как он (comparer) там создаётся вообще пофигу.
S>Какая рефлексия в List<T>?
Рефлексия идёт везде, где в либах используется Comparer<T>.Default.
S>Тебе принципиально впендюривать IndexOf с генериккомпарером внутрь List<T>?
Не понял?
Это отказ об обсуждения систем типов и возможностей параметрического полиморфизма? ))
Ну вот представь, что рефлексия (т.е. хак системы типов) недоступна.
И сразу станет принципиально.
Re[13]: IEquatable<T>
Здравствуйте, samius, Вы писали:
V>>Сам разве не обратил внимания, что между List<T> и ограничением IEquatable<T> нет никакой связи на уровне типов языка.
S>А ты не обратил внимания, что между списком в Хаскеле и Eq a тоже нет никакой связи на уровне типов языка?
В Хаскеле эта связь есть через текущий контекст вычислений, когда над каждым типом может выводиться более одного ограничения.
В ФП другая техника, другие принципы декомпозиции.
V>>Он ведь правильно пишет (по наитию, скорее):
V>>
S>Какая рефлексия в List<T>?
Рефлексия идёт везде, где в либах используется Comparer<T>.Default.
S>Тебе принципиально впендюривать IndexOf с генериккомпарером внутрь List<T>?
Не понял?
Это отказ от обсуждения систем типов и возможностей параметрического полиморфизма? ))
Ну вот представь, что рефлексия (т.е. хак системы типов) недоступна.
И сразу станет принципиально.
V>>Сам разве не обратил внимания, что между List<T> и ограничением IEquatable<T> нет никакой связи на уровне типов языка.
S>А ты не обратил внимания, что между списком в Хаскеле и Eq a тоже нет никакой связи на уровне типов языка?
В Хаскеле эта связь есть через текущий контекст вычислений, когда над каждым типом может выводиться более одного ограничения.
В ФП другая техника, другие принципы декомпозиции.
V>>Он ведь правильно пишет (по наитию, скорее):
V>>
V>>"Пофигу", потому что ему хочется проигнорить вот этот "разрыв" в системе типов, из-за чего, собсно, и подключается рефлексия.V>>Как он (comparer) там создаётся вообще пофигу.
S>Какая рефлексия в List<T>?
Рефлексия идёт везде, где в либах используется Comparer<T>.Default.
S>Тебе принципиально впендюривать IndexOf с генериккомпарером внутрь List<T>?
Не понял?
Это отказ от обсуждения систем типов и возможностей параметрического полиморфизма? ))
Ну вот представь, что рефлексия (т.е. хак системы типов) недоступна.
И сразу станет принципиально.