Size: a a a

2020 June 05

𝚙

𝚙∨¬𝚙 in rust_offtopic
но я точно слышал термин type erasure очень много раз
источник

MB

Mikail Bagishov in rust_offtopic
Ну и мономорфизация/type erasure это не совсем про тайпчекинг
источник

𝚙

𝚙∨¬𝚙 in rust_offtopic
я всегда думал что std::function, std::bind делает type erasure
источник

𝚙

𝚙∨¬𝚙 in rust_offtopic
ну типа сами шаблоны понятно что это строго по vtable дедукции
источник

MB

Mikail Bagishov in rust_offtopic
Например, в C++ мономорфизация и тайпчекинг после нее.
В расте мономорфизация и тайпчекинг до нее.
В джаве стирание и тайпчекинг до него.
источник

MB

Mikail Bagishov in rust_offtopic
𝚙∨¬𝚙
я всегда думал что std::function, std::bind делает type erasure
Они стирают типы.
источник

𝚙

𝚙∨¬𝚙 in rust_offtopic
void*
источник

MB

Mikail Bagishov in rust_offtopic
Ну std::vector<T> не стирает
источник

NL

Nick Linker in rust_offtopic
𝚙∨¬𝚙
что вы все ждали параметрический полиморфизм в го
Я наоборот жду, что его не будет. Я год назад поспорил с одним парнем, что в Го через пять лет дженериков не будет.😑
источник

AB

Artöm Bakri Al-Sarmi... in rust_offtopic
𝚙∨¬𝚙
я всегда думал что std::function, std::bind делает type erasure
function делает
источник

DF

Dollar Føølish in rust_offtopic
Да
источник

DF

Dollar Føølish in rust_offtopic
Есть ещё буст еража
источник

MB

Mikail Bagishov in rust_offtopic
Mikail Bagishov
Они стирают типы.
а, да. я про std::bind погорячислся видимо, он вроде не стирает.
источник

MB

Mikail Bagishov in rust_offtopic
ну а std::function даже не видит тип твоей функции (он знает только типы аргументов и возвращаемого значения), поэтому у него нет выхода кроме как стирать.
источник

AB

Artöm Bakri Al-Sarmi... in rust_offtopic
Mikail Bagishov
ну а std::function даже не видит тип твоей функции (он знает только типы аргументов и возвращаемого значения), поэтому у него нет выхода кроме как стирать.
При этом зная тип, можно получить оригинальный функтор
источник

DF

Dollar Føølish in rust_offtopic
Ого
источник

DF

Dollar Føølish in rust_offtopic
У него конверсия определена ?
источник

AB

Artöm Bakri Al-Sarmi... in rust_offtopic
Указатель на него, ошибся https://en.cppreference.com/w/cpp/utility/functional/function/target
источник

AB

Artöm Bakri Al-Sarmi... in rust_offtopic
Dollar Føølish
У него конверсия определена ?
Нет, шаблонный метод. По ссылке есть пример
источник

AB

Artöm Bakri Al-Sarmi... in rust_offtopic
Хз зачем правда
источник