Size: a a a

2021 May 26

B

Börgar in rust_offtopic
так все, завтипы в расте?
источник

TK

Traveller Kolsky in rust_offtopic
Но это не то
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
а давай теперь усложним задачу:

zip : Vect n a -> Vect n b -> Vect n (a, b)

Как в расте будет?
источник

AN

Alex Noname in rust_offtopic
ну один ингредиент все равно мне кажется я правильно понял. что нужен уникальный тип для рантайм значения.
источник

П

Пух in rust_offtopic
Хочется круче жеж)
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
ну есть такое, поэтому подобие завтипов в хачкеле нгазывалось синглтоны :)
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
typenum это некое подобие этого, но только для чисел
источник

B

Börgar in rust_offtopic
так, тоесть тут подходит жопа, тк надо конст женерик
источник

B

Börgar in rust_offtopic
@Psilon мне интересно похоже ли это на то, о чем вы говорите
источник

AN

Alex Noname in rust_offtopic
zip<N: Unsigned, MyVec<N, A>, MyVec<N, B> > (...)
источник

TK

Traveller Kolsky in rust_offtopic
Нагенерить 100500 уникальных типов, возможно с помощью typenum, и как-то попытаться реализовать это уродство.
Которое будет конечным.
источник

B

Börgar in rust_offtopic
rонст-женерик
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
ну это типа завтипов на минималках, да
источник

AN

Alex Noname in rust_offtopic
только пиздец кодогену.
источник

B

Börgar in rust_offtopic
кста typenum таки бесконечный
источник

B

Börgar in rust_offtopic
только лимит рекурсии в 256
источник

AN

Alex Noname in rust_offtopic
точноее Unsigned не нужен. Нужен просто токен любой.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Что насчет

foo : (s1: String) -> (s2: String) -> (s1 = s2) -> String

?
источник

B

Börgar in rust_offtopic
а, так заенкодить стринг в тайпнум, уже проходили
источник

AN

Alex Noname in rust_offtopic
ну все верно. У тебя String это не просто String. А какой то String который родился в конкретном месте програмы.
источник