Size: a a a

2020 March 08

AZ

Alex Zhukovsky in rust_offtopic
из резалта в опшн например
источник

AZ

Alex Zhukovsky in rust_offtopic
или из опшна в список из 0-1 элемента
источник

DF

Dollar Føølish in rust_offtopic
Да, А это тип элемента
источник

V

Vabka in rust_offtopic
я прост в этих ваших вузах не учился, по тому за теоркат не шарю
источник

DF

Dollar Føølish in rust_offtopic
Я думаю там произвольный функтор
источник

V

Vabka in rust_offtopic
Alex Zhukovsky
из резалта в опшн например
а
источник

DF

Dollar Føølish in rust_offtopic
f g это функторы
источник

AZ

Alex Zhukovsky in rust_offtopic
Dollar Føølish
Я думаю там произвольный функтор
там вообще не функтор, любые типы.
источник

DF

Dollar Føølish in rust_offtopic
Да, но по логике что то должно быть
источник

DF

Dollar Føølish in rust_offtopic
Не любое
источник

AZ

Alex Zhukovsky in rust_offtopic
Dollar Føølish
Да, но по логике что то должно быть
слушай, в расте тоже констрейнты советуют не на структуру вешать, а на имплы. Так вот тут то же самое. Интересны имплы наверняка будут функторами, но это не повод вешать лишний констрейнт на трейт
источник

DF

Dollar Føølish in rust_offtopic
Хорошо
источник

V

Vabka in rust_offtopic
тоесть есть у нас Option<int> и мы можем ему применить
var optional = new Option<int>.None;
var emptyListOfInts = optional.apply(List<int>.FromOptional);
источник

p

polunin.ai in rust_offtopic
а у карго есть какая-то фича типо "пройдись по всем папкам, и если найдешь импорты несуществующих обхектов, то удали их, а если какие-то нехватает а они есть, то добавь их"?
источник

V

Vabka in rust_offtopic
Vabka
тоесть есть у нас Option<int> и мы можем ему применить
var optional = new Option<int>.None;
var emptyListOfInts = optional.apply(List<int>.FromOptional);
чи шо?
источник

AZ

Alex Zhukovsky in rust_offtopic
trait ~>[F[_], G[_]] {
 def apply[A](f: F[A]): G[A]
}

impl Result[_] ~> Option[_] {
 def apply[A](f: Result[A]): Option[A] = f match {
   Ok(x) => Some(x)
   _ => None
 }
}



impl Option[_] ~> List[_] {
 def apply[A](f: Option[A]): List[A] = f match {
   Some(x) => [x]
   _ => []
 }
}
источник

B

Bogdan in rust_offtopic
Vabka
ну и я его прочитать не могу, так что хз
+
источник

V

Vabka in rust_offtopic
Alex Zhukovsky
trait ~>[F[_], G[_]] {
 def apply[A](f: F[A]): G[A]
}

impl Result[_] ~> Option[_] {
 def apply[A](f: Result[A]): Option[A] = f match {
   Ok(x) => Some(x)
   _ => None
 }
}



impl Option[_] ~> List[_] {
 def apply[A](f: Option[A]): List[A] = f match {
   Some(x) => [x]
   _ => []
 }
}
не вижу никакой проблемы эту залупу во время компиляции разрулить
источник

AZ

Alex Zhukovsky in rust_offtopic
что тут сложного?
источник

AZ

Alex Zhukovsky in rust_offtopic
Vabka
не вижу никакой проблемы эту залупу во время компиляции разрулить
вопрос как эта сигнатура будет в сишарпе выглядеть
источник