Size: a a a

2021 February 27

EG

Emmanuel Goldstein in rust_offtopic
Решил вернуться к ассемблеру
@
SIGSEGV на mov rdx, rsi
источник
2021 February 28

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Kai Ren
Хм... логический что ли...

Актора А отправляет месседж1 актору Б и для продолжения процесса нам надо чтобы он от Б получил месседж2. Актору Б для того чтобы отправить месседж2 актору А, нужно от него ещё получить месседж3. Но А отправляет месседж3, только когда получит месседж2.

Типо да, ничего не лочится в традицинном смысле этого слова, но процесс зависнет и не будет продолжаться ожидаемым образом. Своеобразный дедлок условий никуда не делся.

Думаю именно подобные моменты Алекс подразумевал, что это логическая ошибка.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Emmanuel Goldstein
Если все акторы спокойные, то программа завершается
ну это явно не так, иначе любая программа на старте завершалась бы потому что в первый момент времени никто никому ничего не шлет
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Emmanuel Goldstein
Это всё ещё устраняет некий класс ошибок, и в целом акторы — это любовно да прельстиво
акторы в чем-то удобны, но в чем-то наоборот
источник

ΑZ

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

ΑZ

Αλεχ Zhukovsky in rust_offtopic
тупо с 60к до 20к
источник

ΑZ

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

ΑZ

Αλεχ Zhukovsky in rust_offtopic
ну типа раньше отправлялось а теперь отрефачили чето и то сообщение больше не приходит
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
хотя если все типизировать такое наверное происходить не должно. Но на практике бывает
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
а ещё если вспомнить стейт-машины Become/Pop/... то ваще пиздец
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Emmanuel Goldstein
|| это всрато и конфликтует с логическим или
нет, как раз растовый синтаксис топ
источник

ΑZ

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

ΑZ

Αλεχ Zhukovsky in rust_offtopic
я в расте каждый пятый раз пишу что-то вроде
foos.map(|(x, _)| x.do_stuff())
и каждый раз в жс/шарпе горю что там так нельзя
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Emmanuel Goldstein
Хочу синтаксическую фичу, которая преобразовывает
obj.with(|foo| {
    /* rest of code */
})
в
foo <- obj.with();
/* rest of code */
обычно делают наоборот 2 в 1
источник

s

suhr in rust_offtopic
Αλεχ Zhukovsky
я в расте каждый пятый раз пишу что-то вроде
foos.map(|(x, _)| x.do_stuff())
и каждый раз в жс/шарпе горю что там так нельзя
Тапл → массив, деструктурирование → обращение по индексу.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
suhr
Тапл → массив, деструктурирование → обращение по индексу.
покажи массив (i32, String) ?
источник

s

suhr in rust_offtopic
Αλεχ Zhukovsky
покажи массив (i32, String) ?
[42, "foo"] : [number, string]
источник

s

suhr in rust_offtopic
В тайпскрипте так можно.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
suhr
[42, "foo"] : [number, string]
это не массив а хлист
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
это раз
источник