Size: a a a

2021 March 14

ΑZ

Αλεχ Zhukovsky in rust_offtopic
но нагрузка ощутимо снизилась
источник

МП

Мимо Проходящий... in rust_offtopic
Hirrolot
impl<T> MyIface for T where T: io::Writer {}
я имел ввиду не в точности io.Writer, а такой же ни к чему не привязанный и абстрактный как io.Writer.
type Petter interface { PetTheCat() }
источник

s

suhr in rust_offtopic
Всё, что внешне неотличимо от утки может передаваться туда, где требуется утка.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Мимо Проходящий
я имел ввиду не в точности io.Writer, а такой же ни к чему не привязанный и абстрактный как io.Writer.
type Petter interface { PetTheCat() }
impl<T: Into<Petter>> MyDuperInterface for T { .. }
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
можно что-то в таком духе
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
реализовать интерфейс обычно ничего не стоит
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
если реализация тупая и бойлерплейтная то есть дервайввы
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
структурная вс номинальная - вопрос философвский, мне ближе вторая
источник

s

suhr in rust_offtopic
Если в расте нужно продумывать абстракции заранее, то в го они появляются почти спонтанно.
источник

А

Алексей in rust_offtopic
Αλεχ Zhukovsky
структурная вс номинальная - вопрос философвский, мне ближе вторая
на самом деле не только и не столько философский
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Алексей
на самом деле не только и не столько философский
ну мне кажется что оверхед очень незначительные за компайл тайм гарантии
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
без макросов конечно сильно хуже
источник

А

Алексей in rust_offtopic
структурная типизация гораздо более гибче чем номинальная
источник

МП

Мимо Проходящий... in rust_offtopic
Αλεχ Zhukovsky
ну мне кажется что оверхед очень незначительные за компайл тайм гарантии
а каких там компайл тайм гарантий нет в структурной типизации?
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Мимо Проходящий
а каких там компайл тайм гарантий нет в структурной типизации?
если ты интерфейс поменял по любым причинам (а такое регулярно происходит), то все кто его "реализуют" молча перестали,
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
эт не очень круто
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
вторая проблема когда у тебя тип "случайно" реализует интерфейс который по логике ему не нужен
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
в дотнете регулярно проблема от того что все кому ни попадя тустринг реализуют например
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
всякое такое
источник

А

Алексей in rust_offtopic
Αλεχ Zhukovsky
если ты интерфейс поменял по любым причинам (а такое регулярно происходит), то все кто его "реализуют" молча перестали,
в номинальной другая проблема: если скажем метод len есть у десятка вещей, но в отдельный трейт не вынесен, то полиморфно этот метод уже особо не вызовешь
источник