Программирование

Ответить в тред Ответить в тред
Rust #14 /rust/ Аноним 26/08/20 Срд 21:00:55 17890611
rust-social-wide.jpg 133Кб, 2048x1024
2048x1024
gorust.png 57Кб, 702x468
702x468
woim4r5feef51.jpg 55Кб, 773x323
773x323
dvach-02.webm 2422Кб, 1920x1056, 00:00:12
1920x1056
Аноним 26/08/20 Срд 21:02:30 17890652
unsafe.png 236Кб, 701x700
701x700
Конечно же я забыл поменять номер треда.
Аноним 27/08/20 Чтв 01:13:55 17892253
1
Аноним 27/08/20 Чтв 04:58:47 17892724
Работу завезли? Лохчейны или нормальные сервисы?

У меня с растом какая-то странная история, я уже где только не добавился во всякие коммунити, но так и не начал ничего на нём писать.
Аноним 27/08/20 Чтв 09:07:03 17893355
>>1789065
пусть всегда будет 14, мне понравился
Аноним 27/08/20 Чтв 09:07:44 17893376
>>1789272
работы нет, одни лохчейны
Аноним 27/08/20 Чтв 20:24:11 17902477
>>1789272
Делою фулстек на расте. Зависимость есть, брат жив.
Аноним 27/08/20 Чтв 21:53:10 17903108
>>1790247
Зарплата? Требования? Компиляешь wasm? Или про какой ты фулстек?
Аноним 27/08/20 Чтв 22:16:29 17903249
>>1789272
>нормальные сервисы
Какие сервисы?
Либы экосистема для прода может еще и сырно вато, но особо не вникающему мимокроку написать рестик + фронт на последних высокоуровневых вас либах достаточно просто
Аноним 27/08/20 Чтв 22:50:03 179036210
>>1790310
Зарплата не в рублях сорян. Компиляю wasm, ага.
Аноним 28/08/20 Птн 00:27:44 179043411
>>1790362
Чёт лол с твоей уверенности что только у тебя не в рублях.
Аноним 28/08/20 Птн 00:51:25 179045012
Те кто много уже кодил на расте, поясните за его недостатки. Очень интересно каков раст с точки зрения опытного пользователя, без розовых очков.
Аноним 28/08/20 Птн 01:21:03 179046713
>>1790450
Порог вхождения слишком высокий, никто из треда не осилил.
Аноним 28/08/20 Птн 01:45:16 179048614
>>1790450
При всей сложности языка, как только хочешь придумать клёвую зирокост ёба-абстракцию, тут же натыкаешься на то, что тебе нужны фичи типа GAT и специализации, которые хер пойми когда доделают и когда стабилизируют и приходится городить костыли.
Аноним 01/09/20 Втр 14:19:55 179477415
inrustwetrust.jpg 54Кб, 512x512
512x512
>>1790450
По минусам могу сказать за себя:
- Сложно вкатываться, даже для программиста с опытом. Первую неделю-две боролся с компилятором и уродливом кодом. Потом в принципе пишется как и на каком-нибудь Go или TypeScript. Но вот с порогом входа надо чё-то делать, отбивает желание продолжать.
- Сырые крейты и библиотеки. Всё в глубокой альфе-бете-гамме, даже родные библиотеки, которые поддерживаются комьюнити редко 1.0. И они все друг от друга зависимы аля какой-нибудь npm. Какой-нибудь печально известный actix за собой тянет пол crates.io таких же сырых библиотек.
- Медленный компил. Хеллоуворлд нормально, но если подрубить какие-нибудь зависимости, то вешайся. Перекомпил всего проекта - вообще забей. Можно сразу идти чай ставить.
- Малое комьюнити. Я где-то в середине июля решил выучить Rust, сидел в тредах, чёт писал, спорил, семенил в общем. Когда мне надоело - треды умерли нахуй. Показательно. Найти прогеров на расте думаю тоже не так просто.

В целом раст выглядит прикольно, но ОЧЕНЬ сыро. И непонятно когда это изменится. Я пишу на расте для себя, для личного проекта. В продакшен я бы его брать не стал. Если ты его для работы хочешь юзать, а не для себя или ради энтузиазма, то годика через 2 приходи, имхо.
Аноним 02/09/20 Срд 08:11:38 179523516
А где вообще используют этот ваш раст?
Аноним 02/09/20 Срд 08:37:29 179524117
Аноним 03/09/20 Чтв 01:25:56 179584418
Аноним 03/09/20 Чтв 01:38:41 179584619
>>1795844
Лол, ржавчина поедает гугл изнутри.

> For now, Chrome investment in Rust will remain a background investigation (mostly directed towards prototyping these tools and techniques). If we become convinced this sort of interoperability is possible, we’ll revisit widespread use of Rust in Chrome, and at that point we plan to work hard to achieve this with robust production-quality solutions.

Но пока что вяло, сначала докожи. Не удивлюсь если этим занимаются уволенные из мозиллы.
Аноним 03/09/20 Чтв 10:02:55 179597720
Аноним 04/09/20 Птн 09:16:16 179698621
>>1794774
Ну хуй знает, в телеграме чат вполне живой.
Аноним 04/09/20 Птн 09:51:49 179700522
Аноним 05/09/20 Суб 20:48:11 179823023
>>1790450

Эти чуть пояснили чутка про техническую часть
>>1794774
>>1790486

А вот тебе ещё сверху чуть более философских субъективных мыслей, может, что-то покажется интересным.

— Небольшое число вакансий

Любой условный мейнстримовый JS требует гораздо меньше усилий для вката или переката на более интересное место.
Вакансий везде до хуя, есть устоявшиеся подходы к разработке и модные фреймворки: сиди дрочи пет проекты и ходи брутфорси вакансии. (другой вопрос, что тебя ждёт в конце такого пути, но это уже отдельная тема)

На Rust вакансии приходится искать, почти все они в Америке и Европе (и то там сильно меньше по сравнению с Америкой), в остальных странах суммарно и полсотни не набиралось тогда, когда я занимался поисками.
И искать приходится не только на linkedin/hh, а в Twitter, /r/rust и через сарафанное радио.
Зачастую ещё и оказывается, что Rust там всего лишь часть системы, довольно обособленная, и в твои обязанности будет входить что-то ещё.

В России сейчас, наверное, и 15 компаний с чистой разработкой на Rust не наберётся включая все блокчейны.
То есть, если хочется увеличить шансы найти работу, в дополнение к Расту сразу нужен хороший иностранный язык.

И на любую зарубежную вакансию очередь из долбоёбов-вкатывальщиков со всего света, готовых работать за еду, лишь бы на Rust, рассылающих резюме во всё подряд, что найдут.

А если учитывать, что наличие проектов на Rust не делает компании и работу автоматом хорошей и интересной (особенно в далёкой перспективе), то выбор сужается ещё больше.

- Серьёзные требования к соискателям

К счастью, не всем таким долбоёбам что-то светит; к несчастью, потому, что нужны специфические знания.

Вся экосистема Раста ещё не вылезла из пизды альфы, выделиться глубоким знанием чего-то именно в Rust сложно: обычно нужно знать хорошо сам язык (вернее, то подмножество, что используют в этой компании) и очень хорошо предметную область, а это уже обычно специализация, которую нужно получать годами работы и от которой очень сложно потом уйти без падения зарплаты.

Обиднее ещё то, что эти знания плохо переносятся между областями: веб-макака на Rust с прекрасным знанием редисов, кафок и прочих кубернетесов почти бесполезна в каком-нибудь embedded на Rust, там совершенно другие задачи.
Так что количество доступных вакансий на Rust на самом деле ещё меньше: долбоёбов брать человека просто за знания языка и библиотек (которых всё равно особо нет) не так много. Тех, кто при этом будет платить нормально, ещё меньше.

- Много не-Rust "legacy"

Если выкинуть блокчейн, то большинство проектов на Rust не появляются в вакууме: обычно несколько фанатиков проталкивают идею о светлом ржавом будущем, получают под это бюджет и начинают что-то ваять и интегрировать с текущей системой.

Очень частый сценарий в вебе: копролит на php/python/java/younameit распиливают на микросервисы на Rust, чтобы вот в этот-то раз всё стало заебись.
Мало того, что тебе в этом цирке придётся учавствовать, да ещё и на Rust писать будешь половину времени, остальное время дебажа старый продукт в тщётных попытках понять, что этот индусокод делает, и что за хитровыебаную бизнес-логику от тебя хотят.


- Rust может быть очень разный

В том же вебе ты будешь шлёпать типичный крудоговногод уровня `if err != nil`, только на Rust, склеивая клеем логику и либы с crates.io
Про unsafe будешь в страшных сказках слушать и вряд ли сам будешь трогать (если не поехавший экспериментатор).

В wasm проектах тебе с порога в зубы прилетает `#![no_std]`, с которым не работает 95% всех крейтов, зато добавляется горсть новых типа web-sys со своей особой пизданутостью.
В embedded к этому бонусом будут ffi биндинги ко всяким либам на C и, если не повезёт, ещё и макросы с asm и, конечно же, unsafe через unsafe.

Конечно, часть опыта переносится, но далеко не всё, особенно если в проекте найдутся ебанутые любители использовать много nightly фич, которые могут и меняться со временем.


- Мало знаний о том, как правильно писать на Rust

Кроме того, что использование фич языка может сильно отличаться от проекта к проекту, так ещё и знаний о том, как писать нужно и как не нужно почти нет: каждый дрочит как хочет и охуевать от проекта к проекту иногда приходится знатно с каких-нибудь пизданутых самописных процедурных макросов, любовно размазанных толстым слоем по проекту и прочих граблей.

Обычное большинство твоих коллег (как и ты) будет среднехуёво знать сам язык и кодить в меру своего разумения так, как им видится.
Если повезёт, дело ограничится какими-нибудь тихими особенностями (а не полным пиздецом) в уголках их проектов из-за того, что они не смогли (не подумали) договориться о том, как код писать.

В любом случае, учиться тонкостям тебе придётся, скорее всего, самому, потому что те пара человек, которые хоть что-то шарят, заняты так, что им совсем не до тебя: компанию, в которой целый штат умных Rust разрабов пилят что-то и делают ревью кода друг друга, ещё поискать нужно.


- Плохой тулинг и сложности с поиском серьёзных ошибок

Несколько дней подряд дебажить принтами огромный проект с кучей модулей, собирающийся с нуля минут 40, только чтобы обнаружить, что в одной из самописных сишных либ кто-то что-то криво сделал — незабываемое удовольствие.
К счастью, это крайне редкое событие, обычно всё валится с паникой или сегфолтами (что тоже иногда бывает непросто дебажить), но если уж какая необычная хуйня случается, то хоть вешайся.

Дебаггеры как бы есть (как и полторы ide), но до уровня дебаггеров JS или Java ему как до луны: обычные структуры из stdlib типа `OsStr` сейчас отображаются как набор байт, а не строки, лол.
Максимум, что ты с ними сможешь сделать (и то не всегда): запустить локально приложение и походить в нём по брейкпоинтам, проваливаясь в декомпилированный asm.
Возможно, ты даже сможешь понять, что записано почти во всех переменных на стеке (ну или будешь писать и учиться грузить pretty printer'ы на Python для дебаггера, если совсем заебёт).


- Нужно следить за всем, что происходит вокруг Раста и что-то изучать по мере сил

Тут примерно как в JS, доки по языку и либам очень редко бывают актуальными (если вообще есть, лол), всё бурлит, меняется и куда-то несётся, друг от друга зависит и тянет всякие аналоги leftpad.
Чтобы понять, как пользоваться нужными библиотеками, придётся зачастую читать их код (и хорошо если тесты или examples будут).
Поскольку большинство крейтов имеют версию `0.*`, компиляция может сломаться из-за простого апдейта какого-нибудь крейта (к счастью, не очень часто с таким сталкивался), за всем этим говном нужно следить и обновлять, чтобы не оказаться в дремучей жопе спустя пару лет, что тоже добавляет головняка.
Иногда проекты забрасываются, искать альтернативы и всё опять переписывать тоже удовольствие ниже среднего.

Будешь что-то гуглить нестандартное в узкой предметной области — рискуешь нарваться на пару полумёртвых крейтов и всё.
Если ты до сих пор впадаешь в ступор от ошибок компиляции, то тебе пизда, загуглить точный набор твоих закорючек зачастую невозможно а то, что гуглится, может и не подойти, потому что даже мелкое отличие может влёгкую агрить borrow checker.

Если полезешь в async, ещё и отличный от tokio, то придётся держать в голове зависимость крейтов от рантайма, что к чему подходит и как это заводить вместе, если не подойдёт (опять читать код, да).
Бонусом идёт повышенное веселье с компилятором и всякими `Pin`, хотя раньше, до async/await, когда были комбинаторы было ещё хуже, сейчас норм, можно наколбасить много кода до того, как нарвёшься на проблемы.

Описание новинок в самом языке появляется только в release notes, в Rust Book это оседает непонятно когда, обычно силами энтузиастов, почти всю команду документаторов Mozilla прибила своими увольнениями.
Если совсем на это положить хуй, спустя пару лет можно обнаружить себя довольно в стороне от современных фич языка.
Аноним 05/09/20 Суб 20:48:51 179823224
>>1798230

И ещё немного совсем субъективного:

- Местами странное развитие языка

Развитие самого языка иногда тоже вызывает вопросы: ключевые люди, сидящие на зарплате у Mozilla, уходят в другие компании со временем, совсем недавно ещё один ушёл.
Как ни удивительно, некоторые из них продолжают помогать с развитием языка и в других компаниях, но это не то, чтобы очень надёжная стратегия, как по мне: компилятор это не хуй собачий, даже люди на зарплатах пилят фичи долго и сложно.
Mozilla тоже не даёт скучать, в недавних увольнениях выпизднули много важных разрабов из wasmtime, servo.
Сам язык сидит частично на донатах: Microsoft дал им железо для сборки и прогона CI, что-то пилят в языке на голом энтузиазме мимокрокодилы.
Учитывая, что с баблом у Mozilla туго, быстрого развития языка можно не ждать, да и будущее тоже немного туманно: уже пошли разговоры о полном выделении Rust в отдельную организацию (сейчас как минимум бабло идёт через Mozilla).

Остатки кор тимы тоже не выглядят до хуя уверенными в своих действиях, вспомнить хотя бы выстраданный async/await с его костылями (`Pin` & `Unpin` с его unsoundness), который так и не доделали (async traits), хотя мудохались несколько лет.
Те же функциональщики смотрят на все эти заморочки с async блоками и иногда обсуждаемыми try блоками с удивлением, есть вполне себе рабочие подходы к дизайну языка, которые позволяют этого всего зоопарка избежать, унифицировав.

Понятно, что это сложно и требует хороших изменений в кодовой базе, но странно видеть погоню за фичами, которые на них могли бы быть основаны без хоть какой-то подготовки к этим фичам.
Видимо, в самом коде всё тоже не так гладко, раз никаких подвижек в этой области пока нет и мы, наоборот, наблюдаем кучу всяких регрессий в последних релизах: как всякие unsound баги, так и всякие адовые замедления компиляции по разным причинам.


— Много бестолкового хайпа вокруг

Грустно наблюдать все эти ебанутые разборки фанатов async-std и tokio, шумиху вокруг unsafe в actix-web и прочую странную активность: вместо того, чтобы помогать пилить крейты, ебучие белки-истерички разводят шум и драму из года в год.

Доходит до странностей: сейчас на crates.io есть всего один НЕ асинхронный production-ready веб фреймворк, и тот в следующей версии тоже станет асинхронным.
Получается, просто потому, что это стильно и модно, любой веб-сервер на Rust вынужден тащить один из рантаймов с десятками лишних зависимостей, ебаться с async/await и ограничивать себя в выборе крейтов, либо сидеть на древних, не обновляемых библиотеках.
(не говоря уже о том, что есть вполне себе реальные real-time приложения с жёсткими требованиями к latency, которые асинхронные рантаймы в принципе не способны гарантировать)


- Сложно уходить обратно на другие языки

После того, как привыкаешь к Расту, пилишь на нём несколько лет и потом берёшь типичный ебаный проект на каком-нибудь Python/JS, то поначалу просто оторопь берёт, чувствуешь себя как без рук: как можно писать без нормальных типов, без cargo check, с пониманием, что любая строчка может бросить exception и это считается нормальным?
В паре проектов без тестов я просто не мог ни строчки написать несколько дней, пока привыкал.
Аноним 07/09/20 Пнд 17:53:21 179969925
image.png 78Кб, 233x216
233x216
>>1798230
>>1798232
Ну а какие альтернативы?
Писать вот так:
for (list<ArdourCanvas::Rectangle*>::iterator i = _coverage_frame.begin(); i != _coverage_frame.end(); ++i) {
и не надо мне про auto рассказывать
Аноним 08/09/20 Втр 00:28:07 180009426
image.png 824Кб, 1280x720
1280x720
>>1799699

Смотря где и для чего использовать, альтернатив много.

Для развития, можно Haskell навернуть, чтобы по-другому немного на тот же Rust взглянуть.

Можно не ебать себе мозг сомнениями и делать вещи на Rust, язык-то и правда приятный, даже если вокруг плюсовым кодом всё обмазано.
Аноним 08/09/20 Втр 19:29:52 180101727
1572641033659.png 687Кб, 1196x1339
1196x1339
Аноним 08/09/20 Втр 19:30:51 180101828
Аноним 08/09/20 Втр 19:36:50 180102529
Аноним 08/09/20 Втр 19:40:37 180102730
Аноним 08/09/20 Втр 20:03:24 180104931
Там ещё один топовый разраб покидает раст: https://blog.mozilla.org/nnethercote/2020/09/08/how-to-speed-up-the-rust-compiler-one-last-time/

Если кто не знает, он разраб valgrind'а и один из немногих (в раст кор тиме наверное единственный, лол) кто умеет круто работать с профайлерами (которые он сам и создал) и оптимизировать потребление памяти.
08/09/20 Втр 20:38:27 180107732
Аноним 08/09/20 Втр 20:42:23 180107933
D-qdikd-6XE.jpg 12Кб, 376x444
376x444
Аноним 10/09/20 Чтв 09:21:00 180241134
>>1801077
auto иногда выдаёт охуенные типы, которые вообще не ожидаешь тут увидеть. Дебажить неправильный auto — это почти как дебажить UB.
Аноним 10/09/20 Чтв 10:28:20 180244035
photo2020-09-09[...].jpg 44Кб, 585x463
585x463
Бампану ITT тред картинкой
Аноним 10/09/20 Чтв 10:41:08 180245036
Аноним 10/09/20 Чтв 13:53:32 180256537
>>1802440
какой мужчина.. пидарасты правда так выглядят?
Аноним 10/09/20 Чтв 16:37:54 180273638
15332998256760.jpg 25Кб, 567x420
567x420
Искал недавно работу после двух лет опыта плюсов, и довольно часто тимлиды на техническом интервью упоминали, что у них в команде появляются небольшие группы любителей раста. И коллега с нынешнего места активно агитировал учить ржавчину, считая что за ним будущее. Для меня пока это выглядит как секта, которая активно ведет пропаганду и постепенно расползается в головах разрабов, обещая приход Мессии и избавление ото всех проблем с безопасностью и UB. Рано или поздно мы точно увидим, как ее последователи выйдут на свет и заявят о себе.
Покайтесь, ибо грядет!
Аноним 10/09/20 Чтв 18:41:23 180284639
>>1802736
Скопипастил уже сигнатуру в .h?
Аноним 10/09/20 Чтв 18:48:01 180285440
>>1802846
Я перекатился на гошку, так что можешь троллить меня дженериками и исключениями.
Осталось недолго, в Go 2.0 Роб обещал завезти полный фарш и заодно переписать компилятор. И кто будет смеяться последним, а?
Аноним 10/09/20 Чтв 18:49:31 180285941
>>1802846
Вам ещё статический анализ кода не подвезли?
Аноним 10/09/20 Чтв 18:58:30 180287242
Аноним 10/09/20 Чтв 19:12:23 180289143
>>1802872
Видимо, людям не привыкшим, что весь бойлерплейт за них делает иде.
Аноним 10/09/20 Чтв 19:13:19 180289344
>>1802891
Эта та которая тормозит при вводе каждой буквы?
Аноним 10/09/20 Чтв 20:05:49 180294045
>>1802893
Вот кстати нет. Бесит нотепад++ на минутном торможении на открытии всего лишь мегабайтных xml файлов с каким нибудь протоколом, а иде шустрые ваще.
Аноним 10/09/20 Чтв 22:09:31 180307946
>>1789061 (OP)
Мозилка выкинула раст к хуям, у меня лишь один вообще вопрос, что стало с подвижками wgpu, их там тоже к хуям разогнали?
Аноним 10/09/20 Чтв 22:32:03 180308947
>>1803079
Не проще самому проверить?
Аноним 11/09/20 Птн 07:06:22 180333448
Почему такой говорливый в твиторе Армин Ронахер ещё никак не прокомментировал уничтожение раста мозиллой? Пару раз присмотрелся к C++20 только. Это намёк на перекот?
Аноним 11/09/20 Птн 12:58:19 180352449
Аноним 12/09/20 Суб 12:31:54 180430050
Хочу в своём проекте вместо Haskell попробовать Rust. Привлекает работа с памятью без мусоросборника и нормальная поддержка SIMD-инструкций. Какие подводные? Из треда понял, что это личный язык Mozilla и они его чуть ли не приктыть хотят? Это правда, если да, то на чём тогда писать-то? Вроде других нормальных язков для программирования без мусоросборника нет.
Аноним 12/09/20 Суб 12:32:48 180430151
>>1804300
>>1803524
С такими когнитивными способностями, могу предложить тебе попробовать PHP.
Аноним 12/09/20 Суб 13:16:35 180433452
>>1804301
В Apple писали на лучшем в мире Objective-C и где он теперь?
Аноним 12/09/20 Суб 13:53:25 180436153
>>1804334
Это же апол. Дропают легаси и глазом не моргнув.
Аноним 12/09/20 Суб 15:25:53 180440854
>>1804361
Ну и Rust могут так же дропнуть. Тут >>1804301 просто товарищ писал, что одна вакансия в апол - это дохуя победа. Кстати, по вакансии видно, что зрелость технологии прямо скажем низковата.
Аноним 12/09/20 Суб 15:34:37 180441255
>>1804408
Ну так ты поищи на хачкеле вакансии тогда.
Аноним 12/09/20 Суб 15:47:07 180442756
>>1804412
Я хотел это сравнить с вакансиями на Хаскеле, но на удивление в вакансиях на Хаскеле есть требования к знанию Хаскеля. Тут же small, highly skilled team видимо совсем отчаялась найти себе программиста знакомого с языком, и ищут хоть кого-то, а языку его уже по ходу дела обучат.

Алсо, ткнул наугад в Issues https://github.com/rust-lang/rust/issues/76627 - эээ, борроу-чекер не работает? ват?
Аноним 12/09/20 Суб 17:35:44 180450057
Как Rust себя поведёт, если я захочу создать 11 миллиардов небольших объектов в куче?

Так-то 11 миллиардов вызовов malloc в лоб - это хуёвая идея в любом языке, но, допустим, мне кое-что известно о этих объектах и паттернах доступа, что позволяет написать для них эффективный кастомный аллокатор. Но он не будет аллокатором общего назначения, он сможет работать только с объектами определенного типа и создавать/удалять их только в определенном порядке.

Получится ли его интегрировать в Rust, как это будет соотносится с уже реализованной в нём системой владения?
Аноним 12/09/20 Суб 17:49:38 180450958
>>1804427
Так хаскель старше лет на 20 если не больше.
Аноним 12/09/20 Суб 17:49:43 180451059
>>1804500
Система владения там относится только к ссылкам и по большей части с ней нужно ебаться, чтобы наоборот избежать работы с кучей и безопасно работать с переменными на стеке. Но есть одно большое но.

Аллокаторы в расте не стабилизированы (кроме случае если у тебя один глобальный аллокатор на всё приложение). Так что придётся вместо стандартных умных указателей и коллекций использовать самописные костыли.
Аноним 12/09/20 Суб 17:55:25 180451860
>>1804427
> борроу-чекер не работает? ват?
Он работает. Просто в данном примере он более строг чем нужно из-за проблем с выводом типа в замыкании.
Аноним 12/09/20 Суб 18:01:30 180452561
>>1804500
>Так-то 11 миллиардов вызовов malloc в лоб - это хуёвая идея в любом языке, но, допустим, мне кое-что известно о этих объектах и паттернах доступа, что позволяет написать для них эффективный кастомный аллокатор

Vec::with_capacity и не выёбывайся.

Если очень надо, то делаешь большой alloc() и субаллоцируешь как хочешь.

>Получится ли его интегрировать в Rust, как это будет соотносится с уже реализованной в нём системой владения?

Твой аллокатор вернет какой-то хендл, который будет единственным владельцем объекта наподобие Box. Детали зависят от того, что тебе реально нужно. Один из вариантов: https://ferrous-systems.com/blog/zero-sized-references/
Аноним 12/09/20 Суб 18:26:54 180454962
image.png 534Кб, 640x750
640x750
Аноним 12/09/20 Суб 18:30:48 180455363
>>1804518
А можешь объяснить что конкретно там произошло? Почему ошибка борроу-чекера а не тайпчекера? И в чем там проблема с выводом? У f1(v: &str) указан тип аргумента, какой там может быть другой тип в замыкании и как это может повлиять на борроу-чекер?
Аноним 12/09/20 Суб 18:44:11 180456164
>>1804525
>Vec
Сколько в него лезет, если речь идёт об объектах переменных размеров, лежащих в куче?
>Твой аллокатор вернет какой-то хендл, который будет единственным владельцем объекта наподобие Box.
Да, как-то так себе и представлял.
Аноним 12/09/20 Суб 19:07:15 180457665
>>1804549
Ого, это ты так в виде P-схемы решил код с камментами заебашить? Выглядит круто...
Аноним 12/09/20 Суб 20:10:17 180464066
>>1804553
Там скорее всего очередное проявление хронической болезни раста - борроу чекер иногда (в основном если там несколько времён жизни и они как-то взаимосвязаны, т.е. одно зависит от другого и т.п.) выводит слишком большое время жизни у ссылок в аргументах функций. Чтобы сделать борроу чекер безопасней у него есть правило - если точный лайфтайм вывести невозможно, бери самый большой. Тут судя по всему он выводит лайфтайм у аргумента равный замыканию (несмотря на то, что внутри замыкания аргумент никак не сохраняется) и потому получается ошибка.
Аноним 12/09/20 Суб 21:56:56 180474967
>>1804640
Я правильно понял, что rule of thumb - указывай типы переменных в замыканиях и будет счастье?

Алсо еще вопрос. Как в Rust с асинхронностью? В Хачкеле асинхронность типа совсем прозрачная, т.к. всё ранится в IO и отдельная async-монадка не нужна, в Шарпе есть встроенная async-монадка через async/await, в Скалке/F# через for comprehension/computation expressions, как там в Расте?

Как я понял из гугления, нормальный функтор в Расте написать низя: https://github.com/rust-lang/rfcs/issues/324 (или уже можно: https://docs.rs/functional/0.0.5/functional/trait.Functor.html), т.к. нет абстракции по типам высших порядков. Значит должна быть какая-нибудь встроенная хуйня, и она, похоже, есть https://rust-lang.github.io/async-book/01_getting_started/04_async_await_primer.html

Насколько это монадка и насколько хорошо она играет с растовскими правилами владения? Ведь асинхронная монадка - это по идее пиздец, состоящий чуть менее, чем полностью из замыканий. Насколько этим удобно пользоваться в Расте по сравнению с другими языками?
Аноним 13/09/20 Вск 03:03:20 180489568
>>1804749
> указывай типы переменных в замыканиях и будет счастье?
Нет. Эта ошибка немного другого толка, и скорее всего её быстро исправят.
> Как в Rust с асинхронностью?
Средне. Асинхронные функции возвращают уникальный объект, который имплементирует специальный трейт future. Внутри асинхронной функции с этим трейтом можно использовать оператор await (т.е. с точки зрения await нет разницы является ли функция асинхронной или синхронной, но возвращающей Future-подобный объект).

В итоге самая первая асинхронная функция возвращает future-подобный объект, который ты передаёшь рантайму (а встроенного рантайма в стандартной библиотеке нет) и он запускает весь этот набор функций.

В расте у асинхронных функций есть огромный плюс - по умолчанию они возвращают impl Future<Output = ?>, а значит для использования асинхронщиный не нужно выделение памяти, как-как всё будет умещаться на стеке (что впрочем не мешает тебе вызов асинхронной функции отправить в кучу, чтобы например уменьшить размер future-объекта твоей функции, так-как иначе он будет разрастаться, что иногда нежелательно [1]).

Самый большой недостаток вытекает из этого самого преимущества - асинхронные функции нельзя определять в трейтах. Тут [2] написано об этом очень подробно. Там как раз и требуются аналоги "типов высших порядков" именуемые GAT. Недостаток можно обойти ценой аллокации при каждом вызове функции (т.е. будет возвращаться Pin<Box<dyn Future<Output = ?>>>), что и делают макросы async_trait (как я сказал выше разницы нет между асинхронной функцией и синхронной с future-подобным объектом, что эти макросы и используют).

Второй по величине недостаток (хотя с точки зрения юзабилити скорее первый) - это то, что стандартизирован только сам трейт Future, и помощники по работе с ним для создания рантайма. И больше ничего. То есть даже чтобы в асинхронной функции сделать таймер, нужно будет использовать специальную функцию рантайма, которая у каждого рантайма будет разной. В итоге на расте есть куча библиотек, который работают только на одном рантайме, а на любом другом не запустятся. А написать универсальную для любого рантайма библиотеку зачастую попросту невозможно и максимум что делают поддерживают два самых популярных рантайма (async-std и tokio),а всё остальное идёт лесом.

[1]: https://without.boats/blog/futures-and-segmented-stacks/
[2]: https://smallcultfollowing.com/babysteps/blog/2019/10/26/async-fn-in-traits-are-hard/
Аноним 13/09/20 Вск 03:09:35 180489869
>>1804895
> который работают только на одном рантайме, а на любом другом не запустятся
> два самых популярных рантайма (async-std и tokio),а всё остальное идёт лесом.
Ах да, чуть не забыл. Даже если две библиотеки используют один и тот же рантайм, но несовместимой (с точки зрения semver-семантики) версии, то это считается как два разный рантайма и программа работать не будет, лол.
Аноним 13/09/20 Вск 10:39:37 180503670
Аноны, обращаю ваше внимание, что уже есть либа для simd, работающая со стабильной веткой раста. https://github.com/jackmott/simdeez
Можно даже писать без привязки к конкретной реализации, задавая нужную через cfg или выбирая прямо в рантайме.
Я уже отъюзал, правда пока только для sse
Аноним 13/09/20 Вск 15:59:19 180527071
>>1795235
На нем частично Firefox написан. Facebook свой пакетный менеджер на нем пишет. Ну, всякие npm и Dropbox его тоже используют.
Аноним 14/09/20 Пнд 00:10:43 180573972
Аноним 14/09/20 Пнд 09:07:31 180585173
Аноним 14/09/20 Пнд 17:24:36 180635474
Какие компоненты (или какой процент) фурифокса написан на расте? Как это повлияло на расход памяти и скорость?
Аноним 14/09/20 Пнд 17:27:11 180635875
Аноним 15/09/20 Втр 10:34:52 180705376
Аноним 15/09/20 Втр 23:39:02 180771677
>>1805739
Спасибо. Но я склоняюсь к тому, что на любом языке надо писать в
идиоматичном для него стиле. Я на Rust стал смотреть именно потому, что у меня возникло подозрение, что он из коробки может лучше подходить для моих задач.

Кстати, тут писали, что Rust очень мендленно конпелирует. Насколько актуальная эта проблема? Хаскель тоже медленно конпелирует, но там никто не пересобирает проекты по миллиону строк, проект разбивается на пакеты и модули, в процессе разработки перекомпилируют только модули, над которыми в данный момент ведётся работа.

Т.е. скорость работы конпелятора Rust - это реальная проблемма, или это просто следствие неправильного подхода к разработке некоторых разработчиков?
Аноним 15/09/20 Втр 23:44:08 180771878
И еще вопрос: как в Rust обстоят дела с профилированием программ? В Хаскеле профилирования де-факто нет. Т.е. формально оно там как-бы есть, но для профилирования программа конпелируется в специальном режиме, который херит большинство оптимизаций. Т.е. профилируешь ты там вовсе не то, что будет реально работать в продакшене, а какую-то совершенно другую программу, которая по определению раз в 10 медленнее и никогда не будет использоваться. Как с этим в Rust?
Аноним 15/09/20 Втр 23:47:56 180772079
>>1807718
> Как с этим в Rust?
Подойдёт любой профайлер для С/С++ кода. Раст умеет создавать дебаг-информацию для релизного кода (но по умолчанию вроде не создаёт, нужно включить в cargo.toml) и из неё профайлер и возьмёт имена функций.
Аноним 16/09/20 Срд 00:10:15 180773180
>>1807718
> И еще вопрос: как в Rust обстоят дела с профилированием программ? В Хаскеле профилирования де-факто нет. Т.е. формально оно там как-бы есть, но для профилирования программа конпелируется в специальном режиме, который херит большинство оптимизаций. Т.е. профилируешь ты там вовсе не то, что будет реально работать в продакшене, а какую-то совершенно другую программу, которая по определению раз в 10 медленнее и никогда не будет использоваться.
Как бы так всегда. В vs даже два разных режима компиляции: debug и realese.
Аноним 16/09/20 Срд 01:21:28 180778881
>>1807731
Ну не скажи. В Java есть stack profiler, который вполне адекватен, не раз им пользовался. Он реально показывает чем занимается программа. В C# вроде тоже адекватный профайлер хотя не писал на нём уже лет 10, забыл всё, но вроде помню, что мне удавалось с помощью него находить узкие места и оптимизировать.

В Хаскелле единственный адекватный профайлер - это запуск с +RTS -T -s. Да, он покажет статистику по мусоросборнику, количество аллокаций, время мутатора и время коллектора. Но он не показывает, что именно аллоцируется. Чисто инфа, что твоя программа аллоцировала столько-то гигабайт, столько-то было скопировано в следующее поколение, заняло столько-то времени, общая статистика без конкретики.

А если хочешь узнать, какие именно объекты были аллоцированы, нужно перекомпилировать программу в другом режиме. И он, сука, вообще не имеет никакого отношения к продуктовой конпеляции, даже близко не похож. Он генерирует совершенно другой код, который может быть на порядки медленнее, чем продуктовый. Пытаться оптимизировать этот код вообще бессмысленно, ты просто две совершенно разные программы оптимизируешь, скомпилированные по совершенно разным правилам.

Да, может быть в Джаве есть какие-то тонкие моменты профилирования, которые ломают некоторые оптимизации если ты хочешь собрать слишком много информации, но в целом выхлоп примитивных профайлеров вполне адекватен. В Хаскеле любая попытка получить больше информации, чем просто статистика мусоросборника, ведет к генерации абсолютно неадекватного кода.
Аноним 16/09/20 Срд 14:47:26 180810682
>>1807716
>Т.е. скорость работы конпелятора Rust - это реальная проблемма, или это просто следствие неправильного подхода к разработке некоторых разработчиков?

Он выплевывает тонну почти неоптимизированного IR, с которым тяжело работать. Но инкрементальная сборка тоже есть.
Аноним 16/09/20 Срд 16:27:17 180820983
изображение.png 105Кб, 300x168
300x168
Аноним 16/09/20 Срд 16:30:48 180821384
Давайте запили движок и редактор уровня юнити, и раст захватит мир.
Аноним 16/09/20 Срд 16:41:35 180822685
Аноним 16/09/20 Срд 20:01:28 180845586
>>1808209
> mrDimas
Прорекламитья решил, димасик?
какой то крутой чел, в ларианах работает надеюсь бг3 нормальными инструментами делают
Аноним 18/09/20 Птн 11:20:51 180983087
работяги, есть продакшен опыт js/ts, насколько хорошо можно в rust вкатиться веб-макаке?
Аноним 18/09/20 Птн 11:44:20 180984388
>>1809830
Я совсем начинающий растаман, но возможно тебе стоит вкатиться в вебприложения на wasm.
Аноним 18/09/20 Птн 13:24:17 180990689
15491373104290.jpg 34Кб, 489x604
489x604
dead per dead 18/09/20 Птн 16:12:44 180999990
Ваш Пруст работает на каком-нибудь 8-битнике? А почему?
Аноним 18/09/20 Птн 20:18:31 181022291
Идущий к расту.mp4 15184Кб, 1920x1080, 00:01:05
1920x1080
Аноним 19/09/20 Суб 00:18:51 181037492
Ребята, шарю в ангуляре и typescript/rxjs/Observable. Решил попробовать сервак попдиски-перенаправления сообщений с веб-сокетов в кафку на Rust написать для кровавого ентепрайза на каком-нибудь tokio, я нормальный?
Аноним 19/09/20 Суб 00:27:20 181037993
>>1810374
Абсолютли. Сам так же сделал, перекатившись на yew. Не взлетело.
Аноним 19/09/20 Суб 00:43:28 181039494
>>1810379
надеюсь один сетевой американ провайдер решит раст применить вместо ноды старой и противного golang'а))0
Аноним 19/09/20 Суб 09:46:55 181061095
После того как заблочили мышку блади, вообще перестал раст уважать.
Аноним 19/09/20 Суб 12:18:48 181066696
>>1810379
Перекатывайся на seed.
Аноним 19/09/20 Суб 15:12:22 181082797
мм
Аноним 19/09/20 Суб 15:38:26 181084098
>>1809999
Работает (с недавних пор даже оффициально [1]) на АВР. А какие ещё 8-битники популярные есть? Мне на ум только стм8 приходит, но он анально отгорожен и для него нет бэкенда для ллвм.

[1]: https://github.com/rust-lang/rust/pull/69478
Аноним 20/09/20 Вск 10:15:38 181136999
>>1807716
>Т.е. скорость работы конпелятора Rust - это реальная проблемма, или это просто следствие неправильного подхода к разработке некоторых разработчиков?

Инкрементальная сборка есть, но если ты меняешь что-то в ядре (либа, от которой зависит ещё куча либ), то оно всё будет перекомпилироваться. Ну либо юзай sccache, чтобы не перекомпилировалось постоянно.

Есть ещё проблема в том, что каждый раз когда обновляешь компилятор, тоже надо будет всё перекомпилировать. Это не так больно на stable, а вот если ты на nightly и постоянно его обновляешь, тогда неприятно.
Аноним 20/09/20 Вск 15:03:32 1811512100
окей, я вроде со знанием delphi/c#/typescript понимаю что происходит в расте, но есть ли какие-либо книги по архитектуре приложений/системному программированию для deep погружения?
Аноним 20/09/20 Вск 17:55:27 1811693101
Что там получилось то? Горелая лиса выкинула раст? Создали ли там мощный фонд?
Аноним 20/09/20 Вск 18:33:14 1811727102
Аноним 21/09/20 Пнд 07:54:46 1812194103
Аноним 22/09/20 Втр 18:14:33 1813444104
rust.png 27Кб, 898x786
898x786
А Rust-то летит вверх. Если в начале года его не было видно и слышно, то к середине он уже был на 20 месте. А сегодня на 18. Такими темпами к концу года-началу следующего он может и в 15 войти, а то и в 10.

https://www.tiobe.com/tiobe-index/
Аноним 23/09/20 Срд 02:46:15 1813764105
>>1813444
Ещё 10 лет и догонит гошку
Аноним 23/09/20 Срд 02:50:40 1813765106
rust1.png 23Кб, 939x491
939x491
rust2.png 24Кб, 938x483
938x483
>>1813764
Гошники все не дружат с матешей?
Пусть он хоть сам себя догонит по темпам роста
Аноним 23/09/20 Срд 03:48:40 1813777107
>>1813444
К 2050му глядишь и вижуал бейсик догонит
Аноним 23/09/20 Срд 23:43:13 1814639108
>>1813764
А С/С++ когда догонит?
Аноним 24/09/20 Чтв 19:37:52 1815348109
Аноним 24/09/20 Чтв 21:07:49 1815474110
У меня завтра собес по расту, что бы позадротить, что бы его пройти?
Аноним 24/09/20 Чтв 21:11:05 1815481111
Аноним 25/09/20 Птн 13:25:18 1815816112
Аноним 25/09/20 Птн 16:26:15 1815954113
Аноним 26/09/20 Суб 09:42:30 1816497114
tenor.gif 27Кб, 220x158
220x158
Аноним 26/09/20 Суб 17:30:08 1816887115
1305.BigImg.jpg 338Кб, 533x800
533x800
>>1807788
> Пытаться оптимизировать этот код вообще бессмысленно, ты просто две совершенно разные программы оптимизируешь
Добро пожаловать в native и runtimeless. Это же не байткод гонять.
Аноним 27/09/20 Вск 00:22:24 1817088116
Почему у раста такой всратый синтаксис, посоны? Вроде хочу изучить, но напрочь отворачивает.
Аноним 27/09/20 Вск 00:45:28 1817093117
>>1817088

Обычный с-подобный синтаксис. Что не так-то?
Аноним 27/09/20 Вск 02:17:44 1817118118
>>1817088
Норм синтаксис. У крестов всратее.
Аноним 27/09/20 Вск 07:51:54 1817165119
rust1.jpg 227Кб, 1604x1066
1604x1066
rust2.png 168Кб, 1364x956
1364x956
>>1817088
>Почему у раста такой всратый синтаксис, посоны?
Два пикрандома из гугла. Что тут всратого? Что из того что ты тут видишь "всратого", нет в тех же плюсах, жаве или шарпе?

У растеров есть привычка вызывать несколько функций на одной строке, например. Но это нормальная практика и для жсеров и для хаскелистов и для других функциональщиков. И это, кстати, тоже может быть решено правильной структурой программы.

Так же есть некоторые фичи раста, которые позволяет наоборот количество кода сократить. Разница между инструкцией и значением например, хорошая фича, позволяет некоторые решения сделать очень элегантными. Или что каждая конструкция языка может возвращать значение, тоже приятная фича, которую хочется в других языках.
Аноним 27/09/20 Вск 10:23:35 1817192120
>>1817165
>У растеров есть привычка вызывать несколько функций на одной строке, например.
>Но это нормальная практика и для жсеров и для хаскелистов и для других функциональщиков.
Ну вот, говнарь сам честно признался. "Нормальный" синтаксис... для жээсеров (лол) и прочей говношвали мразотной. Именно это и всрато, дерьмо, как и ты, и все растеры, одна и та же грязь.
Аноним 27/09/20 Вск 10:29:16 1817194121
>>1817088
Да вроде всё в порядке, современный синтаксис, сейчас везде так

я только могу вспомнить из плохого это такое: функц::<тип>() вместо просто функц<тип>()

>>1817093
>с-подобный синтаксис
Нет же
Аноним 27/09/20 Вск 10:37:16 1817197122
Аноним 27/09/20 Вск 10:45:30 1817201123
unnamed.jpg 22Кб, 512x179
512x179
>>1817192
>У растеров есть привычка вызывать несколько функций на одной строке, например.
>Именно это и всрато
Ну так не пиши так, в чем проблема?

>для жээсеров (лол)
Ещё один окатыш с бинарным мышлением. По ключевым словам тригеришься, долбоёб?

>и прочей говношвали мразотной
>дерьмо, как и ты, и все растеры, одна и та же грязь.
Да у тебя пердак рвёт не на шутку. Rust твою мамку трахнул генгбенгом? Или может отца? Почему ты так злишься?
Аноним 27/09/20 Вск 14:47:21 1817409124
>>1817201
Так и запишем: Раст - параша для жээсеров и хаскелочуханов.
И откуда берется отрицание, что это всратое дерьмо, если прямо сказано что это всратое дерьмо?
Аноним 27/09/20 Вск 16:32:05 1817515125
>>1817409
>Так и запишем
Куда ты там что записываешь, придурок? Воображение опять разыгралось? Прости, но мнение умственно отсталых тут никому не интересно.

>Раст - параша для жээсеров и хаскелочуханов.
И что ты ТУТ делаешь в таком случае, обиженка? Пиздуй в свой тред по delphi и php, неосилятор хуев.
Аноним 27/09/20 Вск 16:32:20 1817516126
>>1817409
Да мы и не отрицаем, нам просто нравится так писать и на за это не платят хотя мне платят и неплохо.
Аноним 27/09/20 Вск 18:21:46 1817605127
Не совсем понял в чём проблема с вызовами функций в одной строчке? Каким-то сектантам религия не позволяет так делать? В чём вообще смысл?
Аноним 27/09/20 Вск 19:30:22 1817636128
>>1817605
Консилиум шизов решил, что это "всрато" выглядит.
Аноним 27/09/20 Вск 19:54:34 1817660129
>>1817605
ебанько решили что 1 строчка 1 метод и ниибет
Аноним 27/09/20 Вск 23:46:41 1817853130
А кто каким редактором пользуется?
Что-то идея прям говняно работает, вообще ничего не подсказывает толком. Где интелисенс нах?
Аноним 28/09/20 Пнд 00:13:50 1817862131
>>1817853
VSCode + плагин. Подсвечивает всё что нужно, интелесенс, документация.
Аноним 28/09/20 Пнд 08:43:31 1817923132
Аноним 28/09/20 Пнд 09:03:23 1817930133
>>1817923
При наведении мышкой на функцию выдаёт доки к ней?
Аноним 28/09/20 Пнд 10:14:17 1817948134
>>1817930
>мышкой
>вим
аче,звучит по unixlike-ски
Аноним 28/09/20 Пнд 10:45:22 1817960135
>>1817948
>аче,звучит по unixlike-ски
Ну да, мышка же в линухе не поддерживается. Поэтому приходится нампадом себе очко разрабатывать. Зато лучше всех играю в мортал комбат. Комбины такие мучу, охуеешь.
Аноним 28/09/20 Пнд 11:38:43 1817979136
Аноним 28/09/20 Пнд 13:23:22 1818058137
Кто-нить может вкратце пояснить за разницу между async-std, tokio и actix-rt?
Я так понимаю (сейчас перечислю свое виденье, если ошибаюсь поправьте и добавьте, что знаете вы)
Это три конкурирующие либы для асинхронного программирования.
Первые два предлагают зеленые треды на пуле потоков, актикс - однопоточная асинхронщина.
Использовать одно из другого невозможно? Или можно как-то обернуть? Мне бы очень хотелось в actix-web использовать кое-что из async-std.
Аноним 28/09/20 Пнд 13:36:25 1818062138
>>1818058
Актикс сделан поверх токио, так что в этом списке он лишний.

А асунк-стд и токио - это две конкурирующие реализации рантайма для асинхронных функций (т.е. той части, которая непосредственно их запускает) в расте, поскольку в стандартной либе никаких рантаймов нет. Зачастую выбора особо и нет, поскольку рантаймы друг с другом несовместимы и много библиотек работают либо только с токио, либо и с тем и другим, так что в 90% случаев будешь выбирать именно токио.
Аноним 28/09/20 Пнд 13:45:49 1818067139
>>1818062

А чем тогда занимается actix-rt? rt же я так полагаю, расшифровывается как рантайм?

Почему Токио, а не стд?
Аноним 28/09/20 Пнд 13:55:35 1818073140
>>1818067
> А чем тогда занимается actix-rt?
Раньше он и содержал в себе собственный рантайм, а потом решили переехать на токио и сейчас он представляет из себя просто обёртку над ним.
> Почему Токио, а не стд?
Так сложилось исторически. Какой выбрали, на тот и переехали.
Аноним 28/09/20 Пнд 14:27:16 1818110141
>>1817862
по макросам прыгать не умеет, из-за этого переехал на intellij rust
Аноним 28/09/20 Пнд 19:25:48 1818347142
>>1817853
Emacs + rls.
rust-analyzer тормозной и лажает постоянно
Аноним 28/09/20 Пнд 19:56:30 1818384143
image.png 142Кб, 2016x1296
2016x1296
>>1817930
>При наведении мышкой на функцию выдаёт доки к ней?
Можно сказать, что да ну почти.
Аноним 28/09/20 Пнд 20:51:34 1818412144
>>1818110

А его нужно как-то отдельно настраивать?
Оно вообще ничего не проверяет и не подсказывает, только подсвечивает синтаксис, устанавливает зависимости из cargo, иногда жалуется на кусок кода, который на самом деле норм.
Может переставить или что... Пользоваться невозможно.
А вот посоаетованный Vs code из коробки завелся и все вроде ок.
Аноним 28/09/20 Пнд 21:14:59 1818430145
600475554466.png 136Кб, 600x337
600x337
>>1818412
Idea, Eclipse, Emacs, Vim - это не про написание кода, это про секс. Про жесткий секс. На то программисты и анальники - им нравится когда их ебут. Когда они пыхтят, когда им неудобно, когда что-то отваливается и это надо чинить (желательно самому), когда что-то не работает из коробки, или работает но плохо.

Если же тебе просто хочется код писать - VSCode, Visual Studio, Sublime Text. Они покроют 99% твоих потребностей.
Аноним 28/09/20 Пнд 23:27:37 1818490146
Аноним 28/09/20 Пнд 23:30:12 1818493147
DAmGG7xXsAEzddp.jpg 183Кб, 1200x983
1200x983
>>1818490
Как будто что-то плохое.
Аноним 28/09/20 Пнд 23:34:36 1818497148
>>1818493
500+ страниц как трахатся с комбайном, да растбук где то столько же весит
Аноним 28/09/20 Пнд 23:36:22 1818498149
middsc00367.jpg 162Кб, 675x900
675x900
>>1818493
Представляешь как это буйвол тебя ебёт по ночам?
А Столмана голым представляешь?
Аноним 28/09/20 Пнд 23:42:50 1818503150
saintignucius.jpg 31Кб, 321x445
321x445
Аноним 29/09/20 Втр 03:50:21 1818571151
>>1818412
никогда не жаловался в не туда
прыгает по референсам збс
сам раскрывает макросы, что для меня существенно
подсветка несуществующих идентификаторов ебанутая, да
но в целом мне норм
вскод могёт почти всё то же самое, кроме скакания по макросам, больше ничего против не имею
Аноним 29/09/20 Втр 08:29:53 1818606152
>>1818430
Ты так говоришь, как будто раст учится быстрее вима. Но это нихуя не так. Вим — это раст в мире текстовых редакторов: он охуенный, но не все в него могут.
Аноним 29/09/20 Втр 09:33:58 1818634153
>>1818430
>Когда они пыхтят, когда им неудобно, когда что-то отваливается и это надо чинить (желательно самому), когда что-то не работает из коробки, или работает но плохо.
>Ты так говоришь, как будто раст учится быстрее вима.
Типичный программист-анальник. Тебе в кайф пыхтеть?
Вим это устаревшее говно. Оно живо только благодаря тому, что есть узкое место для применения (адм. серверов) и программистам-анальникам, которым нравится быть "нитакими" и пыхтеть когда им в задницу засовывают неудобства.

Вот хорошее мнение почему vim морально устарел: https://tonsky.livejournal.com/314598.html
А если ты Vim переделываешь под себя, то какой смысл юзать его, а не, например, VSCode, Atom, Sublime Text?

>он охуенный, но не все в него могут.
Он вообще не охуенный, ты им пользуешься только потому что "не все в него могут".
Аноним 29/09/20 Втр 09:34:22 1818635154
Аноним 29/09/20 Втр 09:34:57 1818636155
Аноним 29/09/20 Втр 09:42:03 1818638156
>>1818430
В жыдее всё ископобки и никакого пердолинга.

> VSCode, Visual Studio, Sublime Text
Мне нужна среда для работы с кодом как с кодом, а не с портянкой буквоговна на форуме, а все эти блокнотики-разукрашки, идейно вышедшие из notepad++ именно так с ним и работают.
Аноним 29/09/20 Втр 09:58:22 1818652157
>>1818638
>Мне нужна среда для работы с кодом как с кодом
Ты хочешь сказать, что в этих редакторах не плейн текст?
Если да - то ты просто нихуя не понимаешь, сразу мимо иди.
Если нет - то к чему этот высер? Какая разница в каком редакторе редактировать/писать код?
Аноним 29/09/20 Втр 10:21:42 1818671158
>>1818634
хуйню сказал. Vim мне позволяет делать свои задачи быстрее. Если тебе он кажется неудобным, то окей, не пользуйся.
Аноним 29/09/20 Втр 10:41:15 1818685159
>>1818671
>Vim мне позволяет делать свои задачи быстрее
За счёт чего? Ничего конкретного ты пока не сказал, кроме абстрактных обтекаемых фраз. Как и любой идолопоклонник.
Аноним 29/09/20 Втр 10:43:52 1818690160
>>1818638
>Visual Studio
>а все эти блокнотики-разукрашки, идейно вышедшие из notepad++
сразу видно зумерка-долбоеба. на вижуал студии люди софт делали ещё когда ты соплей у своего бати на конце висел.
Аноним 29/09/20 Втр 10:51:08 1818693161
>>1818634
>Вот хорошее мнение почему vim морально устарел
Сейчас бы в 2020 мнение всяких петухов в жж читать.
Аноним 29/09/20 Втр 11:13:29 1818707162
>>1818685
>За счёт чего?

За счет надроченной мышечной памяти на наркоманские хоткеи.

Аноним 29/09/20 Втр 11:15:58 1818708163
>>1818693
>фанбою неприятно, что разработчик FiraCode ему в тапки ссыт
Аноним 29/09/20 Втр 11:24:28 1818711164
>>1818708
>разработчик FiraCode
>пукнуть гринтекстом ссылаясь на авторитет анонимной борде
Аноним 29/09/20 Втр 11:30:58 1818717165
large.jpg 16Кб, 300x225
300x225
>>1818711
>пукнуть гринтекстом ссылаясь на авторитет анонимной борде
Ой, не конструктивно, да? То ли дело назвать кого-то петухом. Это совсем не апелляция к личности. Ты плывёшь, дурик. Ищешь за что бы зацепиться, но всё мимо. Манямирок трещит по швам?
Аноним 29/09/20 Втр 11:42:31 1818723166
>>1818634
Ну, давай по пунктам:

>Вим это устаревшее говно
Да, поэтому я пользуюсь neovim'ом.

>А если ты Vim переделываешь под себя, то какой смысл юзать его, а не, например, VSCode, Atom, Sublime Text?
VSCode написан на электроне, работает со скоростью улитки и жрёт оперативку, а чтобы сделать в нём нечто нетривиальное (вроде блочного visual мода), надо обмазаться плагинами на ебучем JS тайпскрипте, которые работают ещё медленнее, потому что электрон.
Atom не пользовался, ничего не могу сказать, не считая того, что про этот редактор мало кто слышал.
Sublime Text надо покупать, чтобы не приходилось щёлкать мышкой на ебаные "у вас триал: |да, не буду платить| - |нет, не буду платить|". Да и rust-analyzer на нём без плагина. Ну и VSCode тупо лучше во всём, хотя и жрёт чуть больше оперативки и работает медленнее.

Вим проще кастомизировать по сравнению с другими редакторами, потому что у этих редакторов нет трёх различных модов, и надо обмазываться контрольными кнопками в одном Insert моде.

К тому же, мне тупо удобнее делать всё клавиатурой вместо мышки, потому что после геймерского прошлого у меня туннельный синдром на правой руке, а все редакторы кроме вима идут с кучей кнопок, на которые надо щёлкать мышкой.

>Он вообще не охуенный, ты им пользуешься только потому что "не все в него могут".
Нет, он просто охуенный и удобен конкретно мне.
Аноним 29/09/20 Втр 11:45:27 1818724167
>Манямирок
Ну разве что у Вас, ведь это Вы всяких петухов сюда притащили. Нормальным людям в 2020 не нужно читать мнения петухов, чтобы выбрать редактор кода.
>То ли дело назвать кого-то петухом.
Не могу себе в таком отказать.
Аноним 29/09/20 Втр 11:49:52 1818726168
>>1818723
>VSCode написан на электроне, работает со скоростью улитки и жрёт оперативку, а чтобы сделать в нём нечто нетривиальное (вроде блочного visual мода), надо обмазаться плагинами на ебучем JS тайпскрипте, которые работают ещё медленнее, потому что электрон
Так себе аргумент, не пишите код на смарт-чайнике через терминал.
Аноним 29/09/20 Втр 11:58:09 1818729169
>>1818723
>VSCode написан на электроне, работает со скоростью улитки и жрёт оперативку, а чтобы сделать в нём нечто нетривиальное (вроде блочного visual мода), надо обмазаться плагинами на ебучем JS тайпскрипте, которые работают ещё медленнее, потому что электрон.
Это такая же субьективщина как и то, что тебе удобен Vim. Потому что у меня, например, тот же VSCode работает быстро и без нареканий. Задержки при печатаньи, как в том же Atom нет. Вот прямо сейчас открыл свой проект, внутри которого код на HTML, CSS, TypeScript, JavaScript, JSON, Rust, SQL и куча расширений для поддержки всё этого и удобного программирования. Памяти жрёт ~600мб. Но где я ещё найду редактор, который нормально поддерживает всё это и при этом, в общем то, не тупит?

>Atom не пользовался
У атома есть беда именно с производительностью. Но он довольно популярен, кста.

Аноним 29/09/20 Втр 18:58:40 1819047170
>>1818729
Это потому, что ты слоупок и не ощущаешь лагов.
Аноним 29/09/20 Втр 19:10:15 1819053171
>>1819047
скорее потому что ты нищеброд и у тебя нет нормального компа для работы браузера с текстовым полем
Аноним 29/09/20 Втр 19:12:32 1819056172
>>1819053
Хватит уже бомбить на vim, неосилятор. Не нравится - не используй. Нам удобно.
Аноним 29/09/20 Втр 19:13:09 1819057173
>>1819053
не забудь еще парочку анальных зондов от майков себе в жопу поставить :)
Аноним 29/09/20 Втр 19:13:21 1819058174
>>1819053
У меня 16 ядерный топовый амд на одной машине и топовый i7 на другой. Ну и раз уж на то пошло, лучшая реализация вима это evil-mode
Аноним 29/09/20 Втр 19:22:34 1819068175
>>1819056
>>1819057
>>1819058
хуя вас порвало.

>Хватит уже бомбить на vim
ну да ну да, это мы бомбим.
вас уже на пол треда разворотило от одной картинки с радугой.
извините если задели ваши чувства.

>не забудь еще парочку анальных зондов от майков себе в жопу поставить :)
где зонды? покажи, ткни, пиздабол.

>У меня 16 ядерный топовый амд на одной машине и топовый i7 на другой.
да мне похуй, если честно. но если у тебя при таких системках вижал тормозит, то у тебя просто руки-крюки. по другому это не объяснить.
Аноним 29/09/20 Втр 19:31:06 1819083176
Аноним 29/09/20 Втр 19:33:45 1819089177
>>1819068
> да мне похуй, если честно. но если у тебя при таких системках вижал тормозит, то у тебя просто руки-крюки. по другому это не объяснить.
Ну а как же "нинада настраивать"? Судя по количеству пользователей idea, большинство людей просто привыкло к тому, что софт тормозит.
Аноним 29/09/20 Втр 19:37:55 1819091178
>>1819083
>This is not for telemetry, the settings search is using that external service to improve search results. You can disable this with "workbench.settings.enableNaturalLanguageSearch": false
Аноним 29/09/20 Втр 19:53:48 1819099179
>>1819091
Ага, правда, чтобы найти эту челику пришлось ищую на гитхабе создавать, нигде явно об этом в вскоде не сообщается.
Аноним 29/09/20 Втр 19:59:37 1819103180
>>1819091
> using that external service to improve
Это и есть телеметрия.
Аноним 29/09/20 Втр 20:06:52 1819110181
>>1819099
я ещё и за каких-то случайных долбоебов в интернете должен отвечать? долбоёбы это по vim части.

>>1819103
когда поисковиком гуглишь что-то - это тоже, надо понимать, телеметрия. двачуешь-капчуешь когда - телеметрия.

узнай что обычно называют телеметрией, а потом будешь тут срать.
Аноним 29/09/20 Втр 20:11:14 1819115182
>>1819110
Вот только это не в поисковике.
Аноним 01/10/20 Чтв 12:02:34 1820334183
>>1819089
>idea
хз, у меня 8 сандальных ядер и 48Г оперы (4Г дал идее на кучу), полёт норм. Открыто 3-4 проекта обычно.
Что в ней нравится - сама находит либы для импорта. Пишешь вызов, она подсвечивает красным и предлагает импортнуть. А ещё есть локальная история, когда не коммитишь правку каждой строчки, но в ide можешь отмотаться назад к любому состоянию.
Аноним 01/10/20 Чтв 12:24:15 1820354184
>>1819089
да суперпроизводительность не слишком часто нужна, точнее она редко нужна
Аноним 01/10/20 Чтв 18:04:42 1820578185
>>1819099
Ну так надо было качать VS Codium, а не VS code (это как хромиум и хром)
Аноним 01/10/20 Чтв 19:47:48 1820691186
>>1820334
Как у нее с интроспекцией и настраиваемостью?
Емакс умеет все вышеперечисленное.
Вообще вся хуйня в lsp сервере. rust-analyzer Умеет в автоимпорт, но обсирается на goto-definition постоянно и крашится. rls в автомипорт не умеет, но гораздо шустрее и не так часто крашится.
Аноним 01/10/20 Чтв 20:53:32 1820779187
>>1820691
>Емакс умеет все вышеперечисленное.
с емаксом еще поебстись надо прилично так
Аноним 01/10/20 Чтв 20:57:57 1820782188
>>1820779
Ну а совсем остальным не надо?
Аноним 01/10/20 Чтв 23:31:58 1820900189
>>1820782
c идеей какой нибудь в разы меньше жопоебли, хотя я предпочитаю что то более легковесное типа вскода а комбайнами пользуюсь когда ну очень надо
Аноним 01/10/20 Чтв 23:35:20 1820903190
>>1820900
Только если ты согласен жрать дефолт придуманный разрабами же.
Аноним 02/10/20 Птн 01:58:17 1820949191
>>1820903
С ним что-то не так?
Аноним 02/10/20 Птн 11:01:24 1821075192
>>1820779
>с емаксом еще поебстись надо прилично так
>Что такое Spacemacs
Аноним 02/10/20 Птн 15:54:41 1821305193
>>1821075
С ним ещё больше ебли.
Аноним 03/10/20 Суб 14:57:04 1822002194
Аноним 03/10/20 Суб 15:59:28 1822048195
lisp.jpg 70Кб, 567x529
567x529
>>1822002
>>1821075
>>1820691
Есть версия эмакса не блядском лиспе? Лиспаёбы не нужны. Совсем.

Если мне будет нужна ебля с редактором, то я лучше vim возьму, а не лиспаговно емаксовское. От него хоть есть толк для серверов.
Аноним 03/10/20 Суб 16:00:54 1822050196
>>1822048
Что не так с лиспом? Лучше лисп машины для динамического окружения может быть только равзе что смолтолк.
Аноним 03/10/20 Суб 16:11:21 1822054197
>>1822050
>Что не так с лиспом?
Сначала скажи что с ним так.

>Лучше лисп машины для динамического окружения
На основе чего ты это решил?

>может быть только смолтолк
Это тот полумёртвый язык, единственная адекватная реализация которого обновляется раз в 2-3 года? Он лучше чем лисп, да? Приму к сведению.
Аноним 03/10/20 Суб 16:38:46 1822073198
>>1822054
> Сначала скажи что с ним так.
Самый удобный синтаксис для редактирования. См paredit/smartparens.
Гомоиконичность и вытекающая из нее возможность добавлять почти любые модные фичи.
> На основе чего ты это решил?
На основе того что попробовал кучу вариантов.
> Он лучше чем лисп, да?
Я не говорил что смолтолк лучше как язык. Я говорил про среду. Рефлексивность это то, что лично мне очень нужно, и единственная реально юзабельная реализация этого — Емакс.
Аноним 04/10/20 Вск 02:56:23 1822591199
1473626102789.png 39Кб, 732x467
732x467
1451698596264.png 25Кб, 935x576
935x576
1498899018746.png 19Кб, 936x577
936x577
Аноним 04/10/20 Вск 05:49:58 1822622200
Аноним 04/10/20 Вск 05:57:23 1822624201
>>1818384
Это rls из coc или rls, прикрученный православным образом?
Аноним 04/10/20 Вск 06:04:23 1822627202
Аноним 04/10/20 Вск 11:12:42 1822709203
>>1822624
Это RA, а не RLS.

И без CoC ты хуй при наведении мышки чего сделаешь. Православно прикрученный работает с нажиманием клавиши, а не с наведением мышки:
>nnoremap <silent> K <cmd>lua vim.lsp.buf.hover()<CR>
Аноним 04/10/20 Вск 12:09:42 1822737204
>>1822624
Эта хуйня же перекрывает половину экрана. Тебе оно не мешает?
Аноним 04/10/20 Вск 16:24:11 1822894205
>>1822737
У тебя капча половину экрана перекрывает. Не мешает?
Аноним 04/10/20 Вск 16:56:09 1822913206
Аноним 04/10/20 Вск 19:44:48 1823042207
Vimlogo.svg.png 106Кб, 1200x1202
1200x1202
>>1822913
Перед каждым использованием vim нужно вводить капчу. Это настолько мощная программа, что человечество пытается ограничить возможность использования её искуственным интеллектом и злоумышленниками. В ней можно писать текст, редактировать его, перемещаться по файлу, настраивать редактор, выделять текст и всё это в разных режимах! В общем-то это достоинство перекрывает все недостатки vim, о которых пишут аноны выше.

Господь бог знает, что может случится если эта технология попадёт в руки ИИ или мусульманских радикалов, вроде ИГИЛ (запрещенная в России экстремистская организация).
Аноним 04/10/20 Вск 19:48:15 1823046208
>>1823042
Да ты же поехавший. Кстати в Емаксе есть vim-captcha-mode который запускает вим в емаксе и вводит капчу автоматически
Аноним 04/10/20 Вск 20:14:01 1823087209
>>1823046
А ещё ходят слухи, что скоро на вимскрипте допишут автоматический вводитель капчи, и её не надо будет вводить руками! Всего пять часов брутфорса и готово!
Аноним 04/10/20 Вск 23:56:49 1823222210
image.jpg 11Кб, 225x225
225x225
Какой хороший редактор написан на Раст, кстати?
Аноним 05/10/20 Пнд 00:15:15 1823240211
>>1823222
ахаха, ну прям затроллел. ахаха
Аноним 05/10/20 Пнд 00:54:48 1823258212
Аноним 05/10/20 Пнд 12:08:06 1823460213
Аноним 05/10/20 Пнд 13:02:11 1823527214
>>1823460
Эту петицию ты сам наверное и создал.

Уже и так переписывают, к слову.
Аноним 05/10/20 Пнд 13:12:33 1823544215
>>1823527
Я джавист вообще, наткнулся и принёс сюда. Когда-то видел аналогичную петицию про D.
Аноним 05/10/20 Пнд 14:31:09 1823629216
Но у раста нет стандарта, а поведение компилятора меняют каждый день. Куда ему до языка АДа!
Аноним 05/10/20 Пнд 15:33:14 1823692217
Аноним 06/10/20 Втр 19:52:33 1824697218
потыкал руст сначала было ебать че за пиздец че за кресты, а теперь даже понравилось
Аноним 07/10/20 Срд 20:20:52 1825418219
>>1824697
Дропнул доизучение крестов в пользу rust. Писать код всяко посложнее сначала, но когда начинаешь думать в нужном русле - становится очень просто.
Мимокрокодил 07/10/20 Срд 23:11:10 1825524220
Кто нибудь юзал bevy?
Аноним 07/10/20 Срд 23:22:18 1825527221
08/10/20 Чтв 00:22:21 1825550222
>>1825418
Дропай эту парашу, есть же Zig.
Аноним 08/10/20 Чтв 07:37:03 1825611223
>>1825550
Опять ты говноед с Си треда припёрся сюда.
Аноним 08/10/20 Чтв 22:54:35 1826242224
matklad.jpeg 14Кб, 460x460
460x460
Аноним 08/10/20 Чтв 22:59:37 1826245225
>>1813444
По итогу Rust из этого рейтинга вылетел нахуй.
Аноним 08/10/20 Чтв 23:07:27 1826249226
>>1826242
Вот бы они сделали чтобы rust-analyzer не крашился от каждого чиха уже.
Аноним 09/10/20 Птн 09:22:36 1826391227
image.png 67Кб, 878x432
878x432
>>1826245
Просто в расте программисты умеют решать проблемы сами, без гугла.
Аноним 09/10/20 Птн 11:04:26 1826474228
image.png 24Кб, 959x414
959x414
>>1826245
Тем не менее, он в хорошей компании. А вот почему его стали меньше гуглить.. Закончились каникулы? Сокращения мозиллы затронули 30% всех писавших на расте? Американским растоманам некогда программировать - заняты на блм митингах?
Аноним 09/10/20 Птн 11:55:08 1826503229
>>1826474
>растоманам
Растоцыганам.
Аноним 09/10/20 Птн 15:07:01 1826667230
>>1826242
есть за что критиковать, но если критиковать адово перегруженные спец правилами на каждый чих плюсы то талмут выйдет размером с томик войны и мира
Аноним 09/10/20 Птн 18:48:40 1826804231
Аноним 09/10/20 Птн 18:49:59 1826805232
Аноним 09/10/20 Птн 19:53:30 1826919233
Аноним 09/10/20 Птн 19:57:52 1826922234
Аноним 09/10/20 Птн 23:36:28 1827083235
>>1826922
А нахуя? Как можно с курлом наебаться?
Аноним 10/10/20 Суб 00:32:24 1827104236
>>1827083
со всем можно наебатся
Аноним 10/10/20 Суб 00:44:14 1827110237
Аноним 10/10/20 Суб 12:10:08 1827239238
>>1827110
>switched-to-hyped-technology
вы уж блядь определитесь хайповая технология или никому не нужный мертвый язык
Аноним 10/10/20 Суб 12:54:26 1827259239
8a89n02l45n51.jpg 60Кб, 570x659
570x659
>>1827083
Имея такое количество юзеров и столько опыта, прожженный сишник видит смысл в расто-бекэнде ради memory-safety. Думаешь он тоже решил присесть на мертворожденный паравоз хайпа?
Аноним 10/10/20 Суб 17:53:22 1827427240
Растишки, вы любите фаззить?
Аноним 10/10/20 Суб 21:12:45 1827560241
>>1827239
Хайп как акт некрофилии
Аноним 11/10/20 Вск 18:12:56 1828001242
>>1827427
Фаззинг для си-говноедов, раст незачем фаззить, он неуязвим, если код писал не упоротый ебанат, нарочито плодящий бэкдоры для АНБ =)
Аноним 11/10/20 Вск 18:57:45 1828019243
Аноним 11/10/20 Вск 19:35:41 1828030244
>>1828019
ну если ногой писать то и хело ворд сломатся
Аноним 11/10/20 Вск 21:42:52 1828099245
>>1828030
Ну так сломай hello world. Очень интересно увидеть.
Аноним 12/10/20 Пнд 04:16:35 1828253246
>>1789272
>У меня с растом какая-то странная история, я уже где только не добавился во всякие коммунити, но так и не начал ничего на нём писать.
Аналогично
Аноним 12/10/20 Пнд 04:19:43 1828254247
Аноним 12/10/20 Пнд 04:28:41 1828260248
Аноним 13/10/20 Втр 00:31:56 1828907249
>>1826242
Что-то вообще на критику не похоже.
Аноним 13/10/20 Втр 04:21:55 1828969250
>>1828907
>Сложный, слишком низкоуровневый, долгая компиляция, сырой, так себе альтернатива плюсам, unsafe не панацея
>Что-то вообще на критику не похоже
Растамане держатся до последнего.

А как надо критиковать? Покажи.
Аноним 13/10/20 Втр 11:58:52 1829150251
>>1828969
>Сложный
Плюсы сложнее.

>слишком низкоуровневый
Покажи в ассемблере трейты и енамы

>долгая компиляция, сырой, так себе альтернатива плюсам
Допилят. Если есть что-то конкретное, то напиши RFC или отправь пуллреквест сам, в процессе можешь вообще решить, что и без этого можно обойтись.

>unsafe не панацея
Делать хорошие интерфейсы для библиотек тяжело, кто бы мог подумать. В плюсах вон уже 20 лет с инвалидацией итераторов ничего сделать не могут. Там просто решили, что и так сойдет.
Аноним 13/10/20 Втр 14:54:21 1829288252
>>1828969
Наоборот похоже на сглаживание штрихов растафилами.
Там куда серьезнее проблемы есть, о которых узнаешь когда потратишь тонну времени на сие чудо.
Аноним 13/10/20 Втр 15:52:22 1829345253
>>1829150
Главный минус раст - на нем не пишут реальные проекты. Это язык фанбоев. Да он крутой, да, безопасный, но язык нужен не сам по себе (хотя сам по себе тоже нужен - в академических целях, чтобы его идеи потом вошли в какой-то следующий более популярный язык), он нужен для того, чтобы на нем реальные задачи решать. Писать программы, которыми пользуются. Большая часть софта, которым пользуешься ты - это плюсы/джава/питон - и да - пхп.
У раста есть только экспериментальный движок для фаерфокса, единственный большой проект, и то - команду уже вроде как разогнали из мозиллы.
Аноним 13/10/20 Втр 17:39:37 1829419254
>>1829345
А куча мелких и средних проектов уже не считается? Если на языке не написан браузер то все, пиздец?
Аноним 13/10/20 Втр 17:48:53 1829427255
>>1829419
мелкие и средние проекты в целом без разницы на чем писать.
Аноним 13/10/20 Втр 18:15:15 1829437256
Аноним 13/10/20 Втр 19:31:38 1829508257
>>1829437
потому что мелкий проект можно переписать хоть с нуля, если это потребуется.
Я не против раста - отличный язык, но пока не промышленный ни разу. В большинстве прикладных задач его берут просто потому что нравится он кому-то из команды. Ну и пропиарится тоже - компания говорит - у нас есть Раст - и к ним идет толпа молодых романтиков-программистов.
Аноним 13/10/20 Втр 21:29:33 1829575258
>>1829345
Никто внезапно не ебанёт огромный проект за полгода.

> Большая часть софта, которым пользуешься ты
Была написана/начата очень давно.
Аноним 13/10/20 Втр 21:36:47 1829579259
>>1829508
И давно это можно переписывать проекты с нуля? Если ты в гроб-кладбище-пидор банке, то конечно, можно и переписать. А если ты стартап, то второго шанса может уже не быть.
Аноним 13/10/20 Втр 21:45:03 1829583260
>>1829579
>Если ты в гроб-кладбище-пидор банке, то конечно, можно и переписать. А если ты стартап, то второго шанса может уже не быть.
У тебя какие-то странные представления о стартапах и банках.
В банке тебе чтобы выбить бюджет на "переписать с нуля" нужно на одной ноге с околотопменеджментом быть. Если что-то внедрено - нужна ОЧЕНЬ серьезная причина, чтобы делать что-то вне рамок багфиксинга/микро новых фич.
А вот в стартапах наоборт. Хуяк-хуяк, микросервисы в продакшн, презентацию показали, новый раунд инвестиций дали, можно нанять +10 человек и кинуть ресурсы на переписывание с нуля.
Аноним 13/10/20 Втр 23:09:52 1829648261
https://doc.rust-lang.org/std/net/struct.TcpListener.html

Открыл доки. Повторил пример.
>for stream in listener.incoming() {

method not found in `std::result::Result<std::net::TcpListener, std::io::Error>`

Простите, чего? У раста доки не актуальные? Охуенно
Аноним 13/10/20 Втр 23:13:22 1829650262
>>1829648
А как ты пример написал? Судя по ошибке ты ? пропустил в конце.
Аноним 13/10/20 Втр 23:15:16 1829655263
>>1829650
Да, убрал, потому что в каком-то древнем расте было по-другому, у меня тулчейн стоял с хуй знает каких времён. Обновился, всё ожило. Спасибо.
Аноним 14/10/20 Срд 00:34:24 1829691264
image 208Кб, 500x700
500x700
>>1829150
>долгая компиляция
>Допилят
Не допилят. Нет ничего такого, что помогло бы всерьёз компил разогнать. Максимум выжать незначительные проценты. Компил всегда будет таким долгим из-за архитектура компилятора. Бесконечные зависимости для каждого пакета - окончательное потуги в этом направлении убьют.

>Если есть что-то конкретное, то напиши RFC или отправь пуллреквест сам
>в процессе можешь вообще решить, что и без этого можно обойтись.
Поэтому и
>сырой, так себе альтернатива плюсам
Брать это говно в продакшн, где ещё самому надо его допиливать - нет, спасибо.

> Покажи в ассемблере трейты и енамы
Решил дурачком прикинуться? Ещё кроме трейтов и енамов есть какие-то нормальные абстракции? ООП? Наследование может быть? За счёт отсутствия небесплатных абстракций раст и низкоуровневый.

>unsafe не панацея
>Делать хорошие интерфейсы для библиотек тяжело, кто бы мог подумать
К чему это?

>Плюсы сложнее
Сложнее за счёт чего? Следование небольшому своду правил или паттернов убивает необходимость юзать Rust.
Аноним 14/10/20 Срд 11:27:52 1829894265
>>1829691
>ООП? Наследование может быть? За счёт отсутствия небесплатных абстракций раст и низкоуровневый.

Здесь нет ООП, потому что разработчики решили, что оно не нужно, а не из-за низкоуровневости. С этим можно спорить, но точно также, например, подумали в Го.

>К чему это?

Если unsafe протекает из библиотеки, то это проблема библиотеки. В биндинге на Питоне тоже можно накосячить, но никто не говорит, что он небезопасный.

>Следование небольшому своду правил или паттернов

Своду из нескольких сотен правил, про большую часть которых ты не поймешь, пока их не нарушишь. Ну и куча эзотерики типа SFINAE.
Аноним 14/10/20 Срд 12:34:08 1829970266
>>1829894
>Здесь нет ООП, потому что ...
Потому что это противоречит философии языка. Не должно быть ненулевых абстракций. Rust это не плюсы, а си на максималках. По задумке, разумеется.

>Если unsafe протекает из библиотеки, то это проблема библиотеки.
Сам ансейф и его концепция не без греха. В статье об этом сказано подробней.
Аноним 14/10/20 Срд 15:08:12 1830155267
>>1829579
Ты все перепутал. Как раз в банке тебе никто не даст переписать с нуля ничего, у них работало раньше на джаве 1.5, зачем им бизнес-риски? Ты пойди еще найди 10 раст разработчиков, а стартап как раз таки должен быть гибкий - там за код не держатся, если надо - можно выкинуть и переписать
Аноним 14/10/20 Срд 15:11:49 1830158268
- Алло, это число пи?
- Да
- Раст
Аноним 14/10/20 Срд 20:19:48 1830549269
Как часто рантайм раста умирает по какой-нить внутренней ошибке?
Аноним 14/10/20 Срд 20:28:57 1830568270
>>1830549
В основном когда ты дергаешь unwrap() или a[a.len()]
Аноним 14/10/20 Срд 23:30:12 1830713271
>>1830549
обычно на найтли частенько выходит ICE, можешь сам посмотреть на гихабе
Аноним 15/10/20 Чтв 01:13:41 1830740272
Аноним 15/10/20 Чтв 05:28:03 1830834273
>>1830740
Трюк для того, чтобы reader был освобождён до выхода из функций. А вот зачем конечно - видать программисту так захотелось.
Аноним 15/10/20 Чтв 13:02:44 1831074274
>>1830740
Это может быть код, написанный до non-lexical lifetimes, и тогда это была ошибка компиляции.
Аноним 16/10/20 Птн 03:32:06 1831657275
image.png 70Кб, 609x614
609x614
Изучаю понемногу.

Есть создаю Message на основе header со значением 0, то вывод следующий:

Creating ping
Received ping;

Если header== 1, то вывод следующий:
Creating rq;
Received ping;

Почему? Я что-то успускаю в енумах или просто промахнулся где-то?
Аноним 16/10/20 Птн 03:33:27 1831658276
>>1831657
В первом матче process_message не вызвал, но он на самом деле снаружи вызывается всё равно, во втором матче вызов появился в процессе отладки.

Книжку тоже читаю, но попутно разбираюсь и ручками.
Аноним 16/10/20 Птн 03:36:38 1831659277
>>1831657
>>1831658
Отвечаю на свой вопрос.
Нужен qualified path в match expression и указание параметра в матче Rq.
Аноним 16/10/20 Птн 03:52:43 1831662278
Аноним 16/10/20 Птн 10:20:08 1831715279
>>1831657
Потому что "Ping" у тебя — это переменная, а не вариант енума. Если бы ты clippy запустил, тебе бы рассказали, что "Rq =>" ветка недостижима.
Аноним 16/10/20 Птн 12:13:38 1831789280
>>1831715
Вот это, кстати, косяк. Тоже на таком подрывался. Нужно было в синтаксисе чётко отделить переменные от енумов. Например, ключевым словом var или тип того.
Аноним 16/10/20 Птн 14:01:38 1831907281
>>1831715
>тебе бы рассказали, что "Rq =>" ветка недостижима.
Да мне и компилятор выдал ворнинг на этот счёт, а я не всмотрелся.
Но спасибо.
Аноним 18/10/20 Вск 21:20:20 1833940282
Ребят, подскажите любопытному анону.
Вот захотел я переписать свой компилятор с хаскеля на раст ради скорости и устранения повсеместной ленивости. Есть нормальный аналог хаскелевского megaparsec и нормальная обертка над LLVM? Алсо, хотелось бы переписать с си рантайм, в расте как с ручным управлением памятью, сильно больно свой GC писать будет?

Хаскель прекрасен, но тормознут, раст представился альтернативой, заодно решил от других зависимостей вроде си попробовать избавиться, как вы поняли, вероятно. На крестах реализовывать вывод типов хаскелеподобного языка больно, я пытался, раст за счет адт и паттерн матчинга в этом получше должен быть
Аноним 19/10/20 Пнд 14:10:19 1834483283
>>1833940
Написал на хачкеле
@
Хорошо, но медленно
@
Переписать не сможешь


Так, а как же мантры о том, что хачкель лучше всех выражает сайд-эффекты? Вот тебе нужен такой эффект, как неленивость и вытекающая отсюда эффективность. Давай, вырази это.
Аноним 19/10/20 Пнд 16:53:43 1834628284
Аноним 19/10/20 Пнд 18:25:56 1834751285
>>1833940
Ну, есть несколько крейтов для этого на расте. Но тут сильно зависит от того, какой именно GC тебе нужен.
Аноним 19/10/20 Пнд 19:40:58 1834812286
>>1834751
В идеале, мне нужно написать свой интерфейс GC, а потом на его основе наделать несколько GC вроде CMS и G1, но на этот раз на расте. А можешь, пожалуйста, перечислить эти крейты? Интересно на них глянуть.

>>1834483
Жирным долбоебам этот вопрос адресован не был. Съеби, быдло.


Я более-менее понимаю, как работает хаскель (провел в его гитлабе и за его системой типов не один вечер), поэтому и спросил про раст как про родственный, но более производительный ЯП. Но тут прилетел этот бесполезный кусок ржавого дерьма выше и начал кукарекать. И вот из-за таких воняющих на весь тред пидорасов и отношение к технологиям соответствующее. Я, блядь, хоть раз что-то сказал про то, что хаскель лучше всех, долбоеб? Можешь засунуть свой язык назад в свою же задницу и спиздовать отсюда.

В первый раз так горит с мудаков в программаче, он же блядь позорит раст комьюнити

а конкретно проблема производительности связана с алгоритмом вывода типов (решения constraint-ов) у хаскеля, я взял своему языку ту же систему OutsideIn(X), но пытаюсь сделать растоподобный синтаксис и мутабельность вместе с частью охуенности системы типов хаскеля, уже срал вопросами по теме в программач же, но как-то беуспешно.

Аноним 19/10/20 Пнд 19:44:12 1834815287
>>1834812
>он же блядь позорит раст комьюнити
Тоже мне, блядь, проблема.

Ты бы ещё больше скрытого текста ебанул.
Аноним 19/10/20 Пнд 19:45:15 1834818288
Аноним 19/10/20 Пнд 19:54:49 1834827289
>>1834818
Красиво ебанул. Уважаю.
Аноним 19/10/20 Пнд 23:55:10 1834965290
А я был даже не из растишек.
Аноним 20/10/20 Втр 00:12:34 1834986291
>>1834812
Ну, вообще, я не смотрел на GC в расте, мне не нужно было, но просто идёшь на
lib.rs
и там ищешь "gc" или "garbage" или ещё чего-нибудь вроде этого.

Хотя мутабельность ты с хачкелем не подружишь, скорее всего, там же сразу линейные типы ебало бьют за мутабельность, нет?
Аноним 20/10/20 Втр 00:20:33 1834997292
>>1834812
У меня создаётся впечатление, что ты контуженный дебилговно, который раз в год делает очередной проект всей своей жизниговно, который из года в год не взлетаетговно.
Ну вот нахуя ты делаешь очередной никому не нужный ЯПговно и компилятор к нему? Не проще ли помочь хаскелю или расту в этих областях? Или ты слишком тупговно для такого и только и можешь пилить свое поделиеговно, а код там такой что все бабы сраки со всего района лезли в него, чтобы найти куски говна своего, но находили только твой код? Зачем говно? Говно не нужно. Надо меньше говна. А без говна будет менее говенно. Говна хватает. Все испускают говно. Надо уменьшать количество говна. Долой произвольную дефекацию. Долой говно. Ты меня понял?) Вот.
Аноним 20/10/20 Втр 09:50:21 1835138293
>>1834986
Меня больше интересовало, нет ли крейтов для облегчения реализации своих GC, потому что пока что мне ручное управление памятью в расте видится несколько громоздким.

> Хотя мутабельность ты с хачкелем не подружишь

Поэтому у меня модификация (хотя и оригинальная система типов вполне позволяет, но мне она вся не нужна)

>>1834997
Что ж тебе так покоя не дает, что я себе там на своем личном гит сервере делаю-то? Ну пилю я себе PhD, ну отъебись.

> Или ты слишком туп
А может, ты?

> Ну вот нахуя ты делаешь очередной никому не нужный ЯП
Может, потому, что есть такая задача? Пытаюсь сделать ЯП, в котором конкуррентность проверяется на уровне типов.

Хотя нахуя я вообще тебе это поясняю, ты наверняка даже разницу между STLC и System F не знаешь.
Аноним 20/10/20 Втр 13:55:19 1835278294
>>1835138
>Меня больше интересовало, нет ли крейтов для облегчения реализации своих GC

Так ты результаты поиска по lib.rs посмотрел? Я там вроде бы видел что-то такое.
Аноним 20/10/20 Втр 14:20:40 1835299295
>>1835278
В lib.rs я поискал, я просто нашел код одного кодера, делавшего на расте клон beam vm, у него сделано ровно так, как мне нужно.
Просто структура с usize внутри, а дальше обертки для интерпретации этого числа как указателя на что угодно и обратно, арифметика реализована удобно, вот это все. Ну и аллокатор чанков на mmap-е сделан. Последний выглядит почти как на си, лол.
Сижу, вникаю в детали. Но за помощь все равно спасибо :) Пойду там искать битовые карты, нужно для G1 GC. Пока что bitset-core выглядит как то, что надо.
Аноним 20/10/20 Втр 15:06:57 1835350296
>>1835138
> > Или ты слишком туп
> А может, ты?
Ясно. Ты тупая хаскелесобака.
Научишься говорить на Rust - приходи. Пожуем говна, попьем мочи.
Аноним 20/10/20 Втр 15:33:49 1835385297
>>1835299
Звучит не очень, потому что usize имплементит Send и Sync, а голые указатели — нет (и не зря). Так что может выстрелить. А может и нет. Но сам там смотри, в общем.
Аноним 20/10/20 Втр 15:41:23 1835394298
>>1835385
Ну тут просто никак не обойтись без подобного, потому что мне нужно работать с указателями на объекты в куче как из потоков GC, так и из потоков шедулеров. Тут головой надо просто думать, ну куда без этого)

Кстати, практика предыдущей версии показала, что использование общей кучи позволяет не только в один актор запихнуть обработку дохрена большого массивчика, что очевидно, но и снижает траты памяти в целом по сравнению с тем же erlang, где у каждого актора сразу своя куча на пару сотен байт. Так что ради таких преимуществ придется и потерпеть :)
Аноним 20/10/20 Втр 15:42:35 1835395299
>>1835394
не байт, слов, а машинное слово, в зависимости от архитектуры, может и 8 байт быть. Вроде одно слово перепутал, а сколько смысла поменялось...
Аноним 20/10/20 Втр 15:44:20 1835400300
>>1835385
Кстати, не подскажешь, lalrpop стоит использовать, или сыроват?
Аноним 20/10/20 Втр 16:05:59 1835413301
Шизофреник опять
Аноним 20/10/20 Втр 16:20:14 1835439302
>>1835400
Ну, с простым IDL языком я вот буквально сейчас его использую, вроде нормально. Правда в книжке пары моментов не хватает, вроде специальных span-матчеров @L и @R, но для этого достаточно почитать немного сорцов и тестов в репе.

Ну и он LR(1), так что если у тебя язык не context-free, то decent recursive Pratt в паре с nom либой может лучше зайти.
Аноним 20/10/20 Втр 16:22:19 1835445303
Аноним 20/10/20 Втр 16:32:03 1835460304
>>1835445
Съеби, джаваскриптер, тут умные люди кукарекают.
Аноним 20/10/20 Втр 16:44:03 1835469305
>>1835460
У меня проект на Rust и wasm!!1
Ты мразь. Я тебя ебал.
Аноним 20/10/20 Втр 16:49:29 1835473306
Аноним 20/10/20 Втр 18:17:40 1835553307
image.png 285Кб, 640x596
640x596
Я вам картинку на перекот принес.
Аноним 21/10/20 Срд 01:07:10 1835850308
>>1835299
Можно узнать почему ты хочешь региональный gc, а не подобие новых zgc и шенанды ?
21/10/20 Срд 01:36:36 1835852309
>>1835850
Забыл упомянуть shenandoah и zgc, да. А разве они не на регионах, кстати?

https://www.researchgate.net/publication/306112816_Shenandoah_An_open-source_concurrent_compacting_garbage_collector_for_OpenJDK
> Shenandoah is an open-source region-based low-pause paral-lel and concurrent garbage collection (GC) algorithm

Я думал, что мы малые объекты конкурентно эвакуируем из одного региона в другой как раз. Или ты имел в виду поколения?
Аноним 21/10/20 Срд 04:18:26 1835874310
>>1835852
Прости, и правда он региональный без поколений, в голове чуть пермешалось
Аноним 21/10/20 Срд 08:45:45 1835935311
>>1789061 (OP)
Зачем нужен RON (Rusty Object Notation)? Без него никак не написать сериализацию данных в русте?
Аноним 21/10/20 Срд 10:57:18 1835965312
>>1835935
Затем же, зачем жабаскриптерам надо было придумывать JSON — просто похожий и приятный синтаксис.
Аноним 21/10/20 Срд 11:00:23 1835968313
>>1835965
JSON - никто специально не придумывал оттого он такой убогий. Просто придумали как передавать данные так, чтобы в жопаскрипте одним eval можно было из строки получить объект.
Аноним 21/10/20 Срд 11:14:57 1835974314
>>1835968
> одним eval можно было из строки получить объект.
В результате никто так не делает.
Аноним 21/10/20 Срд 11:38:24 1835982315
>>1835974
>В результате никто так не делает.
Теперь-то нет - наелись всяких эксплоитов, но когда JSON только появился других вариантов не было.
Аноним 21/10/20 Срд 13:22:36 1836078316
>>1835965
В чем принципиальное отличие RON от Serde? Ведь и тот и другой нужен для сериализации данных.
Аноним 21/10/20 Срд 13:57:26 1836100317
>>1836078
Нет.
RON — формат хранения, Serde — фреймворк для сериализации и десериализации.
Аноним 21/10/20 Срд 19:14:01 1836348318
phd.png 39Кб, 850x565
850x565
>>1835138
>Ну пилю я себе PhD, ну отъебись
Т.е. ты возможно будущий учёный, какой нибудь доктор технических наук.
Будущее светило науки, а разговариваешь как псина из подворотни. Зачем так? Почему нельзя разговаривать по человечьи? Я понимаю, когда так базарят шлюхи из вебкама или инцелы с двача, но учёный, как по мне, должен быть выше этого.

Меня это вообще сильно расстраивает. Мне всегда наука виделась чем-то большим чем человек, чем то великим. Но с течением времени, с тех пор как количество докторов и кандидатов становится всё больше — я всё больше теряю уважение к этому ремеслу (тяжелому ремеслу, я знаю это). Я думаю 90% современных учёных просто паразиты на теле общества. Никакого уважение к ним быть не должно, с них нужно так же как с чинуш спрашивать, тыкая носом в какашки. Все эти гендер стадис, заказные статьи в научных журналах, искуственное усложнение научного материала (haqreu об этом писал). При этом вы ещё более гнусные чем какие нибудь чинуши, у чинуш есть хотя бы гордость. А у вас...Я видел инфу, где в исследовании атмосферу внутри научного коллектива разных университетов сравнивали с атмосферой царящей в коллективе какого-нибудь пригородного завода. Зависить, токсичность, злорадство, паразитизм, надменность — так учёные описывали своих собственных коллег и друзей. Просто лучшие из людей, не иначе.

И вот конкретно ты — часть всего этого мусора. При этом ещё и марасишь как токсичная дегенеративная зумерка. Фу просто, фу.

мимо
Аноним 21/10/20 Срд 19:47:18 1836377319
>>1836348
>Сделано учёными
>BrainFuck
Аноним 21/10/20 Срд 19:51:34 1836381320
>>1836377
так его какой-то студент сделал
Аноним 21/10/20 Срд 23:59:30 1836549321
Screen Shot 202[...].png 634Кб, 2554x2482
2554x2482
152310871615065[...].jpg 155Кб, 1600x916
1600x916
> rust
> не всратый синтаксис
Аноним 22/10/20 Чтв 01:14:59 1836581322
>>1836549
Я недавно вкатился, на мой взгляд убого выглядят только спецификаторы лайфтаймов, вот эти все <'a>
Одиночный апостроф в коде в принципе люто странно выглядит
Остальное красиво
Аноним 22/10/20 Чтв 02:15:42 1836588323
>>1836581
Согласен. Не совсем очевидно что лайфтайм передается как type parameter. Я сначала ожидал бы там только тип, но никак не время жизни.
Аноним 22/10/20 Чтв 18:08:40 1837114324
>>1836348
Общаюсь с, возможно, тупыми двачерами на понятном им языке, а с умными - на человеческом. Не вижу никакой проблемы. Подчеркнуто вежливое общение на анонимной имиджборде вроде двача выглядит еще тупее, поверь.

> Все эти гендер стадис
При чем тут гендер стадис, если эта хрень не только не приносит пользы, но и вообще вредна? ЭТО наукой признают только окуколдившиеся мудаки.

> искуственное усложнение научного материала
Всегда будут те, кто хочет выпендриться. К счастью, большинство известных мне компетентных ученых такой фигней не страдает.

> Я видел инфу
Ну-ка, покажи, пожалуйста, где ты видел ту инфу? Сослался - пруфани.

Еще ты требуешь от людей соответствия не профессии, а твоему внутреннему представлению об этики этой профессии, что, мягко говоря, странно. Никто не обязан следовать твоим представлениям. Вот никто и никак. Смирись. Я бы понял, если бы в другое время с меня такое требовали, но на анонимной борде, где нахуй посылают просто за то, что ты есть - ???

Про 90% паразитов практически согласен, многие не знают, зачем им PhD и делают в итоге мусорные исследования, переводят на это время и ресурсы, в том числе и интеллектуальные. Тоже вредительство. С другой стороны, если мы позволим кому-то определять полезность исследования, то окажемся заложниками представления этого "надзирателя" о пользе. В каком-то смысле это происходит через индекс Хирша.

Кстати, открою тебе такой секрет: иногда матом можно довольно коротко и ясно донести до человека то, что "нормальным" языком доносилось бы сильно подольше. Банально потому, что мозг не тратит ресурсы на парсинг всей этой мишуры и сразу работает над идеей. Согласись, фраза "хуйни калмана" звучит короче и понятнее, чем "пропусти это через фильтр Калмана". Во второй фразе слов больше при том же смысле.
Аноним 22/10/20 Чтв 19:41:08 1837190325
Facebook is looking to hire compiler and library engineers to work on @rustlang
. Rust is taking off within FB, and we'd like to work with the community. Remote work from within the U.S. is possible. U.S. work permit required.

We'll be working on the whole stack. From frontend, to codegen, libraries and tools, to make sure that Rust is able to handle the massive Facebook scale. I know of specific bugs and issues, but we don't have a clear roadmap yet.

https://twitter.com/nadavrot/status/1319003839018614784
Аноним 22/10/20 Чтв 19:42:49 1837191326
Аноним 22/10/20 Чтв 19:44:25 1837192327
Аноним 22/10/20 Чтв 19:45:08 1837193328
>>1837190

На собеседовании все равно будешь крутить деревья и вертеть массивы на доске или в блокноте, ну и литкод хард дадут за 5 минут решить
Аноним 22/10/20 Чтв 19:46:07 1837194329
>>1837193
Дык нахуй фейсбук. Главное что они будут конпелятор допиливать.
Аноним 22/10/20 Чтв 20:45:25 1837220330
народ государст[...].mp4 6825Кб, 720x720, 00:01:16
720x720
>>1837114
> Кстати, открою тебе такой секрет
Экспрессивное использование языка не то же самое, что брань или ругань.

>Ну-ка, покажи, пожалуйста, где ты видел ту инфу? Сослался - пруфани.
Ну, например, вот:
https://www.semanticscholar.org/paper/Destructive-conflict-and-bullying-at-work-Hoel-Cooper/ https://link.springer.com/article/10.1007/s10672-012-9193-7
https://www.tandfonline.com/doi/abs/10.2753/ATP1084-1806320103
По схожим запросам можно найти ещё.

>Подчеркнуто вежливое общение на анонимной имиджборде вроде двача выглядит еще тупее, поверь
Что значит "поверь"? Я вообще-то тоже тут сижу. Даже на анонимной борде вежливое общение вызывает уважение. Когда два анона спорят и один скатывается к "ха, я тваю мамку ебал" — без судей понятно кто победил в дискуссии.

> С другой стороны, если мы позволим кому-то определять полезность исследования
Нам не нужно определять "полезность" исследований. Я ни слова не сказал про "полезность". Достаточно просто не врать, не фальсифицировать статьи, не подгонять статистику под свои манямиры и конъюнктуру. Сейчас же - от десятой до трети всех исследований (по разным оценкам) - фейк. Причём среди разных наук, в том числе и точных.
Я уже молчу про то, что многие из них просто не читаются, не перепроверяются и потенциальные ошибки в них не ищут. Вот, наугад:
https://onlinelibrary.wiley.com/doi/abs/10.1111/ecoj.12461 https://www.semanticscholar.org/paper/Publication-Bias%3A-The-%22File-Drawer%22-Problem-in-Scargle/ad265c494be00224f1d10a14684b2dce331efc01 https://science.sciencemag.org/content/342/6154/60.full https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2586872/
А бесконечные россиянские кандидатские и докторские? Их кто нибудь читает, вычитывает?

>При чем тут гендер стадис, если эта хрень не только не приносит пользы, но и вообще вредна?
Здорово...

>Никто не обязан следовать твоим представлениям. Вот никто и никак. Смирись.
...А потом ты начинаешь разговаривать как обычная феминистка. "Моё тело — моё дело! Я ничем и никому не обязана!".

Тот факт, что ты считаешь, что никто не может призывать тебя к соблюдению принятой в обществе этики твой профессии — говорит о том, что ОНИ побеждают. Но наше общество ещё не настолько деграднуло. Поэтому когда дело касается врача или полицейского — всё общество в единой порыве требует от них соблюдения этических правил. Врачей даже заставляют принимать полурелигиозную клятву врача (на основе клятвы Гиппократа, которой бог знает сколько лет). Потому что никому не хочется, находясь при смерти, слышать хамство, грубость и "отъебись".

Но чем дальше от тела, чем меньше мы чувствуем связь, чем меньше мы чувствуем значимость и влияния друг на друга — тем больше эти границы размываются. Тут и вылезают левые постмодернисты...Которые никому и ничего не должны, которые не собираются соответствовать твоим ожиданиям и представлениям, которые начхать хотели на твоё мнение и твои взгляды. Заметь как эта идея стремительно растёт в обществе. И чем больше человек развращён — тем больше он "никому и ничего не должен". От фемок и sjw до политиканов и мажоров. Эта идея пожирает людей. И именно поэтому "вредных" гендер стадис — будет становится больше, врач в больнице будет смотреть на тебя как на говно, а коп дубасить палкой. Смирись.
Аноним 22/10/20 Чтв 21:17:04 1837234331
image.png 24Кб, 176x277
176x277
Вот это пасты вы тут пишите
и не лень ведь
Аноним 22/10/20 Чтв 22:38:49 1837284332
>>1837234
Да просто интеллигенция местная наехала на быдлоPhD из мухосранского рогатника. Лучше бы Rust обсуждали.
Аноним 22/10/20 Чтв 23:22:03 1837326333
9rxmda3iunu51.png 320Кб, 500x564
500x564
>>1837190
The Developer Division at Microsoft is responsible for supporting many of the company's largest product and service groups. We are looking for engineers to work on Rust compilers and tools to support the usage of the Rust programming language.

Contribute to the design and implementation of Rust compiler front-ends, back-ends, analysis tools

https://careers.microsoft.com/us/en/job/917051/Senior-Software-Engineer
Аноним 22/10/20 Чтв 23:29:12 1837331334
>>1837284
Ну, что я быдло я и не отрицаю но позволить себе подобное могу только на анонимной борде, да, но уж больно странная аргументация у анона, нет, ну правда. Мне кинули ответку про говно, я попросил отъебаться, а тут этот анон решил, что докопаться нужно именно до меня. Ну не дает ему покоя, что я на анонимной борде позволяю себе послать человека, который в забавной форме послал меня. Ну окей. Удачи в этом, все дела.

А что раст нужно здесь обсуждать - это да, поэтому больше сюда по оффтопу отписывать не буду, да и анону выше не советую.

Собственно, у меня и вопрос: битовые поля как в си в расте чем лучше имитировать? Очень надо.
Аноним 22/10/20 Чтв 23:32:52 1837333335
Аноним 22/10/20 Чтв 23:40:13 1837341336
>>1837331
Слился, значит? Ну твоё право, конечно. Тебе с этим жить.
Аноним 22/10/20 Чтв 23:52:51 1837351337
Аноним 23/10/20 Птн 10:37:04 1837541338
Аноним 23/10/20 Птн 11:06:40 1837555339
> WHY CAN'T I DO THISW IN RUST?!!
> voidx
Ой а что имеется в виду? Неопределенных типов типа auto какого нибудь

Если что мимопрограммист на с/с++/js имевший некоторый опыт со swift в котором вроде как есть тип Any что как бы заменяет voidx
Аноним 23/10/20 Птн 12:03:41 1837580340
>>1837555
>Неопределенных типов типа auto какого нибудь
Это называется вывод типов, всё там определено.

>на с/с++/js
Судя по вопросу, опыт у тебя есть только с жс.

>опыт со swift в котором вроде как есть тип Any что как бы заменяет voidx
Никак не заменяет, Any — это обёрточный тип хранящий метаинфу о том, что в нём лежит (и несущий соответственные накладные расходы), а void* — это тупо сырой указатель (просто адрес на начало куска памяти), аналогом которого является OpaquePointer в свифте и std::ffi::c_void в расте.
Аноним 23/10/20 Птн 13:55:55 1837644341
>>1837580
> просто адрес на начало куска памяти
Уважаемый господин программист, давай не будем языковую семантику приплетать к работе железа, в каком нибудь эльбрусе например указатели представлены отдельным типом от данных, и передавая voidx ты передаешь не адрес на начало где то в памяти а полноценную информацию о куске памяти с данными или процедурой, просто потому что железо так устроено а высокоуровневый язык позволяет абстрагироваться от всей вот этой хуйни.

Так что давай говорить о конкретных вещах - например об объектах (экземплярах класса) со своими типизированными полями и виртуальными функциями, как в плюсах например запихать разные объекты в массив или передавать их функциям? - или превратить в указатель на непонятное нечто (voidx) или наследовать от некоего общего ( возможно абстрактного) класса:

class Any
{
private:
uint8_t type;
public:
Any(t) { type = t; };
~Any() {};
}

class MyObject : public Any
{
private:
int a, b;
public:
MyObject(int arg1, int arg2) : Any(0)
{
a = arg1; b = arg2;
};
~MyObject() {};
}

int myFoo(Anyx obj) {
switch(obj->type) {
case 0:
return (MyObject x)(obj)->a + (MyObjec tx)(obj)->b;
// ...
}
}

Вот и вся твоя мета информация, в случае просто передачи voidx компилятор не может сразу назначить грузить определенные поля типа type, как в моем примере. А идея таких языков как раст или го (свиф вроде как jvm язык), в том чтобы избавится от malloc() и free() / destroy(), и оверхэд там связан только с рантайм библиотекой которая контролирует это дело, а не какими не метатипами. Нахрена тогда вообще язык типизированный, в том же джаваскрипте джит компилятор во время исполнения по входным аргументам определяет для каких типов функции / инструкции подставлять, но на то он и динамический язык.
Аноним 23/10/20 Птн 15:35:38 1837733342
>>1837644
>в каком нибудь эльбрусе например указатели представлены отдельным типом от данных
Мне лень лезть и смотреть чего там придумали, хоть я и рад за прогрессивных разработчиков эльбруса, но когда его будут использовать, тогда и приходите.

>return (MyObject x)(obj)->a + (MyObjec tx)(obj)->b;
Поздравляю, ты только наговнокодил так, что:
а) это нереально расширять и поддерживать, а искать креши и битые данные после даже минимального рефакторинга будешь месяцами;
б) вырубил все возможные оптимизации компилятра;
в) а ввиду отсутствия прошлого пункта, без жирного гц в стиле жавы/дотнета, который бы дефрагментировал кучу и собирал такое поплотнее — максимально не cache-friendly код, который оказавшись в горячей точке будет дрочить память а не работать.
г) хоть это и пример, но даже в нём деструктор MyObject в 2/3 случаев тупо не будет вызываться и ты получишь 30 гб хипа ой)0

>Вот и вся твоя мета информация
Дружочек, ты обосрался. Раз уж тебе так нравится аппелировать к свифту, то давай посмотрим, как же вся метаинформация вмещается в 1 байт (у тебя в программе как полагается настоящему хэловорду же не может быть больше 255 типов, кекус):
https://ideone.com/7IoQmE
>T size: 4
>Any size: 32
https://godbolt.org/z/8Keoaz
Внезапна-внезапна, вытерев ноги об систему типов ты заставил компилятор забоксить значение (выделив память в куче, получив x2 размер объекта и как минимум ещё место под счетчик ссылок, которого нет в сырой структуре), а так же получил оверхед по памяти аж целых 3 указателя — на а) таблицу с конструкторами/деструкторами, б) виртуальную таблицу, в) таблицу типов (в которой хранятся: имена всех переменных и самого типа, как и в любом языке с рефлексией, а не 1 ебучий байт). Короче, получил полноценный жопаскрипт, всё как ты хотел.

>и оверхэд там связан только с рантайм библиотекой которая контролирует это дело, а не какими не метатипами
Он вообще появляется только когда в дело вступают жс-макакены вроде тебя, что я выше уже расписал. Система типов на то и нужна, чтобы существовать в компайл тайме в первую очередь.

>Нахрена тогда вообще язык типизированный
Чтобы юзать типы и писать код, который не будет жрать все ресурсы как тварь на ебучей статичной страничке с 2мя картинками и текстом.

> в том же джаваскрипте джит компилятор во время исполнения
А нахуя тратить ресурсы во время исполнения если можно сделать это на этапе компиляции? Да и покрывать тестами каждый пук не надо, лол.
Аноним 23/10/20 Птн 18:28:58 1837886343
>>1837733
Хуя подрыв
> Система типов на то и нужна, чтобы существовать в компайл тайме
> Чтобы юзать типы и писать код, который не будет жрать все ресурсы
а voidx это какой тип, не подскажешь?
> А нахуя тратить ресурсы во время исполнения если можно сделать это на этапе компиляции?
Что бы по максимуму использовать аппаратные возможности конкретного процессора на котором код запускают, это как один из вариантов, так же портабельность и типо-безопасность в рантайме, а не только на этапе компиляции
>T size: 4
>Any size: 32
Там в ассемблере эти числа литералами забиты, что как раз и показывает что компилятор в компаилтайме опираясь на известные типы все это посчитал, чего с указателем в принципе нельзя сделать. Но это хуйня так как указатель на реальный объект там все равно есть но так же там есть информация например для сравнения типов чего в сыром указателе нет, зато есть в типичных сишных структурах в которых тыкают поля для указателя на функцию, указателя на другую структуру или указатели на кучу. Так что к чему твой перфоманс с кодом я не понял, зато понял что ты лицемерное пиздло серящее на веб при этом используя его ресурсы для компиляции и вывода результата, а не свой локальный компьютер.
Аноним 23/10/20 Птн 20:04:56 1837979344
sky.jpg 20Кб, 795x445
795x445
Сегодня мы выпускаем очень раннюю версию rust-gpu - новый проект, призванный сделать Rust первоклассным языком и экосистемой для кода GPU!

Программирование на GPU исторически выполнялось с помощью HLSL или GLSL, простых языков программирования, которые развивались вместе с API рендеринга на протяжении многих лет. Однако по мере развития игровых движков эти языки не смогли предоставить механизмы для работы с большими кодовыми базами и, как правило, отставали от кривой по сравнению с другими языками программирования.

В этом проекте мы надеемся, что мы продвинем отрасль вперед, добавив в GPU Rust, существующий низкоуровневый, безопасный и высокопроизводительный язык. И вместе с этим появляются некоторые дополнительные преимущества: система пакетов / модулей, которая является одной из лучших в отрасли, построенная с защитой от условий гонки или доступа к памяти за пределами границ, широкий спектр библиотек и инструментов для улучшения рабочих процессов программистов и многое другое. !

https://github.com/EmbarkStudios/rust-gpu/releases/tag/v0.1

C++, СОСАТЬ!
Аноним 23/10/20 Птн 20:16:16 1837993345
1.jpg 32Кб, 400x400
400x400
2.png 17Кб, 598x151
598x151
3.png 24Кб, 864x208
864x208
>>1837979
Rust действительно для для особенных людей.

Авторша сабжа @khyperia:
> одна из многих причин, по которым я присоединился к @EmbarkStudios было то, что я устал от того, что почти никогда не работал с меньшинствами или даже с людьми, которые были похожи на меня ... и теперь есть абсолютная группа трансгендеров, работающих со мной над rust-gpu, и это потрясающе
Аноним 23/10/20 Птн 21:03:16 1838034346
>>1837993
>Гы-гы, смотрите, гомик пацаны, гомик
Аноним 23/10/20 Птн 21:17:21 1838052347
>>1838034
Не гомик, а мать твоя членодевка
Аноним 23/10/20 Птн 21:37:29 1838071348
>>1837993
Хипстеры-педики не способны написать ничего толкового.
Толи дело раньше, пара боевых пидарасов написала целый sendmail
Аноним 23/10/20 Птн 22:05:21 1838090349
>>1838034
Не проецируй.

>>1838071
К геям нормально отношусь, пидоров не перевариваю. Откуда такая тяга у всех растаманов продвигать свои анальные радости?
Аноним 26/10/20 Пнд 14:30:21 1840085350
>>1789061 (OP)
Парни, всем ку. У кого-то осталось фото рабочего стола который постили в треде, или в шапку расто тредов. Там такое ламповое рабочее место, мышка логитеч вертикальная и повернутый монитор. Мб у кого осталось?
Аноним 26/10/20 Пнд 14:30:47 1840086351
>>1840085
а, тут последний пост 3 дня назад. Жаль
Аноним 26/10/20 Пнд 14:40:18 1840094352
>>1840085
Можно в архивах попробовать поискать, но там не всегда грузятся картинки.
Аноним 27/10/20 Втр 04:16:48 1840666353
>>1837993
Откуда они, сука, все повылазили, пидорасы...
Аноним 27/10/20 Втр 14:45:17 1840955354
image.png 78Кб, 741x620
741x620
image.png 70Кб, 721x612
721x612
image.png 13Кб, 1172x32
1172x32
Аноны, докладываю уровень пиздеца. Делаю яху-граббер по типу гвидоновского yfinance , в частности https://github.com/ranaroussi/yfinance/blob/6e52c83d9affc7a8a6a209f83d7482c64b24d67b/yfinance/utils.py#L45

tokio, reqwest, serde, хуйня-малафья.

Дак вот. Пик1 (с записью в файло) - работает, пик2 (запись закомменчена) - нет.

То есть, оно, сука, асинхронно кормит строку serde, и не успевает раньше, чем serde обнаруживает недостачу поля.
Аноним 27/10/20 Втр 17:27:30 1841156355
>>1840955
Так убери async из определения функции блять, или используй комплитеры какие нибудь внутри функции.
Аноним 27/10/20 Втр 18:47:26 1841250356
>>1841156
>>1840955
Фу, бля, отбой. Это у яху-финаху рекламные новости идут без поля pubtime, причём реклама эта то есть, то её нет. Мне повезло несколько раз подряд проскочить мимо неё именно когда я решил сохранять выхлоп для дебага.
Аноним 27/10/20 Втр 20:43:27 1841359357
>>1841250
Получается не такая уж и хуйня serde? Помогла тебе поймать баг?
Аноним 28/10/20 Срд 07:41:36 1841742358
А напомните я чет подзабыл эти новомодные фишечки

let baz = foo?.bar // - если foo будет null, то цепочка чтений на ней и закончится без исключений а baz == null и его дальше надо тоже ставить с проверкой fn1( bar: baz? ) например

let baz = foo!.bar // - если foo будет null, то выполнение в этом месте остановится

так?
Аноним 28/10/20 Срд 10:32:37 1841835359
Аноним 28/10/20 Срд 11:05:47 1841868360
>>1841835
Не закончит программу, а вернёт ошибку из функции. Это охуительно разные вещи. Вот `unwrap` закончит программу с паникой.
Аноним 28/10/20 Срд 11:10:04 1841869361
>>1841868
Точнее, развернёт стэк до старта треда или до первого `catch_unwind`, но для мейн треда без `catch_unwind` это закончит программу.
Аноним 28/10/20 Срд 18:07:50 1842193362
Ананасы, а можно ли провернуть такое:
чтобы прямые зависимости моей приложухи собирались как динамические so-шки? Ну типа, чтобы в release/ валялись отдельно my-app и отдельно hyper.so, serde.so и т.д ?

не поверите, но настолько хуёвый инторнет
Аноним 30/10/20 Птн 17:03:08 1843920363
>>1842193
Очень сложно и где-то рядом там ходит UB. Проще заставить конечных юзеров скачать раст и собрать у них на компе.
Аноним 31/10/20 Суб 07:43:15 1844605364
>>1843920
Конечный юзер, это слабенькая виртуалка где-то в дойчлянде, сборку она не потянет. У меня рядом какая-то стройка, из-за неё, видимо, оборудование оператора эпизодически подташнивает и оно теряет пакеты - закачать через scp цельный кусок на 7Mb становится проблемой. Уже подумываю поднять ftp сервер с докачкой или разбивать файл на куски архиватором.
Аноним 31/10/20 Суб 20:02:36 1845111365
Анон. Вот скажи мне, если closure является по сути сахаром для структуры, а переменные которые closure использует это поля это структуры. То как так получается, что эта структура не захватывает переменные из окружения в свои поля, и при это не делает memcpy?
Аноним 31/10/20 Суб 20:04:09 1845112366
>>1845111
Уточню, что под переменными которые она использует, я имею ввиду родительское окружение а не аргументы.
Аноним 31/10/20 Суб 21:10:45 1845143367
>>1845112
Полноценное замыкание не выделяет память и не копирует туда значения переменных? Папрашу вас
Аноним 31/10/20 Суб 21:23:44 1845150368
Аноним 31/10/20 Суб 22:16:46 1845169369
>>1845150
Ссылки на стек, который поп и всё?
Аноним 31/10/20 Суб 22:32:12 1845181370
>>1845143
Что значит полноценное? https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=522be7edde68a85b72441afc8c7b60b2
В данном случае замыкание не полноценное?

>>1845150
https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=b0eb34288b37dcf02824a0cb5a965a23

Вот в данном примере. Если s1 у нас ссылка, то почему код требует явного референса над s1?
Аноним 31/10/20 Суб 22:32:32 1845182371
>>1845181
Я наверное где-то проебался. Рассудите и укажите где.
Аноним 31/10/20 Суб 23:10:53 1845221372
Аноним 01/11/20 Вск 15:08:40 1845462373
>>1845111
Если кому-то интересно, мало ли. Раст и правда хранит внутри структуры замыкания ссылку на переменную из родительского скоупа. Вопрос мой был в том, почему внутри скоупа она доступна как объект а не как ссылка на объект. Оказалось, что раст автоматически дереференсит ее для меня. Формально приводя к тому типу объекта которым она является.
Аноним 02/11/20 Пнд 09:05:55 1845983374
>>1845221
обе эти ссылки указывают на переменную с1, то есть на стек, в чем вопрос я так и не понял
Аноним 02/11/20 Пнд 09:46:44 1846014375
Напомните, как в расте сделаны escaping closures.
Аноним 02/11/20 Пнд 09:57:58 1846022376
>>1846014
>escaping closures
Какая-то swift-only костыльная хуйня, нужная для поддержания плохо сшитых by-design штанов. Ты бы ещё аналог оператора GOTO попросил.
Аноним 02/11/20 Пнд 11:14:08 1846061377
>>1846022
Эти штаны называются reference counting по умолчанию, лол.

>>1846014
Никак, в расте и других языках без RC (или с RC где для разруливания циклических ссылок и always strong ссылок из замыканий используется как в GC вроде kotlin native/nim/python) нет необходимости в них.
Аноним 02/11/20 Пнд 11:14:47 1846063378
>>1846061
>используется GC как в kotlin native/nim/python*
Аноним 03/11/20 Втр 15:20:21 1847162379
>>1846014
Если я правильно понял суть, то создаешь лямбду через move ||. Переменные захватываются по значению и их можно гонять туда-сюда.
Аноним 04/11/20 Срд 23:52:16 1848336380
>>1847162
Нет, не понял. В расте этой хуйни просто нет, потому что лайфтаймы анализируются в компайлтайме и оно тут не нужно.

Оно есть (и нужно) только в свифте (с подсчётом ссылок в рантайме), это такой недокостыль на уровне системы типов, чтобы заставить нюфагов поменьше плодить утечки памяти и не вставлять в язык ещё и гц для таких кеков.
Аноним 05/11/20 Чтв 12:28:01 1848544381
Раст не даст вернуть из функции замыкание, если там ссылка на стековый объект, да? Ну как и паскакаль.
Аноним 05/11/20 Чтв 15:20:33 1848665382
>>1848544
Даст, но только на стек одной из предыдущих функций, на стек текущей функции не даст, да, потому что стек текущей функции зачищается на выходе из функции.
Аноним 05/11/20 Чтв 16:32:15 1848747383
Прикольно.
Аноним 06/11/20 Птн 15:18:09 1849598384
>>1848665
пример можно пожалуйста
Аноним 06/11/20 Птн 17:15:57 1849738385
Аноним 06/11/20 Птн 17:21:13 1849745386
>>1848544
>ссылка на стековый объект
Аноним 06/11/20 Птн 19:34:48 1849882387
Аноним 06/11/20 Птн 19:56:23 1849910388
Аноним 06/11/20 Птн 22:51:12 1850070389
>>1849598
fn foo(x: &i32) -> &i32 { x }

fn main() {
let a = 5;
let b = foo(&a);
}

Здесь в `b` лежит ссылка на стековый объект, но вернулась ссылка из функции ниже по стеку. По очевидным причинам, чтобы вернуть ссылку на объект выше по стеку, надо уже иметь ссылку на этот объект, на структуру с этим объектом внутри, коллекцию со ссылками или ссылку на коллекцию.
Аноним 07/11/20 Суб 15:12:31 1850424390
>>1848544
> Раст не даст вернуть из функции замыкание, если там ссылка на стековый объект, да? Ну как и паскакаль.

>>1849738
,
let anon = "Dolboeb";
let f = |n| {
format!("{}) ", n) + anon
};
[1, 2, 3, 4 5].iter().map(f).for_each(|x| println!("{}", x));

Спасибо за релевантный пример, прям то что надо.

Аноним 07/11/20 Суб 15:14:56 1850428391
>>1850070
Нет речь шла об функции возвращающей замыкание хранящего ссылку на объект на стеке
примерно так:
|| {let a: &mut i32 = s; s+=1;}

Аноним 07/11/20 Суб 15:26:24 1850439392
>>1850428
>>1848544
Можно вот держи:


fn h() {
let mut r = 7;
h1(&mut r)();
println!("{}", r);
}
fn h1(a : &mut i32) -> impl FnOnce()->() + '_
{
let mut i = move||{*a += 1;};
i
}
Аноним 07/11/20 Суб 15:29:49 1850444393
Аноним 13/11/20 Птн 10:13:47 1854890394
Аноны, на растовакансии TR Logic кто-нибудь совался?
Я весной 2019 пробовал, но я тогда только вкатывался, меня на собесе завернули. Там же на собесе я узнал, что у них работа по Utc, что с моим +8 было бы проблематично - ну и не стал больше к ним соваться. Интересно, они бесконечно расширяются, у них текучка, или не нашли ещё тот бриллиант?
Аноним 13/11/20 Птн 15:13:44 1855096395
>>1854890
Когда в команде есть хотя бы 6-7 человек — там скорее всего уже будет текучка с текущими условиями рынка, когда можно получать x1,5-2 к своей текущей з/п каждый год, если ты не отбитый даун из треда вкатышей.

Алсо, могут как не испытывать нужды в кандидате (и просто собеседовать на похуй для отчетности), так и иметь кучу бабла и хотеть ускорить процесс разработки. А ещё могут просто базу собирать чтобы потом её продавать и спамить тем кто в неё попал.
Аноним 13/11/20 Птн 21:20:35 1855464396
>>1855096
Ну, ёпт. Это всё гадания, но неужели никто, кроме меня, не сталкивался? Их вакансия по расту с удалёнкой стабильно висит уже второй год, других-то и нет почти.
Аноним 15/11/20 Вск 10:28:30 1856558397
>>1855464
Пидарки-хрюши отрабатывают команду директора "мы никого не ищем, нам никто не нужен, но если увижу что вы без дела сидите-хуй сосать немытый заставлю".
В итоге сосёшь ты хуй эйчарок.
Аноним 16/11/20 Пнд 03:46:10 1857334398
>>1854890
Делали офер, но потом рассказали про анальные условия работы:
Скриншотишь свой экран раз в 30 секунд и в конце рабочего дня отправляешь им архив. Отсутствие на рабочем месте -- штрафы в геом прогрессии. Очевидно такая вакансия будет хоть 10 лет висеть.
Аноним 16/11/20 Пнд 20:55:03 1857933399
Наслушался про ваш раст ебучий, а тут как раз понадобилось написать сервис, генерирующий картинки на лету. Ну, думаю, ща улечу в небеса на крабе. Написал для сравнения на похапе + Amp асинхронный сервис, генерящий png 1000x1000. Выдало где-то 17 rps, думаю - фу, говно. Пишу то же самое на расте - и эта скотина мне полторы секунды такую же картинку генерит через image-rs! Как так-то? Неужели нормальных быстрых конверторов для картинок не завезли? Завтра буду еще биндинги к ImageMagick пробовать, конечно, но чот ппц.
Аноним 16/11/20 Пнд 20:58:13 1857935400
>>1857933
Ты не забыл собрать в --release?
Аноним 16/11/20 Пнд 21:03:04 1857937401
>>1857935
В релиз не собирал, но неужели такая разница? Простой текст эта шняга отдавала под 40 rps в дебаг-режиме, я уже собирался кончить радугой - и такой облом
Аноним 16/11/20 Пнд 21:03:53 1857938402
>>1857937
Попробуй, сравни и расскажешь.
Аноним 16/11/20 Пнд 21:11:34 1857947403
>>1857937
Разница ебическая обычно, особенно во всем что связано с графикой.
Аноним 16/11/20 Пнд 21:22:47 1857958404
>>1857938
Охуеть, выдало 285 rps. Спасибо, растаны, возвращаете мне веру в человечество!
Аноним 19/11/20 Чтв 22:46:45 1860514405
Решил вкатиться в раст. Что-то пиздец как непросто. Даже когда на перле работал и только изучал, то не был таких потуг. Там в основном пугал синтаксис и его дефолтные переменные.
Решил в pr глянуть. Полтреда срачи на тему вим классный/вим хуита для нитаких, из раста уходят разрабы и языку пизда. И как-то вообще желание пропало учить его.
Аноним 19/11/20 Чтв 23:57:52 1860555406
>>1860514
Ну и не учи, в чем проблемы-то?
Аноним 20/11/20 Птн 08:43:45 1860759407
>>1860514
>И как-то вообще желание пропало учить его.
У меня постояно такое
Начинал плюсы, начали появляться навязчивые мысли что он мертворожден
Аналогично с растом

мы поехавшие, сопротивляйся этому
Аноним 20/11/20 Птн 10:56:55 1860831408
>>1860514
Послушай лекции Кладова, он параллельно объясняет почему Раст такой охуенный и нужный
Аноним 20/11/20 Птн 11:58:49 1860918409
Аноним 20/11/20 Птн 12:22:53 1860936410
>>1860918
Буквально первая ссылка в гугле

мимо
Аноним 20/11/20 Птн 12:24:21 1860937411
>>1860759
Да, вот есть такое ощущение, что через год раст ТОЧНО ВСЁ!
Да вряд ли он умрет, если только вдруг новые мейнтейнеры не загнут его. Ну вот, опять началось
Аноним 20/11/20 Птн 12:31:36 1860941412
>>1860937
После мозиловских увольнений даже серво кто-то себе под крыло взял. Раст уж точно найдёт куда примкнуть.
Аноним 21/11/20 Суб 02:02:37 1861576413
>>1860941
Можно свой фонд организовать, как у пистона
Аноним 21/11/20 Суб 12:41:29 1861818414
>>1804749
>В Хачкеле асинхронность типа совсем прозрачная, т.к. всё ранится в IO и отдельная async-монадка не нужна
>async-монадка через async/await
>Насколько это монадка и насколько хорошо она играет с растовскими правилами владения
Для начала тебе нужно понять что такое монада
Аноним 22/11/20 Вск 11:03:07 1862561415
>>1860941
Эксперимент, видимо, закончен.
Самое забавное, тонну времени назад, тут бегали шизики, которые говорили что на таких началах раст захлебнется. Только тогда говорили что проблема не в сжв, а хипстерах.
Аноним 22/11/20 Вск 12:29:56 1862622416
Скажу честно, когда появился Rust я выдохнул с облегчением. Наконец-то Ruby перестал быть самым гейским ЯП.
Аноним 22/11/20 Вск 12:43:38 1862643417
>>1862622
А как же свифт и жс?
Аноним 22/11/20 Вск 13:03:24 1862664418
javascript2.jpg 482Кб, 750x500
750x500
Аноним 22/11/20 Вск 13:04:01 1862665419
Аноним 22/11/20 Вск 13:04:51 1862668420
>>1862665
>Жс это скорее панки
лолчто
Аноним 22/11/20 Вск 21:31:54 1863134421
unnamed.jpg 48Кб, 415x512
415x512
>>1862664
>>1862665
На пике очевидные плюсовики. А тонкая пост-постироничная шутейка как бы отдаёт дань уважения пикрил.
Аноним 23/11/20 Пнд 22:08:57 1864080422
Так что случилось с растом, создали фонд или все ливнули?
Аноним 23/11/20 Пнд 22:23:03 1864098423
IMG202011232122[...].jpg 145Кб, 1145x1280
1145x1280
Аноним 24/11/20 Втр 05:26:08 1864267424
>>1857933
>генерящий png 1000x1000. Выдало где-то 17 rps, думаю - фу, говно.
Изучил я значит этот вопрос, возможно на пыхе хуйово оптимизирован пнг енкодер. Нужно было попробовать отключить компрессию. Сделал то же самое на пщ, с включенной компрессией 1000х1000 - выдало 15 rps. Если её выключить выходит 170-200 на разных машинах. А если ещё и использовать более оптимизированные алгоритмы то станет ещё лучше.
Аноним 24/11/20 Втр 09:30:07 1864321425
>>1864267
А на расте-то с компрессией или нет?
Алсоу, ты уж засеки вчистую, сколько микросекунд занимает собственно генерация одной картинки в один поток.
Аноним 24/11/20 Втр 12:56:04 1864415426
14 постов за 14 дня. Лучше не делайте перекат. Тред мертв. Яызк тоже
Аноним 24/11/20 Втр 13:32:35 1864443427
>>1864415
Каждый тред одно и тоже...
Странный ты конечно человек
Аноним 24/11/20 Втр 15:35:13 1864532428
>>1864321
Да хуй знает что там в расте, я просто мимо проходил. Чтобы сгенерить одну пнг вышло 3.693 [ms] (mean). Кстати нашел ещё один bottleneck, попробуй в пыхе оптимизировать рандомную генерацию байтов. В моем случае го это ускорило с 32.301 [ms] до 3.543 [ms] (per request).
Аноним 26/11/20 Чтв 19:36:15 1866339429