Size: a a a

2020 May 24

VS

Victor Sapiens in rust_offtopic
@DogeShibu У меня пока от Скалы впечатление как от 100% ООП языка с иммутабельнсотью. Вообще все вокруг объект. Классы и наследование по всюду. Хз кто ее там и почему ФП считает. Вот Haskell и Idris таки ФП. 🤷🏻‍♂️
источник

EG

Emmanuel Goldstein in rust_offtopic
Roman Proskuryakov
а на практике для упоротых есть вендоринг.
Вендорить много сотен зависимостей не очень удобно
источник

p

polunin.ai in rust_offtopic
Victor Sapiens
@DogeShibu У меня пока от Скалы впечатление как от 100% ООП языка с иммутабельнсотью. Вообще все вокруг объект. Классы и наследование по всюду. Хз кто ее там и почему ФП считает. Вот Haskell и Idris таки ФП. 🤷🏻‍♂️
Потому что ФП это как раз про иммутабельность
источник

p

polunin.ai in rust_offtopic
Можно и на сишке писать в ФП стиле, и на чем угодно. Это просто больно будет немного.
источник

VS

Victor Sapiens in rust_offtopic
polunin.ai
Потому что ФП это как раз про иммутабельность
А ООП про логику и данные вместе.
источник

VS

Victor Sapiens in rust_offtopic
Ну таки да
источник

VS

Victor Sapiens in rust_offtopic
polunin.ai
Можно и на сишке писать в ФП стиле, и на чем угодно. Это просто больно будет немного.
Я о том и говорю. Тут на каждом шаге натыкаешься на ООП. Я в своём доменном слое ещё кое как сделал иммутабеллнсоть а как вылез наружу к libGDX там сразу мутабельность и вот это все.
источник

AZ

Alex Zhukovsky in rust_offtopic
Emmanuel Goldstein
В теории можно адекватно это делать:
1. Прибить хеши всех прямых и транзитивных зависимостей
2. Сравнивать их с хешами с гитхаба
3. Фейлить билд при отличиях
твоя предъява в том, что пакетный менеджер которым удобно пользоваться это плохо. Потому что когда либы делать больно, то их будет мало и все их можно будет проревьювить руками
источник

EG

Emmanuel Goldstein in rust_offtopic
Alex Zhukovsky
твоя предъява в том, что пакетный менеджер которым удобно пользоваться это плохо. Потому что когда либы делать больно, то их будет мало и все их можно будет проревьювить руками
Моя предъява в том, что часть вещей, которая должна была бы быть частью стдлибы/языка выносится в сторонние крейты, поддерживаемые неизвестно кем (например, cfg-if)
источник

EG

Emmanuel Goldstein in rust_offtopic
Крейты на десять строчек появляются не от хорошей жизни
источник

AZ

Alex Zhukovsky in rust_offtopic
нет физической возможности иметь в языке всё
источник

EG

Emmanuel Goldstein in rust_offtopic
Пример хорошего микрокрейта — atty
источник

AZ

Alex Zhukovsky in rust_offtopic
всегда будут 10 строчек которые нужны
источник

EG

Emmanuel Goldstein in rust_offtopic
Там много платформо-специфичной логики, реально нетривиальные вещи
источник

EG

Emmanuel Goldstein in rust_offtopic
cfg-if должен быть тупо в стдлибе
источник

AZ

Alex Zhukovsky in rust_offtopic
плюс мне это нравится, засчет этого те же регекспы в итоге переделывают вроде
источник

AZ

Alex Zhukovsky in rust_offtopic
а добавили бы в стд  - хер там
источник

EG

Emmanuel Goldstein in rust_offtopic
А лучше в языке
источник

p

polunin.ai in rust_offtopic
Emmanuel Goldstein
cfg-if должен быть тупо в стдлибе
Есть же #[cfg_if()]
источник

RP

Roman Proskuryakov in rust_offtopic
Emmanuel Goldstein
Моя предъява в том, что часть вещей, которая должна была бы быть частью стдлибы/языка выносится в сторонние крейты, поддерживаемые неизвестно кем (например, cfg-if)
ага, гамма-функция там всякая
источник