Size: a a a

2020 April 04

P

Pavel in rust_offtopic
Victor Sapiens
Так это дело в тебе а не в Расте. Этож тоже самое что если бы у тебя был проект с десятками место где ты objet передаёшь как параметр а потом приводищь к нужному тебе типу.
кстати да, раст не даёт передавать не обжект без каста, всё ему dyn надо
источник

G

Gymmasssorla in rust_offtopic
Soul
Ну здорово. А в нетривиальных случаях?
В нетривиальных случаях выносят в отдельную лемму, см. F* tutorial
источник

P

Pavel in rust_offtopic
я когда ливал, то попросил позвать, когда Антон прочитает весь оффтопик. меня за две недели или больше никто не ю позвал. Подумал, что забыли, а оказывается Антон ещё даже до моего того сообщения не дошёл, ток начало марта дочитывает
источник

G

Gymmasssorla in rust_offtopic
Может тут гуру ФП подскажут мне как сделать такую фигню в Rust:

У меня есть Stream<MyEnum>, где MyEnum =

enum MyEnum {
   A, B, C
}


Как мне обработать в отдельных стримах варианты MyEnum? Идеально - чтобы у меня было три функции, обрабатывающие стрим из MyEnum::A, MyEnum::B, MyEnum::C соответственно.

Сейчас приходят только убогие решения с .map() внутри с lazy_static! (или же свою реализацию FnMut, в которой содержатся TX части стримов, что так же убого).
источник

G

Gymmasssorla in rust_offtopic
Может тайп-левел с Either нужен какой-нибудь, хм
источник

S

Soul in rust_offtopic
делаешь "убогий" map, а сверху оборачиваешь функцией, которая принимает функции-обработчики отдельных вариантов енума
источник

VS

Victor Sapiens in rust_offtopic
Dika
Тип с приватным конструктором. Таким образом можно написать тип функции, "которая принимает число от 3 до 7". И ошибиться можно лишь в одном месте, в коде конструктора, а не каждый раз при использовании. То есть компайлтайм валидации здесь нет только у конструктора. Это неплохой компромисс, и можно использовать во многих языках, а не только в упоротых.
https://wiki.haskell.org/Smart_constructors
Хм, я в C# похоже использую.
class Title
{
//конструктор
Title(string value)
{
if(string.IsNullOrWhiteSpace())
{
// Тут дальше логика бросания своей кастомной ошибки вроде MyDomainException
источник

AZ

Alex Zhukovsky in rust_offtopic
Victor Sapiens
Блин, вспомнил сериал Остановись и Гори 😁
а скользящие?
источник

AZ

Alex Zhukovsky in rust_offtopic
или вот это
источник

AZ

Alex Zhukovsky in rust_offtopic
источник

AZ

Alex Zhukovsky in rust_offtopic
квантовый скачок ваще топ
источник

VS

Victor Sapiens in rust_offtopic
😁
источник

VS

Victor Sapiens in rust_offtopic
Alex Zhukovsky
квантовый скачок ваще топ
Не видел, надо глянуть.
источник

G

Gymmasssorla in rust_offtopic
Soul
делаешь "убогий" map, а сверху оборачиваешь функцией, которая принимает функции-обработчики отдельных вариантов енума
Это немного не то, ведь мне нужно обрабатывать не отдельные варианты, а стримы. Ну уже неважно, я нашёл решение с Either
источник

VS

Victor Sapiens in rust_offtopic
Pavel
не резко, у большинства разработчиков толер к плохому колу, им бы костыль пристроить и пойти на обед. а реально важность хорошего кода проявляется в том, что снижается сложность добавления фич, а в первый год сильно много не сделают
+ се лави.
источник

VS

Victor Sapiens in rust_offtopic
Mike Lubinets
Я слышал, тут много питонистов.
Посоветуйте курс уровня «никогда не кодила» для девушки биолога.
Нужно прямо с основами, и больше глобально про то как писать мелкую скриптуху, нежели всякий веб с джангами.
Книга Автоматизируем рутинные задачи с помощью Python. Там ещё робот прикольный нарисован
источник

AZ

Alex Zhukovsky in rust_offtopic
Gymmasssorla
Может тут гуру ФП подскажут мне как сделать такую фигню в Rust:

У меня есть Stream<MyEnum>, где MyEnum =

enum MyEnum {
   A, B, C
}


Как мне обработать в отдельных стримах варианты MyEnum? Идеально - чтобы у меня было три функции, обрабатывающие стрим из MyEnum::A, MyEnum::B, MyEnum::C соответственно.

Сейчас приходят только убогие решения с .map() внутри с lazy_static! (или же свою реализацию FnMut, в которой содержатся TX части стримов, что так же убого).
точно знаю что скала умеет экзостив рскидывать по отдельным функам
источник

AZ

Alex Zhukovsky in rust_offtopic
еще говорят призмы могут помочь
источник

VS

Victor Sapiens in rust_offtopic
О, прикольно
источник

G

Gymmasssorla in rust_offtopic
Alex Zhukovsky
еще говорят призмы могут помочь
Ссылку можно?
источник