Size: a a a

Rust — русскоговорящее сообществo

2020 September 25

AT

Alexander Tchitchigi... in Rust — русскоговорящее сообществo
вафель 🧇
В расте ленивость надо самому писать — в этом и отличие. И те же итераторы это приличное кол-во кода в разных крейтах, чтобы сделать то, что в хаскеле практически из коробки
Но если сам не пишешь, а пользуешься готовыми, то разница мало заметна. Но уметь пользоваться — очень полезно. Haskell развивает "ленивую интуицию"  на отлично. 😃
источник

V

Vladimir in Rust — русскоговорящее сообществo
вафель 🧇
В расте ленивость надо самому писать — в этом и отличие. И те же итераторы это приличное кол-во кода в разных крейтах, чтобы сделать то, что в хаскеле практически из коробки
Да, но с точки зрения юзера. Что там ленивость, что там. Также про функциональность, в расте тоже можно писать в функциональном стиле. И даже гц никто не заметит если передавать типы по значению.
источник

Э

Эрик in Rust — русскоговорящее сообществo
Alexander Tchitchigin
Но если сам не пишешь, а пользуешься готовыми, то разница мало заметна. Но уметь пользоваться — очень полезно. Haskell развивает "ленивую интуицию"  на отлично. 😃
MagicHash'ами обмазываешься?
источник

в🧇

вафель 🧇 in Rust — русскоговорящее сообществo
Alexander Tchitchigin
Но если сам не пишешь, а пользуешься готовыми, то разница мало заметна. Но уметь пользоваться — очень полезно. Haskell развивает "ленивую интуицию"  на отлично. 😃
Окей, поинт понял 🙂
источник

AT

Alexander Tchitchigi... in Rust — русскоговорящее сообществo
вафель 🧇
В курсе по хаскелю услышал )
А правильно говорить "аппликативный" и "нормальный" порядок редукции. 😂
источник

в🧇

вафель 🧇 in Rust — русскоговорящее сообществo
Alexander Tchitchigin
А правильно говорить "аппликативный" и "нормальный" порядок редукции. 😂
Странно говорить про языки где редукция вроде как не используется 🤔 (в расте же другая модель вычислений, я не путаюсь в терминах?)
источник

AT

Alexander Tchitchigi... in Rust — русскоговорящее сообществo
Эрик
MagicHash'ами обмазываешься?
Нет. А что это и зачем?
источник

Э

Эрик in Rust — русскоговорящее сообществo
Это anti-heap маркер, насколько я помню.
источник

AT

Alexander Tchitchigi... in Rust — русскоговорящее сообществo
вафель 🧇
Странно говорить про языки где редукция вроде как не используется 🤔 (в расте же другая модель вычислений, я не путаюсь в терминах?)
Это оффтоп, а я просто пошутил.
Но вообще, Haskell тоже компилируется в натив, и тем не менее... 😉
источник

Э

Эрик in Rust — русскоговорящее сообществo
Чтобы когда с примитивами работаешь, они не пихались в кучу, а оставались на стеке.
источник

AT

Alexander Tchitchigi... in Rust — русскоговорящее сообществo
Эрик
Это anti-heap маркер, насколько я помню.
Unboxed? Ясно, вспомнил. Кое-где расставлял, да.
источник

в🧇

вафель 🧇 in Rust — русскоговорящее сообществo
Vladimir
Да, но с точки зрения юзера. Что там ленивость, что там. Также про функциональность, в расте тоже можно писать в функциональном стиле. И даже гц никто не заметит если передавать типы по значению.
С точки зрения юзера тоже есть разница — в хаскеле лениво почти всё, в расте — лишь капли.
источник

П

Пашечка in Rust — русскоговорящее сообществo
У меня на работе стек с++, я учу раст, один парень учит хаскель. Порой вместе сидим и обсуждаем офигенские фичи, которые есть и в хаскеле и в расте, но не можем их применить на работе)
источник

Э

Эрик in Rust — русскоговорящее сообществo
Пашечка
У меня на работе стек с++, я учу раст, один парень учит хаскель. Порой вместе сидим и обсуждаем офигенские фичи, которые есть и в хаскеле и в расте, но не можем их применить на работе)
Template power go brr.
источник

r

red75prime in Rust — русскоговорящее сообществo
Пашечка
У меня на работе стек с++, я учу раст, один парень учит хаскель. Порой вместе сидим и обсуждаем офигенские фичи, которые есть и в хаскеле и в расте, но не можем их применить на работе)
Напишите compile-time транспилятор.
источник

KR

Kai Ren in Rust — русскоговорящее сообществo
Vladimir
Да, но с точки зрения юзера. Что там ленивость, что там. Также про функциональность, в расте тоже можно писать в функциональном стиле. И даже гц никто не заметит если передавать типы по значению.
Но как, если нет ссылочной прозрачности и хкт?
источник

П

Пашечка in Rust — русскоговорящее сообществo
red75prime
Напишите compile-time транспилятор.
А кто в это время будет рабочие задачи выполнять? :D
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
как правильно использовать dyn std::error::Error в своей либе? У меня гетерогенные ошибки и в моем случае их скурпулезно в енуме перечислять не хочется. Хочется просто выкидывать Box<dyn Error> как в каком-нить свифте.  

Как правильно? -> Result<T, Box<dyn Error>>? Или нужно +'static?
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Если либа, то следует давать ньютайп над Box<dyn Error + Send + Sync + 'static>
источник

Э

Эрик in Rust — русскоговорящее сообществo
Oleg Andreev
как правильно использовать dyn std::error::Error в своей либе? У меня гетерогенные ошибки и в моем случае их скурпулезно в енуме перечислять не хочется. Хочется просто выкидывать Box<dyn Error> как в каком-нить свифте.  

Как правильно? -> Result<T, Box<dyn Error>>? Или нужно +'static?
anyhow::Result
источник