Это копия, сохраненная 28 октября 2022 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Rust — невероятно быстрый язык для системного программирования без segfault'ов и с гарантиями потокобезопасности.
Ссылка на официальный сайт: https://www.rust-lang.org/
В этом ИТТ мы можем объяснить базовые и продвинутые концепции языка, и программирования в целом, поможем вкатывающимся, подскажем что выбрать для веба, игр или, прости Абу, блокчейна.
IDE для Rust: https://areweideyet.com/
GUI для Rust: http://www.areweguiyet.com/
Web для Rust: https://www.arewewebyet.org/
GayDev для Rust: https://arewegameyet.rs/
Что еще есть для Rust?
- Посмотри сам: https://wiki.mozilla.org/Areweyet
Основная литература:
Rust Book(версия на русском языке): https://doc.rust-lang.ru/book/
Rust Book: https://doc.rust-lang.org/book/
Rust by Example: https://doc.rust-lang.org/rust-by-example/
The Rustonomicon(для продвинутых анонов): https://doc.rust-lang.org/nomicon/
Programming Rust: https://www.oreilly.com/library/view/programming-rust/9781491927274/
Ресурсы на русском:
https://rust-lang.ru/
Отдельное спасибо автору этого гитхаба(старому ОПу). Здесь вы сможете найти много полезной информации: https://gist.github.com/TatriX/183c816f1346d418f969c4576c2b9b41
Предыдущий: >>2286737 (OP)
Бекенд, всякую залупу для эфира
Мы же ведь по одну сторону баррикад сидим, вопрос должен стоять Go/Rust/C/C++ vs Python/Java/C#, никак не Go vs Rust vs C/C++.
Go разраб
думал ты скажешь, максимум на что может рассчитывать Go это CS:GO...
Не обращай внимание, он хуйню написал, еще и шарпы с джавой приравнял к пистону, ну охуеть теперь.
Я вот не вижу причин использовать раст в серьезных продуктах, да и не использую, но вот петпроекты на нем люблю писать. Почему так? Вот просто можно было забить на этот язык, но он чем-то зацепил, сука. Или меня машина пропаганды промыла знатно.38
>2373779
Есть теория что это все попильный язык, если так, то ничего не выйдет, если разогнать это "осиное гнездо", то оно сольет язык, который и так не очень популярен.
Не уверен что вообще в продакшен нужно тащить экзотику, но за развитием стоит посмотреть, так как за 6 лет после релиза они не сделали "нехера".
это просто выглядит неприятно
и это наверно и будет причиной смерти раста в будущем
любому си стайл кодеру смотреть на такой код чисто эстетически неприятно
так что раст ступенька к лучшему будущему, которую надо пережить
Мнение ПТУшников не спрашивали. Блядь, как же вы заебали своим нытьем про синтаксис. Всем похуй на синтаксис, понимаешь? Решает семантика, а какой там синтаксис вообще поебать. Если тебе нет, то вместо нытья придумай свой синтаксис и напиши транслятор в раст аля https://en.wikipedia.org/wiki/CoffeeScript или что там тебе больше нравится.
мимо крокодил
Ты для начала запусти cargo clippy и погляди что он тебе предложит изменить в этом месте
Ты из джавы?
В джаве тоже норма по десять ретурнов из метода хуярить.
А вот таких сигнатур в джаве не было.
мимо
пока я твердо уверен, что у вас это не так работает, как мне описали
- билд система и пэкедж менеджер едины
- единая структура проектов
- нету миллион версий разных компиляторов
> почему в тех же плюсах этого нет
в плюсах даже если нормальную систему сборки кто то запилит с нуля, то вся индустрия все равно еще лет 10 на симейке сидеть продолжит
Какие книги по Rust (либо видеокурсы) мне пройти, чтобы от человека, который ничего не понимает в программировании дойти до разработчика криптовалюты на собственном блокчейне?
TAOCP
>Я - полный ноль в программировании.
Тебе будет очень сложно вкатится в rust, бери https://doc.rust-lang.ru/book/ и пробуй что-то писать
То что функция должна каким-то местом знать о времени жизни вне себя, это уже теоретический абсурд для структурного программирования.
>дискорде сидят
Лол, еще пару лет назад ит-баранчики сидели все в телеге. Я за вами модными и молодежными не поспеваю. лучше бы так инструменты на раст пилили, как по чатам носитесь
Почему?
кто в твоём линуксе только не побывал
> Stats Overview
> 11,834 Downloads all time
> 78 Versions published
Мда уж, как можно пользоваться этим языком
Да, Книга написана не для домохозяек, но наверняка ведь есть литра с азами, не?
Вообще, как по мне, отсутствие большой кнопки "книга для вкатывальщиков" на официальном сайте большая проблема, ибо язык пропагандируется как инструмент, в котором всё нужное есть официально, без левого говна. Отсутствие гайда по вкату для лахов и дитей - какой-то странный проёб маркетинга.
Ты попробуй полноценный софт написать на нем и покрыть его тестами, если раньше не писал на каких-нибудь сях говлангах, то мягко говоря охуеешь. В книге тебя учат 2+2 складывать.
Ты тоже станешь старым, но тупым быть не перестанешь.
Забавно насколько отупела индустрия, слушал с десяток мнений, в том числе из тытрубы, мол какой замечательный и продуманный раст в сравнение с С++, Go, другойКакой-тоЖопой. Но весь вывод этих сеньеров-помидоров сводился к маркетинговый пасте и беглому хеллоу вордам.
Да любой язык простой в рамках примитивов вида циклов, условий и каких-то коллекций, а ты попробуй что-то настоящие современное на этом покодить. The Rust Book кусок ленивого высранного ели как - говна. Который подходит только для беглого ознакомления, чтобы потом сидеть пирдеть на подкасте о том какой он элегантный и простой. Ничего глубокого и реально нужного для применение в проде нет.
Как и любая книга. Нужно в прод - хуяришь редкие методы или подключаешь говнолибу
Берешь гитхлам, ставишь фильтр от 1000 звезд и офегиваешь от того, что всеми забытый го за 10 лет догнал уже по числу либ жабу.
Звучит как на панель
И почему мне на Линукс нужно какой-то cargo тащить на 300МБ, чтобы установился rustc?
>>388476
https://rustmustdie.com/
Ты офигеешь, но на винде надо тащить билдер C++ от мягких, который весит гигов где-то 4 гига.
У меня на днях сдк + компилятор + тулзы (просто сдк недостаточно) вышло в 7 ГБ. Можно было поставить msys2, он очень мало весит, но это параша от красноглазых, где всё через хуй
в шапке не хватает в дополенение к https://doc.rust-lang.ru/book/ еще https://github.com/rust-lang/rustlings - цикл задач, привязан к учебнику и на практике позволяют попробовать то, что только что прочитано
Есть.
>>386669
Borrow checker. Во всех остальных языках либо ебейший пиздец и можно писать что угодно (кресты), либо сборка мусора (котлин). Со сборкой мусора жить приятно, про память не думаешь. Раст, сука, заставляет про это думать. Это пиздец сложно. Вкатывальщик естествено не хочет про это думать а хочет тип "строка".
Так что не будет там никакого гайда для лохов и детей, не тот уровень. Это как гайд по сишечке или ассемблеру для лохов и детей, лол.
>>389771
Вряд ли, крейты надо компилировать целиком как во всех языках кроме крестов, не распараллелишь. А на одной машине cargo и так параллелит по ядрам.
>Вряд ли, крейты надо компилировать целиком как во всех языках кроме крестов, не распараллелишь. А на одной машине cargo и так параллелит по ядрам.
Вот это минус пиздец для меня.
>C, C++
Управляешь памятью
>C#, Go, Java, Kotlin и прочий JVM
Сборщик мусора, выделение автоматом, про память не думаешь, ею управляет рантайм/магия/специальный индус выделяет ее для твоих переменных
>Rust
Ты постоянно думаешь про память, но не управляешь ею.
>Ты постоянно думаешь про память, но не управляешь ею.
Нет, такое происходит редко, например когда в поле структуры хранится ссылка, но и то тогда просто ставишь лайфтаймы 'a и все, в большинстве случаев. А так в большинстве случаев компилятор просто говорит где ты проебался
Ты бы еще написал:
> php, js, python
не нужно думать о типах интерпретатор все сделает за тебя
>Rust
>Ты постоянно думаешь про память, но не управляешь ею.
Насколько я понимаю (а местные фанбои не хотят объяснять) базовое владение практически работает только для хеллоу ворда, в приложение по крупнее (крупнее приложений 1980 года), приходится совокупляться с Rc, а это, по определению, сборщик мусора с подсчетом ссылок. Насколько понимаю, такое юзают и в С++ (я нет, но и много не писал), но это опционально в языке, в расте же навязано ихней же идеологией и выход в unsafe.
Но главная проблема не в этом, а в том, что язык созданных после нулевых - опять синхронный. Го, конечно, ужасен в плане дизайна, но там тебе не нужны какие-то асинки, промисы и прочая херь, для тебя асинхронность прозрачна и бесплатна в плане разработки. Во времена когда ядер много даже в телефоне, делать синхронный язык это глупо.
>Во времена когда ядер много даже в телефоне, делать синхронный язык это глупо.
Кажется кто-то опять путает асинхронность с многопоточностью
Наверное, задам платину, которая всех уже заебала, но почему папку с проектом после сборки раздувает в десятки(и даже сотни) раз? Я, конечно, понимаю, что карго докачивает некоторые либы, но они в сумме весят не более 20мб. Это обьектные файлы столько весят?
Для эксперимента я нашел +- одинаковые эмуляторы ZX Spectrum, один на расте, другой на си/плюсах. В первом случае папку с кодом раздуло до на ~495мб, а во втором всего на ~2мб. Какого хуя спрашивается? Gcc тоже обьектные файлы оставляет при сборке, но они не весят дохуя. Плюс время компиляции, примерно, раст - 1мин, си/плюсы - 10 сек. На другом проекте(neovide) у меня вообще раздуло папку до 1.9Гб после сборки. Это я еще не говорю про размеры полученного бинарника, но этот момент можно оправдать тем, что линковка в расте статическая. В нужном ли направлении мы развиваемся?
> приходится совокупляться с Rc, а это, по определению, сборщик мусора с подсчетом ссылок. Насколько понимаю, такое юзают и в С++ (я нет, но и много не писал), но это опционально в языке, в расте же навязано ихней же идеологией и выход в unsafe.
Да ты заебал блядь. Съеби отсюда нахуй, шизик.
Небомбит
Речь про классическую асинхронную модель. Число потоков равное числу ядер, а каждый поток асинхронный/конкурентный с тысячами корутин. Причем тут твоя многопоточность, когда и она прозрачна? После го, надо быть геем чтобы пилить синхронные языки.
Местные фанбои не отвечают на неудобные темы.
2 гига для лгбт хипстора видимо нормально. Вот такое вот "системное" лгбт программирование.
Базовое владение в расте - это произвольные деревья владения. Как раз 90% приложений так и работают. Как и в крестах с unique_ptr и стековыми переменными. Ничего нового
>>390478
Честно говоря хз, никогда не вникал в работу cargo, в наших проектах бинарники cargo build --release +/- адекватного размера, а чего там в остальных папках в душе не ебу, скорее всего для debug дохуя всего хранится. Ну и минус еще тут джаваскриптизерский подход к зависимостям, их реально дохуя. Для примера на небольшой проект postgres + graphql + actix + web3 при билде вылазит около 700, все они хранятся в target, которая вести 5 Гб, при этом бинарник 200 Мб
>>390235
В общем, после многочисленных обсуждений на различных форумах, пришли к выводу, что действительно сборка ВСЕХ зависимостей занимает столько места. Если на Си/плюсах используются уже скомпилированные библиотеки/пакеты без отладочных символов, то на расте вся эта ветка зависимостей компилируется целиком из исходников.
И что ты там распределенно компилировать собрался? Ну так, полюбопытствовать
Уууу, а где же ваш раст-пердаст?
Тут и спрашиваю, пидорашка.
ты бы там еще про електрон напиши что нибудь
можно сказать что просто фанатики со своей идеологией
Да там школота сидит и от всего горит, я помню как пихали systemd в бубунту там вой еще больше был, где-то к году 2020 стихло
вот это уровень треда! сразу видно куда попал!
По той же причине, почему опеннетошизы горят на растодаунов
у меня прокси дллка на плюсах в итоге занимает килобайт 30, а проект больше полу гига выжирает.
К сожалению, в ближайшие десятилетие нас ждут только попильные трансгендерные языки.
Я не успеваю за всем калом, но вроде и там умудрились высрать какую-то очередную ломающую мозг шизу, по типу не - компилиться если лишний файл в сборке (или это в другом говно высере). В общем, сейчас из-за llvm каждая макака будет клепать себе язык. кстати, увидев, что раст собирается в llvm я сразу насторожился, ибо юзанье llvm в моем узком кругу звучит как неосилятортсво. Я не эксперт, но думаю, многотонные биннарнии в расте, это следствие этого слоя абстракции и не о каком системном языке тут речи быть не может.
>многотонные биннарнии в расте, это следствие этого слоя абстракции
Это следствие статической линковки и исторических причин(все ОС и системные либы написаны на Си/Си-++). Можно отключать нужные модули и получать такой же по размеру бинарник как у Си/Си++.
>llvm
Годная тема, гугол и яблочные используют, не жалуются. Да и кодовая база дучше чем говнокод в gcc, в который новый модуль не добать без анальной эквилибристики
>трансгендерные языки.
.Если отбросить самое громкое меньшинство, то раст - вполне годный язык со своими идеями.
>Годная тема, гугол и яблочные используют, не жалуются. Да и кодовая база дучше чем говнокод в gcc, в который новый модуль не добать без анальной эквилибристики
Ничего что каждый второй проект, если вообще не подавляющее большинство, форкает llvm, т.к. не может протолкнуть свои патчи в мейнстрим из-за лютой костыльности и ежегодного ломания API?
Заебись ящетаю
И хеллоуворлд весит как в си где-то 4 килобайта, а не как в расте и компилица оче быстро, установил 40 мегабайт и поехал компилировать под другие платформы, синтаксис не слишком всратый, много преимуществ
Если не про хеллоуворлды, то вот типа такой проект выпустили из свежего bun.sh
Работает быстрее node и deno написанного на хрусте
В целом некий обзор что написано (не так много и не всё, но обзор) allyourcodebase.com
Впрочем тут не так прям чтобы цель всё переписать, а цель обеспечить и сборку существующего кода на си, лёгкость написание биндингов и так типа постепенно
https://www.youtube.com/watch?v=Gv2I7qTux7g
>>397394
Там не все так просто, с llvm повозились разными скриптами, отсылали патчи, а частично и работают над своим компилятором
opennet.ru/opennews/art.shtml?num=57031
> из-за llvm каждая макака будет клепать себе язык
Уже давно и никакой проблемы в этом нет.
> ибо юзанье llvm в моем узком кругу звучит как неосилятортсво
Въебать несколько лет и кучу денег ради того чтобы твой узкий круг одобрил?
> многотонные биннарнии в расте, это следствие этого слоя абстракции
Надо было с конца твое сообщение читать. Нет, ллвм тут ни при чём, ты совершенно не понимаешь о чём пишешь.
Чет сразу ваши жабы и шарпы вспомнил.
> try stdout.print
Что это значит? Что IO операция здесь может зафейлится? Типа рантайм не гарантирует, что не будет сегфолта при попытке вывода в консоль, например?
Насколько я понимаю исключений нет, это просто сахар для гошной боли с if...else Только вместо мультивозврата ошибок там, вроде, какой-то юнион тип возвращается и типа try извлекает если все хорошо catch если еггорка прилетла.
Мне нравится, что Zig использует подход Си/Си++ и не пытается тебе навязать что-то. Т.е. ты изначально получаешь минимально необходимое окружение и в случае надобности наращиваешь его сам, добавляя библиотеки, системы сборки и т.д, а не как в расте, когда тебе приходится идти в обратную сторону и отключать все лишнее. Проблема, конечно, немного надумана, но все же.
Еще автор топит против корпораций, что также триггерит моего маленького криптошиза внутри
Последнее время корпорации нагинают опенсорс как хотят, а вообще почти весь топовый опенсорс корпоративный. Через n-лет мы увидим искаженный опенсорс, который будет повернут в сторону корпораций и будет частично какой-то пропретарный.
Получиться уже такой попенсорс. Так что корпо-шиза это хорошо. Лучше чем лгбт.
>корпо-шиза это хорошо. Лучше чем лгбт.
Это одно и то же, лол. ЛГБТ++ хуйню как раз корпы и проталкивают.
Братишка, все ЯП - полное говно и выбираются исключительно под конкретные задачи. Нет какого-то суперязыка на котором можно писать ВСЕ. Поэтому нужно учить не языки, а программирование и конкретную область деятельности. Сам язык не очень долго учить.
Он мне показался подходящим и деняк заработать, пиля веб-сервисы, и игрули делать с караванами для души.
Зачем на полных щах быть бесплатным бета тестером очередного выпука с непонятным будущем?
Нужен честный неупрявляемый яп, есть си/с++ и тонна готового написанного за тебя миллионы говна. Для полной крутости и продуктивности бери Си (может с++) с прикрученным скриптовым языком, чтобы сложные бизнес процессы описывать простыми скриптами, а производительную хер писать в виде модулей на сях.
>деняк заработать, пиля веб-сервисы, и игрули делать с караванами для души.
Си-шпрот тебе зайдет, оставь байто-еплю заскучавшим дядям.
Но мягкие, как и любая корпа, могут на одном месте повертеть попенсорс (классика в виде их EEE). Да и юнити это не совсем прям дотнет со последней версией шпрот. Но в целом, пописать караваны тебе хватит, вон даже шутера типа rust на нем написаны (да раст написан не на расте).
Т.е. я делаю cargo rustc -- -C likn-args="bla bla"
Так норм, а можно указать в конфиге чтоб не писать эту ебалу?
Да, как твои отношения с Кириллом, больше не встречаетесь?
Понимаешь, раст самый любимый язык программирования, по версии overflow overlie. А чтобы было возможно любить какой-то язык программирования, на нем нельзя писать. Поэтому не задавай глупых вопросов, лучше повосхищайся какой он безопасный. да, и не задавай глупых вопросов про утечку памяти, это в наш маркетинговый пакет не входит.
Вчера только читал про умные указатели и там выдали - "в Rust БЕЗОПАСНЫЕ утечки памяти". Я такой нихуа вы стелите.
Да, вот оно
Нормально всё, пару раз ловил стековефлоу даже удивился первый раз, при желании можно все сделать и даже без unwsfe) А так в целом меньше возможностей выстрелить в ногу, оно просто не скомпилируется
Ой блин, расскажи-ка нам, очередной питоно-ребенок, что ты там собрался на расте писать и это проще чем на сях, у которого легион комьюнити и либ?
Серьезно, насколько надо быть отбитым, чтобы думать что вся сложность в разработке это синтаксис и какая-то парадигма владения, а не тонна готовых либ, которые ты в жизни не напишешь?
Так рассуждать как ты, выбирая яп по синтаксису, а не по назначению и возможностям может только питоно-макака, купившиеся на достаточно примитивный маркетинг. именно поэтому многие яп остаются на дне индустрии, потому что вменяемый разработчик скорее выберет инфраструктуру/экосистему, а не синтакис и безопасную утечку памяти.
Как же вы заебали. Твой загон на 2 треда ниже. Не удивлюсь, если ты и в питон/го треды пролез и срешь, что эти языки хуита, а у си классное коммьюнити и много либ, поэтому веб писать проще. А синтаксис и скорость разработки - это дело вторичное
Это вы уже достали, от вас индустрия тупеет, вы жрете говно не думая. То что твоей задаче раст не нужен, я больше чем уверен, ты очередное дно индустрии, мечтатель, маркетинг-бой.
мимо к си и крестам не имеющий вообще отношения
И похер бы там с такими лузлами как безопасная утечка памяти, или бинарем с киллограмм или что для системной разработки надо выкинуть всю стандартную либу (такой вот системный яп), или то что вся стандартная либа из ансейвов, или что в зеро абстракшен языке replace строки делается регуляркой как в жабе, но блин то что за 6 лет к этой помойке написали либ больше чем нефига, это, блин, уже должно насторожить
Это шарповая лахта скорее, все тейки шарпошиза на месте.
Оно вообще не развивается, я уже пол года наблюдаю как он в каждом треде про одно и то же срёт, лол.
>Язык как язык, быстрее шарпа и жабы
Только в самых влажных местах. Умные лгбт-программисты подгоняют раст под искусственные тесты, но в реальных приложениях он на уровне управляемых языков. оно то понятно, когда реплейс у тебя на регексах, тут прям чистое мастерство уровня джаваскрипта, какое нахер системное программирование
Вопрос в другом, нахрена жрать кал, когда управляемые языки идут вровень или почти вровень с неуправляемыми? Пока жабошарпист пишет логику (а пидонист и жопоскрипщик уже написал), ты борешься с баран-чекером и вкладываешь всякие боксы в АРСинки, думая как безопасно подсчитываются твои ссылки.
Тебя в детстве шарписты били? Что за триггер такой на шарп? Там на картинке жаба и шарп (как заявил собеседник), в тексте упоминается петухон и жопоскрипт.
У меня сейчас 90% работы на го, это я говорил, что современные синхронные яп не нужны (вместе с асинк/авейтами) и нех их вообще сейчас создавать.
Ты скажи что тебе надо. Если ты фанбой и тебе язык нужен по его крутости, а не практичности, то ты можешь говно без ложки есть.
1) M$
2) На нем пишет YandereDev
3) На нем написан Unity
3) На нем пишет ХаудиХо
Все, думаю, что этого достаточно.
>тонна готовых либ
Ну если уж припрёт, либы на сях к чему угодно подключаются, хоть к тому же расту, хоть к тому же питону.
>На нем пишет YandereDev
>На нем пишет ХаудиХо
Нефига ты говноед, пришлось гуглить чтобы понять, что это за масса. Ты наверное из тех кто топ ютуба смотрит, да?
>На нем написан Unity
Юнити сейчас для меня реально поинт, чтобы накатить гамульки на уровне хобби. То что туда аналог шарпа засунули, для меня тоже загадка, может потому что местами шарп С++ напоминает. Даже в godot шарп по умолчанию добавлен, ну и в целом шарп куда приятнее плюсов.
>M$
То что они выпилили из ксамарин форм официальную поддержку линукса и высрали MAUI это конечно меня ппц отталкивает (так как это все тот же EEE), но так же я понимаю что сейчас нет реального не корпоративного опенсорса (тут уже настала эра попенсорса), сейчас завуалированно опенсорс вертят все как хотят, так что уже насрать, красноглазые, пока дрочили на пони мультики просрали свое творение.
Даже Линуса прогнули и навязали ему раст. Публично, на стенде всего интернета, был вые..н и унижен, главный сея линукса, сообщество которого ранее так же поступило с GNU, благодаря которому линукс вообще и выстрелил
Удачи в костылеплавание))
>YandereDev
>ХаудиХо
Не знать этих долбаебов - это как не знать что такое дискриминант.
>Юнити сейчас для меня реально поинт
Глава юпити сказал, что те, кто не делает микротранзакции и прочую монетизацию - долбаебы. Нойс.
Ну отвечать на очевидную жирноту с серьёзным ебалом, доказывая, что кто-то не прав это ещё постараться нужно.
Начинал учить полгода назад, но потом случилась война и стало не до педерастии. А тут еще и крипта упала. Раст теперь совсем никому не нужен, или наоборот раст стронг и только укрепился?
Так сишники же не дадут. Нахуй не нужон ваш раст, мы без сегфолтов жить не можем уже, это наше, родненькое
>Выпукнуть аки
>истеричка, вместо того чтобы гордо промолчать - вот это дно.
>постит картинки с зумером.
Ебало?
Лол, а сишники это кто? Вы код в ядро не пишите, а те кто пишет, они не против раста. Даже сам Торвальдс разрешил, когда от плюсов плевался.
Торвальдс старый хуесос, ему пора на пенсию по причине мозги превратились в цемент
А может быть это ты ретроград?
Ш И З А
Он старый, но в твои года создал отдельную техническую эпоху, а ты поридж что сделал?
Я почти нихрена не понял, если честно. То есть отдельные части более менее понятны, но как это все вместе работает вообще не вырисовывается картина. Что есть почитать или посмотреть по асинхронному программированию в Rust?
А я родился намного позже
Да и какая разница если его надо уже на свалку отправить? Дедушке пора на пенсию, всем дедушкам нужно отходить от дел вовремя чтоб они нормальным людям не мешали жить и прогрессировать и чтоб не гадили на свои достижения. А то хули толку то от них? На выходе получается не известная личность а известное всем позорище
Я посмотрю на лица пориджей когда проприетарщина снова захватит мир. Но только сделать уже будет ничего нельзя, так как возрастет сложность систем.
MINIX гораздо больше распространен, чем linux так как встроен в Intel Management Engine.
> Amoeba is a distributed operating system developed by Andrew S. Tanenbaum and others at the Vrije Universiteit Amsterdam. The aim of the Amoeba project was to build a timesharing system that makes an entire network of computers appear to the user as a single machine. Development at the Vrije Universiteit was stopped: the source code of the latest version (5.3) was last modified on 30 July 1996.[1]
> The Python programming language was originally developed for this platform.[3]
Вечер в хату, расскажите какие преимущества перед крестами имеются.
Краткий FAQ https://github.com/carbon-language/carbon-lang/blob/trunk/docs/project/faq.md
Нет, просто не трап.
>Точка с запятой в 2022 году
>Правосторонние типы
>Двоеточие для типов
>Дженерики в квадратных скобках
> Блядские стрелочки для возврщаемых типов, блин, вы уже двоеточия заюзали, какой кайф настукивать эти ваши ваши стрелочки.
>Снова синхронный яп в эпоху мультиядерности даже в чайниках
Говно, которое опять потеряла большую часть, потому что создатель синтаксиса творческая личность, художник, он так видитю
Да, методы с большой буквы, завоняло сишарпом.
Гугл не умеет делать языки, но потому что это гугл, скорее всего язык выстрелит
Забавно, но миру действительно был нужен обновленный С++, с полной обратной совместимостью, но чтобы за это взялась крупная компания, а не 1,5 дрочера в свободное время (назвав всю эту херню очередной буквой D).
Го, конечно ужасен по дизайну и весь этот тупой маркетинг в начале (с тупым маскотом) был лишним, но они годами вкладывали ресурсы и допиливали до блеска рантайм, что говорит о том, что они делают именно практичный продукт для потребителя, а не фанатичную дрочильню в духе любимого языка.
Посмотрим что получиться, пока это реально первый язык "замена С++" (ибо единственные на моей памяти кто додумался до интеропа с плюсам. Даже сами С++ имел интероп с Си)
Имхо, это очередной мертвый язык от корпораций. Они таких по 100 штук в год выпускают из своего R&D отдела. У этого языка нет идеи, это просто синтаксический сахар как котлин для жабы.
Мое виденье после чтива.
- Они вышли в альфе в публику чтобы получить фидбэк, чтобы не создать очередного франкинштейна ну и набить фанбоев.
- Они явно хотят уменьшить кривую обучения для С++. То есть, сделать язык проще.
- Вероятно не устраивает развитие С++ и участие в комитете.
- Они явно учли опыт инетеропов котлина, тайпскрипта.
Проект выглядит серьезным, что там получиться, увидим.
Реальная причина в фатальной ошибке:
Если исторически завязка всех на С++ относительно устраивала, то зависимость крупных компаний от раста будет их напрягать. В ближайшие лет 5 ждем бум новых системных языков.
Может и взлетит, но не факт. Если у раст есть своя фишка в маниакальной безопасности, у го фишка что можно посадить любую обезьяну пхпшника и он сразу будет писать код, а тут типа мы как плюсы только лучше. Это типа как котлин для жабы, только тут для крестов.
Короче поживем увидим
>что можно посадить любую обезьяну пхпшника
Стадо взращенное ютубом.
Там пхп на порядок сложнее и фичастее чем какая-нибудь жаба или питон. Го выстрелили бесплатной асинхронщиной для веб разработки и отсутствием тонны абстракции, за счет чего пустое веб приложение не жрало планку памяти, что идеально подходит для уровня бизнеса в котором вариться пхп.
>Если у раст есть своя фишка в маниакальной безопасности
Которая оказалось не особо нужна для неуправляемого языка. Оказывается системный байтоёб любит рука потрогать железку.
А вот то что для прикладной разработки зачем-то брали С++, потом кололись и плакали - вот тут отдельная тема для разговора.
>Стадо взращенное ютубом.
>Там пхп на порядок сложнее и фичастее чем какая-нибудь жаба или питон.
Поверь я видел много пхпшников, на ларавеле визитки клепать ума много не надо, хуяк-хуяк и готово, самое неподдерживаемое говно я видел именно так. Про битриксоидов промолчу
А так да это запутанное говно, сначала пути перла и баша, сохранив это говнолегаси. Потом по пути жабы в 5 и 7 версии шестую проебали не взлетела, в 8 аннотации и match у раста спизжены и навалили еще кучу сахара, короче теперь ебись как хочешь с этим. Если брать интерпрайз, то там сифони по сложности как спринг в жабе. Съебал от этого говна 1,5 года назад
Потому и не стал там задерживаться
Go изначально был нужен гуглу, чтобы внутри компании избавиться от питона, в котором тормоза и часто ломают совместимость без спроса гугла (то есть гуглу нужен был ещё и контроль над ключевым языком). Во многом задача выполнена.
Теперь гугл решил избавиться от миллиардов строк кода на С++, которые до сих пор крутятся, опять же, внутри компании. Раст с этой задачей не справляется, поэтому запилили Карбон. Причём весь С++ они переводить не планируют, а ориентируются только на то подмножество языка, которое используется у них в компании. Наверняка слышали, что они многие фичи С++ типа исключений запрещают использовать в продакшене. В итоге получат подконтрольный корпорации язык, со всеми вытекающими последствиями.
От неподконтрольной жабы и ядра линукса в мобилках тоже избавляются.
>В ближайшие лет 5 ждем бум новых системных языков.
Лови свежачок https://www.linux.org.ru/news/development/16854262
На комбинаторе какой-то хер сказала что они его пилят с 2020 года с апреля. Я как-то сидел и фантазировал идеальный синтаксис для себя и за один вечер накидал куда более продвинутый концепт. Вы представляете какая это попильная херня. Они за два года ни высрали ничего технического сложного, кроме фантазий над синтаксисом.
Причем это вообще фиаско.
var name: auto = ...
Блин, когда я фантазировал, я даже какую-то кривую модель памяти придумал для языка и понял, что сначала надо придумывать для нее новый синтаксис и отталкиваться от этих сложных технических задач, а уже потом фантазировать куда тип переменной ставить и сколько надо стрелочек со скобочками.
Раст задал тупую моду, он вернул точку с запятой, которую уже как бы победили.
Ноунеймовские языки можно даже не смотреть. Тут синтаксис куда получше корбона, но кто они и кто гугл.
Я бы еще посмотрел новый С++ от мягких вот шарписты офигеют
>контроль над ключевым языком
Вообще, С/С++ — последние из популярных языков, которые не сильно завязаны на корпорастов благодаря куче компиляторов. Печально, если корпорасты добьют последние "народные языки", ввергнув кодеров в рабство с единственным рабочим компилятором для конкретного языка.
То что крупные игроки не хотят зависеть от чужих технологий, это понятно и пятикласснику и не стоит все мотивы к этому подводить. Все крупные компании мечтают иметь свой стек и даже свой яп. Никто не хочет завязывать свой мегамиллиардный бизнес на очередного Васю Пупкина с гита. Но почему тогда все не пишут свои языки? Да просто чтобы сделать яп для замыня старого яп, надо помножить все свои ресурсы на 100. А чтобы заменить С++, надо смело умножать ресурсы на 1000 или больше.
С++ та еще старая корявая говнина, но заменить её не реально в капиталистическом обществе.
Поэтому мотивы тут другие и явно перевешивают затраты.
Го и питон схожи только в самых простых обывательских мозгах (я слышал как у воробушек было сравнение го с сями, потом го с джавой). Нет, го это просто выстреливший внутренний проект, со всеми вытекающими внутрикорпоротивного чуда. И теперь когда он есть, можно уже переписывать где это уместно. Понятно, что новый С++ превратит го в говно, так как надо будет популизировать новый яп и внутри компании
К тому что асинхронная модель корутин/горутин прозрачно ложиться на многоядерные системы. То есть, использует все ядра системы без каких либо усилий со стороны разработчика.
Причем тут многопоточность, когда говорят про асинхронность или конкурентность, тут надо у тебя спросить. да, я в курсе что модель корутин подразумевает системные потоки по числу ядер/процессоров, но это техническая реализация со стороны рантайма, а не программиста
В общем, синхронные яп не нужны.
>Го и питон схожи только в самых простых обывательских мозгах
Не, гугл реально в больших масштабах избавлялся от питона в пользу go, запилили даже соответствующий транслятор для внутрикорпоративных нужд https://github.com/google/grumpy
>Понятно, что новый С++ превратит го в говно, так как надо будет популизировать новый яп и внутри компании
А вот и нет. Go им нужен для тех задач, которые раньше решал питон. Питонисты (как старые так и новоприбывшие) не будут трахаться со сложным плюсоподобным языком, им подавай что-нибудь попроще типа go.
>Питонисты (как старые так и новоприбывшие) не будут трахаться со сложным плюсоподобным языком
Кто их спрашивать будет. Я бы питон на го в жизни бы не поменял, это как поменять по удобству бентли на повозку с лошадью, но как видишь, натянули (мало того что там теперь го, так еще автоматически сгенированный после grumpy - япут как хотят).
Избавляется после того как Гвидо свалил и рычаги контроля было утеряны. Получается, питон просто выпиливает по случившимся обстоятельствам, го тут больше под рукой оказался, не было бы его, был бы какой-нибудь дарт или жаба или котлин.
То есть, у них был Гвидо и никто реально не думал что надо пилить замену, у них был тогда целый свой питон.
>Кто их спрашивать будет.
А это просто бизнес вести выгодней с использованием максимально простых языков программирования, если они приемлемо справляются с задачами. Больше скорость написания кода, меньше затрат на обучение, шире выбор кодеров и т.д.
Многие почему-то всегда рассуждают только с точки зрения наёмного работника, а не работодателя. Кто будет связываться с растом? Даже богатые компании типа гугла не могут себе позволить переписать С++ код на раст. Вместо этого пришлось Карбон склепать.
>Все крупные компании мечтают иметь свой стек и даже свой яп.
Да, все они хотят вендорлок.
Поэтому свободным людям надо поддерживать языки программирования, которые не прибиты гвоздями к корпорациям. Иначе нас ждёт рабство. Например, корпорасты могут запросто начать репрессии из-за политики, по национальному признаку. И плевать им на то, что вы были против режима, никто разбираться не будет.
>Я бы еще посмотрел новый С++ от мягких вот шарписты офигеют
Не слежу на микрософтовскими языками, но я слышал, что они уже установщик винды запретили скачивать российским жителям. Всякие их шарпы тоже ведь зависимости пакетов качают с подконтрольных им ресурсов. Если они ещё доступны в РФ, то это временно. Вендорлок - он такой.
А мне этот карбон сразу rust напомнил. Думаю, rust'япам будет легко на него перекатываться.
Ну чем не раст?
Нет никаких микрософтовских языков, дотнет опенсорсная платформа. Поддерживается комьюнити
Наоборот, карбон усложнит разработку, так как кодерам нужно будет знать и карбон, и С++. Потому что карбон чаще всего будет плотно перемешан с кодом на плюсах. И переводы с плюсов на карбон будут выглядеть похожими больше на плюсы. Индусам будет легче только в тех случаях, когда код написан на карбоне с нуля, идиоматично, и при этом их не будут допускать к плюсам. Может пройдут много десятков лет, прежде чем почти весь плюсовый код будет карбонизирован, только тогда индусы могут полностью почувствовать облегчение. Но к тому времени уже появится убийца карбона.
Вот как котлин без жабы не существует, так и карбон без С++ не жилец.
>Наоборот, карбон усложнит разработку
Но зато гугл перехватит контроль за языком, а это дорогого стоит. Можно и курочить язык под свои нужды, и рекламу себе делать, и репрессии неугодным устраивать, и зонды удобно внедрять, и многое другое...
>зонды удобно внедрять
Ну в go гугл уже всякие тулзы типа пакетного менеджера по умолчанию через свои прокси гоняет, плюс с каждой версией всё больше инфы вас их компилятор встраивает прямо в бинарники. которые и без того жирные. Раньше гошные сайты с документацией и прочим были простыми (в основном html), а теперь стали жирным говном с жабаскриптом, отслеживающим ваши действия. Когда-то в go был встроенный локальный мини-сервер документации, но его тоже похерили, ибо зондам мешает.
надо чтобы кто-то тред создал для этого божественного япа, хуле этот раст пидарский
ежегодно присылают приглашение на гей-парад
Уже создавали, пару раз перекатили и он утонул, так как посетителей нет.
Почему говеный дизайн крестов считается хорошим фильтром от говнокодеров? Знание всех костылей плюсов, делает человека гуру (задротом) плюсов, а не хорошим разработчиком. Да, на освоение нужно много времени и усилий, и если ты осилил, значит ты смог, значит, типа предполагается, что ты по идее должен быть хорошим разрабом. Почему не делается вывод, что с хорошим системным языком будет не только больше индусов, но и больше хороших системных программистов?
Аноны, что скажете по поводу сабжа? Конкурентность в расте сосёт или автор бенчмарка рак?
Там в коментах уже пояснили. Он использовал хешмапу, а они в мало того, что однопоточные, так еще и сосут.
Вот насколько раст умный, вместо того чтобы свалиться в гонке, раст безопасно переводит твою многопоточную программу в однопотомную.
Лол, тут еще пойми что страшнее - явно зависнуть в гонке или иллюзия того что все работает правильно. Пора уже вводить термин rust undefined behavior.
Как я понял тут именно структура в стдлибе реализована немного не так как хочется, сам язык тут ни при чём.
Что значит немного не так как хочется, это фундаментальная структура данных для языка.
Вот хуй пойму какая разница что он умный? Так ты программы адекватные писать не научишься, если уж ты высрал с ошибкой так пусть прога падает давая знать что автор обосрался со своей задумкой а не бежит подтирать ему жопу и сопли за него же причем
Редис.
Не совсем ясно выразился, там просто хеш мапа за мутексом. Которая делит на ноль весь асинк.
Ну один хуй это не какой-то фундаментальный изъян самого языка, есть альтернативные реализации и скорее всего еще причины/планы в иссуях на гитхабе.
Мутекс нигде не зеро кост.
Понимаешь как получается, с одно стороны в ухо заливают про залупа-кост-абстракшен и продукт реди, а с другой стороны ты видишь мьютексы в мапе (или регексы в реплейсах) и попец то тут разрывается.
Даже вот заголовок в треде
>Rust — невероятно быстрый язык для системного программирования
После очень громких слов, ловишь фрустрацию и ощущение тотального вранья и дилетантства.
Чел, зеро кост абстракшены, это высокоуровневые элементы, которые выпиливаются конпилятором, а не хеш мапы и мутексы. Это просто значит, что у раста рантайм меньше чем у аналогов, за счет бесконечного времени конпиляции.
Лол, когда нагадили в стандартной либе, КАРЛ! В стандартной либе! Я могу только догадываться какие костыли в компиляции.
Если считается позволительно говнить в фундаментальных структурах данных, то можешь хоть как маневрировать, это фиаско.
Прям реально какой-то пидорский язык программирования.
>>413908
>>414213
Ты какой-то не очень умный. Хешмап в расте вообще не умеет в многопоточность (кроме Send и Sync при некоторых условиях). Автор видео засунул мапу в мьютекс, потому все и медленно. А ты, не разобравшись, начал тут истерику устраивать.
https://github.com/ThePrimeagen/tyrone-biggums/blob/c0852bfdc827c48fc6c5278dbb9ff674d612d3c3/rust/src/server/socket.rs#L21
Как сказано так и понято, еще бы я в говне разбирался. Лол, он еще и сборку мусора arc использовал.
Вопрос, можно тут без мьютекса и сборки мусора обойтись? Обратите внимание, насколько проще го дается асинхронщина, присоединяюсь к манифесту - в 20 столетиях синхронные языки не нужны
Один дебил не может перевести одно предложение, второй ему верит не проверяя. Типичный /зк/.
>>413908
Да нет там мутексов, кек.
>>412246
>автор бенчмарка рак?
This.
Он под комментом с объяснением что он не так написал на расте прямо ответил — делол код максимально похожим и похуй.
Реально показывает только то, что у лоулевел языков слишком дохуя контекста и средний макакен, привыкший делать хуяк-хуяк и в продакшен, просто сходу спотыкается об какие-то подводные камни и сосёт писос — в чём, собственно разница с теми же плюсами, где такое происходит нонстоп? И там тоже дебилы вроде того, которому отвечал выше потом бегают и пишут что их шарп/го НИУСТУПАЕТ.
> Вопрос, можно тут без мьютекса и сборки мусора обойтись?
На тех же mpsc.channel или асинхронном аналоге от tokio. Или rwlock, как на ютубе написали
Еще один воробушек, который верит что если взять какой-нибудь с++ или раст то у тебя программы сразу станут высокопроизводительными. Классический пониёб, который никогда в жизни не тестил реальных приложений. Они еще умудряются говорить про какой-то уровень лоулевельных языков, а потом тут же берут arc с подсчетом ссылок.
Забавно, но у раста же ограниченное число поддерживаемых камней, в отличие от вездесущей сишечки. Это какой-то даунгрейд линукса будет в плане экзотического железа.
>Еще один воробушек, который верит что если взять какой-нибудь с++ или раст то у тебя программы сразу станут высокопроизводительными.
Ну ты либо читать учись, либо детектор чини — я написал ровно про обратное.
Как раз про макак вроде тебя, которые считают что можно залететь куда угодно и сходу должно получать хотя бы нормальный результат.
>Классический пониёб, который никогда в жизни не тестил реальных приложений.
Приложений кроме веб крудов не существует, так и запишем.
>Они еще умудряются говорить про какой-то уровень лоулевельных языков, а потом тут же берут arc с подсчетом ссылок.
Берут подсчёт ссылок с подсчётом ссылок?
По твоей логике — ядро линукса написано на хайлевел языке и вообще типичный круд, ведь там — о боже — считают ссылки https://github.com/torvalds/linux/blob/master/include/linux/refcount.h
Как будто в конкурентном коде можно иначе, не позорься высирая такую хуйню, лол.
В теории поддерживает всё, что поддерживает LLVM, так ещё и порт под GCC уже есть.
Да и поддержка там уровня "можно писать дрова" — т.е. экзотическому железу в целом похуй.
Лол даже в ядро подсчет ссылок засунули. Мир явно тупеет. А потом плачут что все тормозит
>Да и поддержка там уровня "можно писать дрова"
Разрешили, но на пол шишечки? Линус понимает, что эти геи потом полностью присунут и прогонят ссаными тряпками?
@
ЯЗЫК С НОВЫМИ КОНЦЕПЦИЯМИ ВПЕРВЫЕ ЗА 20 ЛЕТ? ДА ОНО НАМ НАХУЙ НЕ НУЖНО, МЫ ЛУЯШЕ НА СИШЕЧКЕ ПОПИШЕМ.
Такой маразм, ппосто пиздец. Ничего не учат, ничего не смотрят, не пытаются разобраться, а потом под улюлюканье таких же долбоебов пишут посты в духе "Не смотрел, но мнение имею". Вы же дегенераты ничем не лучше радикальных верунов.
>ЯЗЫК С НОВЫМИ КОНЦЕПЦИЯМИ ВПЕРВЫЕ ЗА 20 ЛЕТ? ДА ОНО НАМ НАХУЙ НЕ НУЖНО, МЫ ЛУЯШЕ НА СИШЕЧКЕ ПОПИШЕМ.
Просто эти новые концепции на пробу оказались фуфлом. Пока крабики носятся со своим борроу-чекером, взрослые дяди с теми же затратами времени пишут на SPARK формально верифицируемый код, что позволяет самолётам не падать. Как эксперимент Ржавый хорош, но как инструмент - всё равно что набор слесарки из Ашана.
>пук
Ну что-то уровня среднего щитпостера в этом треде. Манябред из головы, плюс очень важное мнение по языку(хотя там даже хелловорлд на нем не написал). Ну и конечно же НОЛЬ здравых аргументов и фактов.
Двачую, растодебы пишут максимум хеловорлд на расте или вебпарашу, а что-то системное, где unsafe ехал через ffi, вызывает у них недоумение А КАК ЖЕ МОЯ БЕЗОПАСТНОТЬ РЯЯЯ АНСЕЙФ, и потом возвращаются в плюсопарашу и уже не отсвечивают.
Крудошлёп из петухона первые услышал про концепцию владения и решил что это открытие. На деле же это просто ограниченная шляпа, которая хороша только в определенных узких задачах (уровня хеллоу ворда, лол) а дальше начинаются либо костыли в виде arc, либо ансейвы, либо баран-чекер тупо начинает мешать тебе писать продуктивный код (и эту проблему лицемерно называют кривой обучения, то есть, опять программисты плохие).
Получается что догматичное восприятия языка как раз у тебя, вменяемы же аноны видят проблемы, возмущается и это нормально. Раст сейчас идеален только в одном, сделать некий вендерлок на себя у глупого кабанчика. а ты нам тут молодой про "высокое" рассказываешь
>>415523
Что за пердежи в лужу? Какой смысл впоминать языки, которые созданы для определенных целей и больше ничего? Когда же раст претендует на совсем другую нишу. Сами же придумываете у себе в голове аргументы, а потом с ними спорите. Для массового системного ЯП - это действительно годнота. Приходите, срете в тред водой и уходите, охуенно. Вон выше ваш собрат не разобравшись начал кричать, что в Хемпапе мутексы, ряяя да как так можно, раст-пидораст. Не хуже бабок на лавочке.
Есть подозрение, что вся эта ебанина с указанием лайфтаймов - тупиковое направление. Потому как в крестах есть такой shared_ptr, который в однопотоке оптимизируется в ничто плюс неиспользуемый контрольный блок, а в многопотоке работает как атомный рефкаунт. И можно было бы развивать первый случай, пока компилятор не научится убирать контрольные блоки. А до тех пор работать просто как будто у тебя все объекты с подсчетом ссылок.
> Какой смысл впоминать языки, которые созданы для определенных целей и больше ничего?
Это реакция на хайп про сам ржавый, анон. А ещё на то, что этот язык завлекает лохов обещанием пригодности к геймдеву и вебу, например, хотя из-за лайфтаймов та же работа с асинхронщиной на нём выглядит, как медведь на велосипеде. Я бы сказал, что Раст - прекрасная замена сишечке, плохонькая замена крестам, и совсем никакая - скале и петону.
>совсем никакая - скале и петону.
Ну логично, он же системный язык.
>что Раст - прекрасная замена сишечке, плохонькая замена крестам
Ну хз, как по мне, rust - это кресты, rust + no_std - сишечка. В любом случае, не вижу смысла заниматься писькомерством на уровне языков, ибо в системщине больше контекст и общие знания о системе играют роль нежели ЯП.
Язык формально системный, но большая его часть - функциональщина, замыкания, асинхронщина - именно системному программированию только мешает, т.к. добавляет сложности в портировании на новые платформы, и повышает риск ошибок реализации. Да и именно близкие к железу фичи стагнируют: те же преобразования порядка байт так и не объединили в трейт, из-за чего их невыносимо трудно использовать в обобщенном коде.
Крестам язык плохая замена, т.к. при всех затраченных усилиях, некоторые крестовые недостатки в ржавом только усугубились: скорость разработки, скорость компиляции, FFI - то, что в крестах сделано через жопу, в ржавом со всеми его понтами ещё хуже.
Кстати, тут недавно видел пример модуля ядра линуха на Scratch - он теперь тоже системный?
Пердёж в лужу - это чем ты занимаешься, на деле все эти borrow checker нахуй не нужны - быдлу не понять, свистелки и перделки вроде функциональной параши трейтов и прочей поеботы тоже не нужны. Ты школу-то закончил хотя бы, крудошлёп?
> borrow checker нахуй не нужны - быдлу не понять, свистелки и перделки вроде функциональной параши трейтов и прочей поеботы тоже не нужны
Правильно, ничего не нужно. Мы же байтоебы-гречневые, зачем нам что-то менять? Будем как ДИДЫ до последнего сидеть на воей жопе, а остальное все для ботаников.
Алсо, ты лучше в тред вообще ничего не пиши, если кроме демагогии нечего сказать, так еще и к личности апеллируешь. Ты либо по фактам пиши, либо иди отсюда.
Расписал по фактам. Сколько програм на расте формально верифицировал?
> Мы же байтоебы-гречневые, зачем нам что-то менять?
Я бы с радостью сменил сишечку на что получше, но пока в системном программировании предлагаются только два стула, переусложненный раст и полурабочий зиг. Три, наверное, если учитывать каброн фон гугл, но насчёт него не знаю ничего, кроме того что он компилируется в сишечку и пытается в десны жахаться с крестами, отчего сразу идет нахуй. Каждый раз, когда пытаюсь пересесть на новый язык, упираюсть в эксцентричные ебанутые дизайн-решения и продолжаю писать, как диды. Ну не вижу я в них смысла и всё тут.
такая же помойка, как швабра/опеннет и лор.
А ты на что рассчитывал?
Глубокого эстета порвало, несите следующего.
Еще 6 лет назад я проигрывал с того, что в чатах по расту по большей части сидят питонщики. Недалекие и неокрепшие умы динамико программистов первые кто пал под агрессивным маркетингом хипстоты. Но что могут создать системного динамико-макаки? Правильно, ничего. Они могут только его любить, это сакральный язык любви, который нельзя трогать, но можно восхищаться. Этот же феномен раньше был у хаскеля у ФП-онанистов, теперь у хруста. Так же как фронтент макаки не могут в бэкенд, даже при появление node.js, так же и агрессивный маркетинг раста собрал мечтателей, которые вообще ничего не производят, но готовы часами болтать о сакральном.
Я не могу доказать, но эмпирически вижу, разработка на расте накладывает на программиста достаточный сильный оверхед при разработке. То есть, писать то фанбои могут на чем угодно, но насколько это выходит продуктивно - это другой вопрос. Поэтому раст и не выстрелил, поэтому и появляются снова всякие зиги и карбоны.
Битва за замену C/C++ все еще идет и победит не тот кто сделает его безопасней (зачем? мы и так на железном уровне), а тот кто сможет понять что С/C++ не плохой, он просто устарел и нужно не менять его, а обновить и по возможности наоборот упростить.
Сейчас очевидно, что таким языком станет карбон или ему подобный.
мимо карбон адвокат, назначенный на дно айтишных сообществ, такие как двач, оппенет, лор
Что ты выберешь, анон? Ржавчину или углеродное нано волокно?
Реально, за чем будущее? За ржавчиной или углеродным волокном? Сделай правильный выбор!
>Сейчас очевидно, что таким языком станет карбон
Очередно говно из подземелья корпораций. Таких языков по 100 штук в год выходят и дальше прототипа не развиваются. Карбон кроме синтаксического сахара ничего не дает, никаких новых концепций или киллефич. Очередной анальный вендолок.
Учитывая, что Каброн пытается совокупиться с крестами аж на уровне совместимости с шаблонами, он походу опять утянет нас в болото cmake, autotools и pkgconfig с квакающими неподалёку SFINAE, PIMPL и CRTP. Извини, козлоадвокат, я этого навоза в молодости нанюхался и сейчас хочу чего попроще, пусть и без рекордов эффективности.
Между прочим, чем ржавый хорош, так это системой сборки - она по большей части прикрывает нас от болотной тины последних 50 лет эволюции разработки на сишечке.
>Очередно говно из подземелья корпораций.
Все что ты юзаешь продукт корпораций на прямую или косвенно, весь твой попенсорс живет на корпоративные деньги и неявные интересы. Оказалось, без стимуляции баблом никакая утопия не вывозится вообще. Это раньше был опенсорс идея которой была в том, что опенсорс порождал опенсорс, а сейчас лицензии позволяют имитировать опенсорс, то есть, настала эра так называемого "популярного опенсорса" (или поп опенсорса или попенсорса). Пока ты дрочил на поней, а столман ковырял на ногах мозоли, корпорации снова обвели тебя вокруг пальца.
>Таких языков по 100 штук в год выходят и дальше прототипа не развиваются.
Такие корпорации как гугл если в паблик выкидывают, значит уже строят продукт.
>Карбон кроме синтаксического сахара ничего не дает, никаких новых концепций или киллефич
А почему он должен давать концепции? Зачем? Сишка и плюсы самодостаточны и так, просто устарели. Достаточно завести сахара, пакетный менеджер и прочие плюшки и все будет гуд.
>Очередной анальный вендолок.
Управляемое развитие лучше, коллективного управление, где десятилетиям внедряется то, что одна компания бы сделал за год. А уже выбирать тебе.
Тут у тебя есть выбор, либо завязнуть на лгбт-хипсторах, финансируемыми хрен пойми кем сейчас или завтра и ожидать чтобы они ничего не выкинули. Либо завязнуть на компанию, которая делает продукт и которая сама использует его в своих реальных продуктах. Я бы выбрал последнее, я хочу какую-то гарантию для своего продукта (и мало что хочешь, бизнес думает ирисками и своими деньгами, а не догмами).
>А почему он должен давать концепции? Зачем? Сишка и плюсы самодостаточны и так, просто устарели. Достаточно завести сахара, пакетный менеджер и прочие плюшки и все будет гуд.
Вон, человеку дали сборку и он уже хвалит язык.
>>416455
Лгбт-сообщества и все кто от него явно или не явно отпочковались (нынешняя новая культура айтишников), получи довольно сильную власть. А что бывает когда низший слабо компетентный (или малообразованный) слой получают власть? Он начинает доминировать силой, потому что (может) у него есть власть, а не нравится, мы тебя отменим!
Знаете, как крестовик со стажем, скажу, что из The Rust Book ничего не понял, но теперь я вижу, что что-то в этом есть.
Две)
Мягкие все не наиграются с гуями, выпускаю одну за одной убийцу их же детища. Гугль же не могут наиграться в языки. Новый яп выбьет шаткий стул у го, а дарт не смогли реанимировать даже флагманским проектом (офигенная идея, заставить учить отдельных язык для фреймворка). Новый яп, понятное дело, так же выхлопнет на пол шишечки и мы увидим уже 3 зомби языка.
Блин, хоть котлин и не их проект[1], но даже его они умудрились прибить гвоздями об телефоны, а релиз фуксии, если произойдет, утопит и котлин. [1]Да кого мы обманываем, слишком быстро и бесшовно котлин был принят в мобилки.
Дебильная политика тыкать во все, в надежде что хоть что-то выстрелит, создает бездушные инструменты.
Рынок не даст себе усадить на иглу раста или карбона, поэтому новая перделка больше угроза расту и го.
Тысячники[1] на гитхламе показывают уже о 687 репах против 150-250 ранее (нехера не помню по годам).
На SO чаще стали задавать вопросы по расту, там уже по интересам го догнал, который стал стагнировать.
В общем, если быть объективно, раст начал набирать некую массу популярности. Не знаю с чем это связанно (не было времени следить за хайпом новых языков) но факт остается фактом, раньше показатели у него были стагнирующие, с очень вялым ростом.
[1] От 1000 звезд и больше.
>зачем? мы и так на железном уровне
>мимо карбон адвокат
Других адвокатов, у нас для вас нет.
Безопасность нужна от случайных ошибок, а не от непреднамеренного выстрела в ногу. И карбон себе тоже ставит подобные цели an incremental path towards a memory-safe subset.
Как насчёт Ады? Вообще в плане удобства "не работает" на железе?
С тех пор как РКН с 2014 устраивает веерные отключения гитхабов/облачных IP/etc, любая более или менее серьёзная инфраструктура разработки содержит какой-нибудь артифактори с кеширующим прокси для публичных репозиториев с пакетами, или его аналоги.
шарпист, расто-фанбой
Вообще-то локальный прокси репозиторий нужен для скорости, стабильности билдов и управления артефактами у нас например артефакты с уязвимостями просто банятся в репозитории и билды начинают падать.
А для доступа к забаненым ресурсам юзается ВПН.
>Безопасность нужна от случайных ошибок, а не от непреднамеренного выстрела в ногу.
В фонд золотых цитат.
>an incremental path towards a memory-safe subset.
Ты же понимаешь, что они ничего не представили вообще, они тупо сказали "мы сделаем хорошо".
Я же не говорю про мамкиных программистов, которые могут себе впн заюзать. Я говорю про бизнес, где любое телодвижение нарушает закон. Да и в целом я говорю про прогрессивный запад, который не с теми воюет и ставит палки в колеса больше тем кто его скорее всего поддерживал. То есть растоманы или мс тебе возьмет и заблокирует и любое использование это будет варез для бизнеса.
Тут получается что у шарпистов вендер лок, что у растеров. Мне кажется даже жаба тут более свободнее так как имеет уже зеркала и может сама решать банить или не банить ру-сегмент.
Более того, если верить юзеру с реддита, он сказал что проект они запустили еще в 2020 году в апреле и писали концепт до декабря.
Я как-то синтаксис себе нового языка за вечер накидал, а тут они вообще за 2 года ничего не сделали и как я начали разрабатывать не с модели памяти и с сахарка, что выглядит ппц как по-дилетантски.
Очередной хитрый попил. Отличие только что пиявки присосались к более крупной рыбе (где мозила, а где гугл).
>>418145
В программирование так устроенно, что нет идеального решения или парадигмы. Где-то например херово ложиться ООП, где-то ФП, и вот твоя мув семантика из С++ тоже хороша в определенных для нее задачах. Но когда тебя анально ограничивают и говорят жри только это и так, вот это уже не развитие, а диктат какой-то.
Многие современные решения не новы и они не внедрялись по определенным причинам. С++ старый кусок говна, но он мультипарадигменный, хочешь юзай это, хочешь то, нет диктата. в нем даже исключения есть, с учетом последней моды неосиляторства, где тебе для обработки ошибок нужно использовать оператор ветвления (где-то явно if, где-то завуалированно) и ручками пробрасывать.
Этот язык обречен, пофиг насколько он там практичен или нет, но я просто морально не хочу с этим иметь дело.
А тебе не просто так говорили, что пидоры прибрали к рукам язык.
Тебе не похуй, что там маркетологи делают? Это как не покупать audi или bmw, потому что они радугу в твиттере ставят.
Знаешь - не похуй. У глиномесов какая-то мания продавливать агрессивно любую шизу, именно шизу и верещать, что их мнение не принимается из-за того, что они пидоры. Это как негра или телку ставить в дирекцию. Может они и правда справятся, но сделано это из-за рассового, полового и сексуального разнообразия в компании, а не потому что челик понимает в этом.
На прошлом месте у меня руководитель был гандоном конченым, но свою работу он выполнял хорошо и обеспечивал процесс, оперативно решал конфликты. Но как человек он пидорас был. А потом его уволили и биг босс поставил своего друга. Работающего по современным методологиям, скрам мастера нанял, который на несколько месяцев остановил процесс разработки и хер пойми зачем, т.к. результат не изменился. В игры какие-то играть заставлял. Вместо дешбордов в джире на бумажке рисовал и клеил квадратики в нарисованной на ватмане табличке. Нахуя? Начались ежедневные писания отчетов в екселе! Хотя челик довольно приятный в общении, но канцелярщину развел и вообще не понимал, что командам нужно было. В итоге из 50 человек 40 уволилось. Хз что там дальше был, но знаю, что босс пидорнул его.
Я на си пишут, и меня всё устраивает. Новых концепций в расте не увидел, свистелка и перделка вроде кортежей и других енумов - это не новая концепция.
Это напомнило серию где Мистер Гаррисон создал автомобиль. Нельзя потакать безумию, это уже даже не смешно. Мне насрать кто там и как долбится, но выносить это на публику, это противно.
Это равносильно тому, что я повешу картинку с хером в руке, я типа сторонник онанизма (это выглядело бы уебищно, почему тут нормально?)
Только иностранные гражданки способны в теорию типов?
Системы типов C++21 должно быть достаточно каждому.
Тоже этого не понимаю. Ладно дрочь на это в попкультуре, но когда уже проф деятельность тащят то это уже болезнь какая то психологическая
>>418317
Так вы не против языков байстуте, а против запада, корпораций и их дронов. Менеджеры-шлюхи лишь потакают модным течениям в обществе, навязанными людьми сверху. Если завтра, например, будет в моде фашизм, то все эти флажки на фоне сразу заменят на свастоны, а про радугу забудут. И вот если забыть про всю эту повесточную чушь, то язык вполне прикольный, можно поковыряться. Но тут, скорее, философский вопрос и вкусовщина, а какой язык нужен? Чтобы в языке все было искоробки или действовал принцип "Платишь только за то, что используешь". В расте работает первый принцип, когда язык считает себя умнее тебя и сразу навешивает на тебя гору обязанностей и инструментов, например, карго, жирная стандартная билиотека, боров-чекер, т.е. при необходимости придется все это отключать. В Сишке(основа философии юник-вея) начальный набор минимален, ты используешь только те инструменты, которые тебе нужн для решентя конкретной проблемы. На тебя никто не повесит систему сборки, ненужную либу или систему сборки. Вот внешний аналог боров-чекера и карго для Сишки был бы идеален.
>теорию типов
Когда-то под словом тип подразумевали размер выделяемой памяти и возможные с ним операции (ну и составной тип, состоящий из этих базовых), какая нафиг теория типов и почему это надо узнавать через трапов?
мимо не тролль, офисная макака, которая не поспевает за хайпами.
Я уверен, за твои слова тебя бы забанили в тех радужных чатиках и маркетологи там не причем.
В мою эпоху программирование (или же в моем окружение тогда) было насрать каких ты политических взглядов или на что ты там дрочишь, это было место технического созидания, отдушиной для технически вовлеченных людей.
Что касается "этих", я не думаю что стоит идти вместе с этими людьми по одному пути, они осознанно оскверняют профессию и нужно быть бесхребетной амебой, чтобы разменять свое достоинства, ради каких-то плюшек.
Да и я уверн, что эти люди заведут технологию в тупик.
знаю про теорию типов только этот мэм
мимо первый раз пробую компилируемый язык
Да, при компиляции ты всегда собираешь программу под конкретную архитектуру и ОС. С линковками библиотек можешь не ебаться, они в расте статически линкуются.
Это понятно, но что ты будешь делать через 5/10 лет? Если общественная политика на западе не изменится, то мы продолжим наблюдать СЖВ-говно. У тебя просто не останется выбора, кроме того как пользоваться тем, что дают. Ибо деньги, время и ресурсы все еще решают в этом мире, а они на стороне корпораций, которые и поддерживают эту вакханалию. Можно, конечно, сказать, что появятся опенсорс проект под ГПЛ, который все исправит, но я считаю, что золотые времена ГПЛ и опенсорса прошли. Современный опенсорс - это дроны корпораций на зарплате, так что ты в любом случае получаешь анальный вендорлок.
> Платишь только за то, что используешь
> юник-вея
Ты не понимаешь значения крылатых айтишных фраз и соответственно неправильно и не к месту их используешь. Учи мемы чтобы не быть баттхертом.
Первая любимая призказка плюсовиков и совершенно точно не имеет никакого отношение к тому чтобы у языка была хуевая стандартная библиотека и не было менеджера пакетов. Хотя в плюсах это и так, совпадение.
Юникс-вей это набор из утилит которые заточены под одну функцию и при этом могут взаимодействовать. Это не когда в системе нихуя нет и пользователь как бомж по помойкам должен все где то дособирать под себя. Это уже скорее прыщелинукс-вей, а юниксах как раз все нужное было на месте (для нужд пользователей того времени).
Биллибой на скриптах, спок.
На теории типов можно потенциально изложить всю математику и запихнуть ее в компьютер. Особенно актуально когда доказательства начинают занимать по несколько сотен страниц и как бы разбираться в них такое себе удовольствие. Не так давно чтобы изложить простенькую теорему андерград уровня нужно было ебаться с пол-месяца и писать тысячи строк кода. Математики смотрели на все это, охуевали и шли дальше по своим делам. Теперь же новые формализмы подходят к самой грани ресерча и даже бывают такие чудеса что доказательство на новейшей моднейшей теории становится короче. (Вообще основания математики само по себе интересная тема но это уже отдельная история)
А байтослесарне типы нужны чтобы после точечки названия методов выводились (то что смолток так умел делать 50 лет назад причем на живой системе никого не ебет) поэтому сейчас например айтистадо люто надрачивает на тайпскрипт - на нем можно писать с богатством стандартной библиотеки js, и удобством получасовой компиляции как в джаве - только выиграли.
> что ты будешь делать через 5/10 лет?
Не поленился, смахнул пыль со своей машины времени и полетел посмотреть что там.
В общем, положняк такой.
Львиная доля серверных технологий находится под какой-то китайской осью. Причина популярности - дешевые китайские процессоры и железо, на которую эта ОСь удачно ложиться.
Линукс все еще занимает какие-то 10-15% рынка, после того как лгбт-движуха захватила основной костяк управления в том числе и Линуса, все пошло по звезде, комьюнити раздробилось, были какие-то попытки монитизации, в общем все стухло.
Китайцы собрали какого своего сишного монстра, по сути тот же си но с некоторыми киллер фичами, успех был скорее в массовости разработки в Китае, чем в крутости продукта.
С развитием интернета на квантовой запутанности, персональные пк ушли в прошлое, все арендуют вычислительные мощности.
Развитие голограммам так и не произошло, все юзают спец очки, в которых и играю и работают.
Веб больше напоминает теперь мобильные приложения с интерактивной составляющей, много сетевых игрушек, html сайты скорее историческая дань. Бум начался когда некая компания сделала игровой движок для вебассембли.
В общем, Китай стал почти фаворитом в технической разработке, постепенно занимая лидерство. Из плюсов, конкуренция двух сторон породила значительный технический прогресс из минусов, тотальная контроль, в том числе через эти очки, но если не отклоняться то роде не мешает.
Поиграй в несколько игруль и сленял. Очень понравилась идея совместной опенсорсной разработки игр, но мне кажется курируют её игровые гиганты, но создается впечатление что люди делают сами для себя.
>С развитием интернета на квантовой запутанности, персональные пк ушли в прошлое, все арендуют вычислительные мощности.
> через 5/10 лет
Ты похоже сразу на 500 лет махнул
Да не, это просто дало малую задержку в сети, настолько малую что почти в реальном времени. Там еще будут конфы где будут говорить почему скорость свет это медленно ну и типа пинг между континентами.
>>419019
Ну шутки шутками, а в ближайшее время изменений не планируется. Сейчас каждая корпорация будет штамповать свои языки и пытаться продавать их в надежде, что хотя бы один стрельнет. А где корпорации, там и ваши любимые СЖВ. Никто из них не подходит к созданию языка с точки зрения инженера. Они пытаются высрать вендорлок и захватить своим продуктом максимальную сферу влияния на рынке.
>Они пытаются высрать вендорлок и захватить своим продуктом максимальную сферу влияния на рынке.
Вместо "вендер лок" предлагаю "вендор залупок", это более лучше отражает лгбт контекст захватчика.
Как-будто выбор есть? Тут такая ситуация что выбор уже только между вендор локами.
>Как-будто выбор есть?
Ну в общем-то есть. Это языки, который имеют общепринятые стандарты и несколько компиляторов.
>общепринятые стандарты
Ты их выбирал? Или хотя бы выбирал комитет? Или группу компаний, которые участвуют в принятие стандартов?
Ты же понимаешь что это тупо древние языки власть над которыми тупо поделены между группой топ компаний.
Не важно кто выбирал, важно, что для соответствия этому стандарту можно написать свой инструмент. Т.е. ты можешь быть независим от конкретной реализации стандарта, но выполнять ту же работу. А когда мы имеем дело с языками без стандарта, то получаем, примерно, такое: корпорация-владелец выпускает новую версию языка и эта версия будет являться стандартом. Т.е. все альтернативные инструменты находятся в позиции догоняющего и не подходят для комфортного использования.
А в реальности получаем, что каждый пилит свой компилятор и решает какие фичи он добавит или нет, вплоть до того что от разных компиляторов код может работать по разному. И все это сводится к выбору между пепси и колой нескольких компиляторов.
Нет там никакой свободы, просто исторически поделили между собой инструмент. И непонятно что тут хуже, стагнирующий, но с комитетом язык или вендор язык за который компания потеет.
Только вчера сидел и читал плюсовиков, которые завидовали другим, что им там добавили модули, а у других их нет.
Когда вкатывался в джаву, мне рассказывали про свободу выбора и прочее, оказалось все прибито к спрингу или к EE. И как только в жабе делает шаг в сторону популярного стека, оказываешь в каком-то зазеркальем мире говнокода.
Для меня было тогда шоком (14 лет назад), я слезал с пхп где было куча фреймворков, но они все были более менее рабочими, а тут как в сишарп попал.
```
файл миграции
CREATE TABLE users (
id uuid NOT NULL PRIMARY KEY DEFAULT uuid_generate_v4(),
name TEXT NOT NULL,
email TEXT NOT NULL,
password TEXT NOT NULL,
role TEXT NOT NULL,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP NOT NULL
);
модель
#[derive(Debug, Insertable)]
#[table_name = "users"]
pub struct NewUser<'a> {
pub name: &'a str,
pub email: &'a str,
pub password: &'a str,
pub role: &'a str,
pub created_at: chrono::NaiveDateTime,
pub updated_at: chrono::NaiveDateTime,
}
```
```
файл миграции
CREATE TABLE users (
id uuid NOT NULL PRIMARY KEY DEFAULT uuid_generate_v4(),
name TEXT NOT NULL,
email TEXT NOT NULL,
password TEXT NOT NULL,
role TEXT NOT NULL,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP NOT NULL
);
модель
#[derive(Debug, Insertable)]
#[table_name = "users"]
pub struct NewUser<'a> {
pub name: &'a str,
pub email: &'a str,
pub password: &'a str,
pub role: &'a str,
pub created_at: chrono::NaiveDateTime,
pub updated_at: chrono::NaiveDateTime,
}
```
Мы летаем в этот промежуток времени ради ядерной войны из-за тайваньского и северокорейского конфликта, хохлов уже скоро все забудут. Вроде там часть командовании взбунтуется и захватит власть, благо все основные штабы управления в Польше. Потом будет подписан мирный договор с новым правительством, Украина сохранит часть границ, закрепит договор о дружбе, не многие успеют убежать, запад опять кинет (да и им будет не до этого уже).
Этот не прав. Всё население пишет unsafe код (но все работает как надо). Вышел STALKER 3 (написан на Rust), весь мир играет и просит ещё!
Можете объяснить, зачем описывать лайфтаймы в структуре, даже мне макаке понятно, что поля структуры не должны жить меньше самой структуры?
Ты пробовал выключить и включить компьютер?
Компилятор требует явного определения лайфтайма для структур. Они не подпадают под lifetime elision rules. А вот что предшествует такому требованию не помню уже. Можно вообразить конечно, что разные поля могут ссылаться на память с разным лайфтаймом и компилятору нужно об этом сказать, чтобы в контексте он проверил заимствования.
Короче педики вы нихуя не пишите на расте, а только кукарекаете. Шо мне с эти дизелем блять делать. Походу это багованая залупа.
Нельзя было тупо опустить лайфтайм если все поля имеют жизнь структуры, а если это не так, тогда уже указывать? смотрится как искусственный бойлерплейт, но может я что-то не вижу
Заведи баг у них в гитхабе
Я четкого объяснения не нашел этому. Возможно просто легаси и в будущем расширят elision rules для таких случаев. Пока что это требуемый от компилятора бойлерплейт.
>В общем, Китай стал почти фаворитом в технической разработке, постепенно занимая лидерство.
Никем Китай не станет, сдаст позиции. Потому что дедушка Си считает, что китайские скрепы нарушены, все технологии это зло, пора возвращаться в тысячелетнее китайское стойло.
Китайцы прессуют торговлю, ликвидируют всю крипту и майнинг, давят онлайн образование, запрещают школоте играть в компьютерные игры. И находятся в ловушке среднего дохода.
Каким таким фаворитом они станут.
А технологии возвращаются обратно в США.
>Веб
Сейчас веб вымирает, потому что все сидят в сматрфонах. Зумерам так удобнее. А на сматрфонах не нужен ни веб, ни вебасм.
Технологии по спирали развиваются, сначала в одну сторону, потому в другую.
Вычислительные мощности дешевеют, финансового смысла их арендовать нет.
Но есть другой нюанс, компаниям надо зарабатывать деньги, а их удобнее всего зарабатывать на сервисах. Ты хочешь играть в игру,, платишь и играешь. Вот для этого и надо всё в облака загонять.
Технологически облака не нужны, но для бизнеса необходимы.
ок, найдешь решение своей проблемы, напиши сюда тоже.
Может нужно зависти в начале поле с id в структуре?
Почему это говно провалилось?
Ты скозал? Язык теряет в позициях с каждым месяцем
Сильверхенд, иди нахуй, твое время бороться с корпами еще не пришло.
На самом деле хотел просто показать, что нередко бывают непредсказуемое развитие в будущем.
Я прям не сторонник раста, но в отличие от гуманитариев я ценю объективность выше своих убеждений. Что я вижу.
Если раст пролезет в игровые движки, то уже в ближайшие лет 5 мы увидим 25% и более процента рынка геймдева (я лично уверен что и до полтинника он там съест, при лучшем исходе).
Все это еще более выстрелит, если на базе синтаксиса раста появиться интерпретируемые скрипты тесно переплетенные с растом или же похожее на него (это звучит странно, но глубоко проанализирующий анон поймет).
Очевидно что раст станет номер один для сверхнагруженного веб хайлоада, не там где всякие жабы, шарпы, го, а именно там где С++. Причина проста, управляемые языки по скорости не уступают, но там где критичны будут пики GC, будет уже точно раст, а не плюсы. Там же где на пики насрать, то все останется так же.
К сожалению, в вебассембле львиную долю уже сейчас отжирает blazor, но лично я считаю что будущее этой технологии не в хтмл-подобных страничках (у которых есть ниша больше в энтерпрайзе и некотором вебе), а в тяжелых приложениях, например играх не уступающих персональным или же всякие приложения уровня автокада, фотошопа, блендера (за подписку, конечно). В общем, если не протупят, это будет тоже рынок раста.
Мое имхо, становится очевидным что за растом есть будущее. Думаю, мода на пидоров уйдет как и пришла (как прошла мода хипсторов и стимпанка, на котором ранее раст и вдохновился), а вот технические прогресс все равно идет придет, надо просто уметь фильтровать информационный шум.
>игры
>веб параша
>перепишем на расте
На ху я? Если их пишут на говно крестах и писунам норм, зачем это говно писать на пидорасте.
>будет уже точно раст
ЧТОБЫ ЧТО? Не могу перестать орать с вас дебилов.
Потребность в замене плюсов признают даже сами некоторые плюсовики. Никто не будет ничего переписывать, тем более игры где все вообще одноразовое, просто начнут писать на расте и все, так как технически он предоставляет преимущество, тут лишь проблема в наличие готовом наборе либ.
Что это, типа раст не подгоняется под тесты? Когда только запилили в эти тесты раст, он вообще на дне сосал в синхронной херне. Потом началась специальная олимпиада и постепенно подогнали. Иногда складывается впечатление, что они специально под тесты его и подгоняют (ибо по началу раст вечно сосет).
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=c8f1a34af7aceb0bf592229a7cf38e65
Очевидно от сплита с пустым делителем.
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=77a61128f9b21e608e13ad096d1e42a0
А, понял, с трейт-объектами можно использовать сразу несколько разных структур, реализующих один и тот же трейт, без dyn не работает, с ним работает
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=2f6cfa560eba7938cda102e12701e7da
>>421002
Забавно, но в нормальных языках, в сишарпе, сплит вернет тебе массив из одного элемента, где будет вся твоя строка, ибо логично, если ты делишь на пустоту, то этой пустоты в строке нет и будет только один элемент, вся твоя строка.
А вот у всякие коко-котлины ведут себя как у раста, делят буквально на ноль. Но это понятно, они там у друг у дружки тырят вдохновляются кодом.
Объектов там нет, трейты подобие интерфейсов/контрактов. Местная пародия на полиморфизм.
Лол, а в джаве вернется результат как в расте, но без начальной и конечной пустоты.
Ну структуры с имплементированными трейтами (или просто с методами без трейтов) - по сути те-же объекты
А вот петухон честно ругнется, ибо правильно, на ноль делить нельзя.
Чем раньше выкинешь из головы ООП тем проще будет понять парадигму раста.
Согласись что пустоты по краям это кринж алгоритма, почему нет тогда пустот между букв?
Самое ожидаемое поведение у шарпа, он ведет себя так как будто делитель не найден, если в любом языке делитель не найден, возвращается массив в виде одного элемента из все строки, а не дробит строку по букве. Что есть потенциальная ошибка, если случайно ошибся.
>Более безопасное управление памятью
У меня в сишке с моим аллокатором и руками не из жопы более безопасное управление памятью, чем в пидорасте. При этом не надо шквариться об классы из крестов и об ненужные свистелки и перделки из пидораста
Сейчас, в эпоху многомиллионных строк кода, больше становится важнее фрагментация памяти, как раст с тут справляется? Или его тоже как сишную помойку надо рестартить каждый день?
Всегда поражаюсь, что шарп местами продуман до мелочей.
>с руками не из жопы
Очень самоуверенно. В итоге пользуемся полными уязвимостей программами с утечками памяти
854x480, 0:59
Забавно, но растоманы говорят что утечка памяти это безопасно, точнее не входит в их гарантии (серьезно).
>Просто ряд ошибок нельзя допустить
В простейших случаях скорее всего, у тебя бы и в си таких проблем не возникло, если только всё было так просто, то Коляну бы не пришлось выслушивать растогниль.
> у тебя бы и в си таких проблем не возникло
На Си проблемы возникают даже с printf. Везде есть свои подьебухи без знания которых можно отстрелить ногу.
Спасибо.
Только я всё равно не понял откуда там высрались пустые '' странный высер итератора сплита или откуда оно могло взяться?
Солюшены остальные хеллоуворлда этого тоже не особо красивые, пердолинг str &str String ещё. Пойду лучше дальше на скриптах скакать.
split возвращает пустую строку, если слева/справа от разделителя ничего нет. Разделителем в данном случае считается пустая строка и видимо подразумевается что она есть до и после каждого символа исходной строки
И все, маленький ряд ошибок? Ты же понимаешь что все подводные камни надо вызубрить? Даже в каком-нибудь жопоскрипте может случиться твое "UB", которое приведет к ошибке на миллион (а там не меньше удивительных вещей). Я уверен что и в раст есть пласт подводных камней.
Из реальных плюсов это скорее карго, практичнее синтаксис, например отсутствие хедеров, но на этом все. По началу вроде все кажется продуманным, а потом даже охереваешь когда в лицо говорят что утечка это нормально. В моих приложениях, где я варился в ограниченных условиях, утечка была как раз критична и скорее всего приводила бы к панике из-за аллокации. и почему вы в таком безопасном языке не проверяете удачная ли была аллокация?
Просто это кривой алгоритм split'а, ему конечно будет какое-то объяснение, но раст просто настолько безопасный, что ставить "воздушную подушку" по краям списка.
я не говорил, что МАЛЕНЬКИЙ ряд ошибок. Проблемы с памятью это БОЛЬШАЯ часть проблем С/C++
Дело не в безопасности, а в алгоритме. Подушек не будет если сепараторов нет на краях строки.
JS ведет себя так-же кстати для непустых сепараторов.
Читаю эту хуйню и не понимаю нихуя, но код понятно что делает.
https://docs.rs/actix-web/4.1.0/actix_web/dev/trait.Transform.html
Их какие-то левые люди пишут, которые к разработке не имеют отношения?
ниже
The Transform trait defines the interface of a service wrapper
Как это блять понимать, если Timeout struct является оберткой. И так везде, в книге в хуиге, в любой крейт зайди написан тупой бред бессвязный.
Кто блять runs? Если трансформеры, тогда RUN. Если сервис, то THAT RUNS. Суки хули я должен расшифровывать этот бред даунов.
B1 из соседнего треда писал доку
Плюсовики не признают потребность в замене, потому что как только ты об этом упомянешь у них нагреется жопа из-за того сколько времени они проебали на него
Ну и к тому же после плюсов абсолютно любой язык программирование выглядит как убогий обрезанный кусок говна, к тому же еще с претензией считать тебя дебилом
Бля какие же растоманы пидорашки необучаемые )) Неплюсовик если что.
1С программист?
Короче у Queryable и Insertable поля должны быть определены в одинаковом порядке.
Вырастет в 135 раз
Как перепишешь — то и получишь, можно вообще любой результат получить.
Шалом, сразу скажу что я вообще ничего в программировании не понимаю, просто из любопытства полез ковыряться в этой вашей ржавчине ну вот нравится мне когда на выходе получается exe-шник чтобы вот прям взял и запустил без интерпретации
Вопрос простой, читаю тутор на сайте, там учат писать игру угадай число, так вот, у меня вопрос
Вот есть use rand::Rng; - это я так понимаю подключаю библиотеку чтобы генерировать случайное число, но что значит Rng? То есть rand это набор библиотек, а Rng это одна или несколько библиотек которые мне будут нужны?
вот я его генерирую
let secret_number = rand::thread_rng().gen_range(1..=100);
rand это я так понимаю библиотека, которую я буду использовать,
thread_rng это метод, а .gen_range это еще один метод, который ограничивает рендж в котором генерируется число? Я правильно понял?
https://pastebin.com/nw03dptD
>но что значит Rng?
Трейт, реализацию которого тебе возвращает функция thread_rng.
>То есть rand это набор библиотек
Это одна библиотека.
>rand это я так понимаю библиотека, которую я буду использовать,
Ты же не импортировал функцию, вот и нужно показать компилятору что ты от него хочешь. Можешь поменять use rand::Rng; на use rand::{Rng, thread_rng); и вызывать просто thread_rng().
>а .gen_range это еще один метод, который ограничивает рендж в котором генерируется число? Я правильно понял?
Нет, thread_rng возвращает тебе конкретную реализацию ГСЧ (который реализует трейт Rng), а gen_range это его метод, генерирующий тебе это самое число.
Где ты в слове том увидел пустые сепараторы? Их нет, а когда нет сепаратора, то возвращается строка целиком в массиве.
Признаю, просто заменять язык должен плюсовик, который скорее всего оставит прямое управление памятью и не будет добавлять опшенов, которые нефига не бесплатные.
Тогда для сборки линукса нужен будет пакет MSbuild на 6 гигов.
У нового поколения ООП считается все, что пишется через оператор точку zalupa.lupa(), поэтому лучше не трогать этих людей.
ООП это инкапсуляция, полиморфизм и наследование, последнего нет, и вследствие полиморфизм является огрызком.
Сейчас набегут одаренные, которые будут рассказывать что "ненужно", но это тупиковая ветвь эволюции.
К сожалению, многие технологии древних уже позабыты, например unhandled error (где кровью было доказано что только так эффективно писать код), сами эксепшены, где программист не ручками пробрасывал ошибку и не писал if...else (или match), массивы char, где доступ к элементу строки не стоил O(n), а в расте еще есть рантайм проверка, что ты не попал между utf-8 байт (залупа-кост-абстракшен). Ну и конечно симбиоз еннамов и юнионов, которые ты будешь юзать очень много и которые тоже залупа-кост-абстакшен.
В общем, раст это экспериментальный язык, который пытаются вокруг одной парадигмы натянуть на уровень прода. И если при первом знакомстве с языком все кажется относительно нормальным, то чем дальше в лес, тем жирнее костылеварение (вплоть до подсчета ссылок ARc).
Хз зачем быть бета-тестером, поэтому дальше чем на поиграться, язык не тянет.
PS
>(вплоть до подсчета ссылок ARc)
Серьезно, ты так же можешь взять го или шарп, отключить сборку мусора и ручками дергать где надо GC, я почти уверен, что показатели будут на уровне с растои и его ARc (потому что это сборка мусора).
Нахуя плюсы заменять? 23 стандарт на подходе. Там уже для самых тупых вводят плюшки.
Вся работа комитета сводится к тому, чтобы вовремя запретить вырезания тех или иных плюшек, на которых у них там миллион кода написано. Эта хрень никогда продуктивного ничего не родит. Ждем корбон.
В расте нет классического ООП, собственно как и в go, тут приходится писать код немного иначе наследования пиздец как не хватает
Ты из криокамеры? Мс релизнул дотнет кор (который кроссдроченный), он настолько выстрелил, что кинул дотнет фреймворк и объединил все под нет кором. Ты думаешь почему в тестах асп.нет ебет раст? (ну ладно, вместе они там)
Вся суть коммитета, что не плодили каждый свои реализации со своими свистелками и перделками. То, что комитет работает как отсталый в развитии - возможно.
>>423272
Спешить вообще некуда, мани. Плюсы это не пидораст, говно, калборн и прочая залупа которая издохнет через месяц как куча перевозбужденных соевых транспрогеров подостынет. Он с нами навсегда, насовсем, навечно смекаете и к нему нужно относится бережно и каждую фитчу выверять, единственное жаль что даже в комитете этого до конца не понимают и поддаются на байты джаваскриптеров
Я правильно понял что в расте если класс/струтура паблик от другого класса/структуры то оно не наследует его члены?
struct<THuynaB: HuynaBTrait> {
dep: THuynaB
}
и потом в тестах мокать хуйню В?
>Комитет Линукса одобрил добавление раста в ядро
>Сам Торвальдс одобрил инициативу(который послал плюсы нахуй)
>В конце августа уже выходит первый патч с растом в ядре.
>РЯЯЯЯ ВЕБПАРАША, СЛЫШИТЕ, ВЕБПАРАША
Лол.
>В конце августа уже выходит первый патч с растом в ядре.
>Так ну вот ета у нас кернел тред мы ему приписываим трейт тред ну чтобы как типо эээ ооп была эээ, эээ так эта мы тут ещё один трейт добавим ээ
Кидани ссылку чё там на расте написали, вангую какой-нибудь драйвер для девайсов от buttplug.io.
> >Растопетушок: Найс подрыв, чмонь.
> Характеризует.
Я сразу угадал что ты тупое дно. Вот ты и подведил. Хоть бы прсты читал на которые отвечаешь. Растопетух этр ты, а я крестогосподин.
Просто и по делу.
https://github.com/Rust-for-Linux/linux
Да, вообще хуйня, братан. Какой-то ноунейм проект впервые за все время второй язык для разработки в себя добавил, вообще хуйня. Наносекам с двача, конечно, все видней.
Я бы гнал из профессии людей, которые вообще пытаются тащить ООП в современные продукты, но амебы будут терпеть это безумие вечность
>Кидани ссылку чё там на расте написали
>Да, вообще хуйня, братан
Дегенерат ебаный
>Languages
>C 98.4%
>Assembly 0.8%
>Shell 0.3%
>Makefile 0.2%
>Rust 0.1%
>Python 0.1%
>Other 0.1%
Ты походу себя дилдаком передолбил, растопетух, что даже читать разучился.
Ну можем в процедурном стиле писать, деды же писали, может всё на кобол перепишем?
>initial rust support
Так там растопетухи добавили пару мейкфайлов, теперь орда питонистов начнёт делать говнодрайверы? Думаю, нет. Вообще задач у раста для linux kernel тупо нет.
Если посмотреть с 90х готов, плюсы постоянно находятся под давлением и каждое десятилетие сильно сдают позицию, уже сейчас плюсы это крохотная часть разработки, а когда-то это был язык общего назначения. Тут даже юнити стали отжимать игровой рынок. Поэтому такие языки как раст и карбон, они очень сильно выбивают почву из плюсов.
Ну как нет? А подкрепить своë ошибочное мнение о том что раст это не поделка для обезьян?
Для растеров дали петушиный угол, чтобы сильно не кричали. Забавно, но раст по дефолту херова подходит под ядро и там нужны костыли (например проверку на аллокацию)
Их выкупили ironsource
>своë ошибочное мнение
School of rust religion. Ещё раз, зачем писать что-то для ядра на расте? ЧТОБЫ ЧТО?
Мейкфайлы добавили, даже если полтора модуля напишут для юсб-дилдаков, какой в этом смысл лол. Можно на кристале писать ОС или на GO, но зачем?
Мусор это растеры и их собирают в одну комнату для грязи
Бывает
Юнити покупают ironsource с капитализацией в 60 лямов зелени, это ли не значит что у юнити дела хреновые?
> Честно говоря, на мой, далекий от системного программирования, взгляд многие из упомянутых недостатков можно было бы и, ну не простить конечно, но стерпеть. Но вот компилируемый "типа"-безопасный язык, в котором не обязательно явно указывать типы переменных.... Как на меня, так вообще любое автоматическое преобразование типов, - это уже достаточно стрёмно. Я, когда статью до этого места дочитал, прям возрадовался, что во время оно так и не стал на Rust смотреть. Спасибо за статью.
Весь раст служит для крупного попила, похер что там драйвер, главное что теперь могут маркетологи кричать что раст второй язык разработки ядра линукса и вообще линукс теперь и на расте.
Потом объявят дерастефикацию ядра линукс
небомбит, скорее в манямир
Что за высер. Inference блять а не преобразование.Рили хейтеры раста какие-то бомжи подзалупные, несут хуиту не соотносящуюся с реальностью. Где нормальная критика?
Какая разница, если шарп уже де-факто стандарт разработки игр, посмотри основные языки godot.
К годо можно любой язык прикрутить, а стандарты имеют свойство обновляться
Раст сообщество и гей клуб имеют разное название, но суть одна и таже
Да без GC. В шарпе GC, в ноде GC.
Если посмотреть с 90х то видно что плюсы это очень стабильный актив который не особо не дергается никуда. Все что изменилось за последнее время так это то что его перестали пихать в универы и школы и он потерял статус вкатунского, хотя понятно он им и не должен быть никогда
И у плюсов выбить почву могут только точно такие же плюсы. Но спрашивается нахуя и кем?
Нужна революция в программировании. И раст к сожалению скорее лжепророк, предшествующий настоящему. А кто им будет пока неизвестно.
Плюсы в 90е пихали во все что угодно, даже в вебе на cgi писали, в 00 пропихивать стали значительно меньше, сейчас скукожился только для околосистемной фигни и игр.
Нет, у плюсов рэнж гораздо больше и никуда он не кукожился, остался где и был
Ребенку из нулевых виднее, конечно.
Растеры предпочитают "живое общение"
Раст был хорошим экспериментом, пора делать нормальные языки.
99% это белый шум, не так важно кто его издает, сейчас питон, вчера жаба, видно что они дохнут в отличие от очень стабильных си\с++ языков которые не на что заменять
Всё так, разработчики железа вообще всю ответственность скинули на разрабочиков софта, 99% софт людей даже не заметили как транзакционную память выпилили в интеловых процах, зато срачи про языки, вышла новая хуитка для ллвм - ряяя гивалюция. Ору, блядь.
Охуеть ты сравнил, конечно, сравнивал бы с тиклем хотя бы.
Пилить можно хоть космический корабль. Одно дело рисоваться, другое дело показать сразу готовый рабочий результат.
>>423903
Дегенераты, вы даже 5 предложений не осилили нормально прочитать. Какой вам программирование нахуй... Закройте тред и забудьте о чем тут писалось.
Написал hello world и калькулятор, — вот и молодец. На этом стоп. Не стоит вскрывать эти конпеляторы и гитхабы. Это тебе не колидоры вычистлительных центров НАСА, даже не датацентры ГУГОЛ, не уютненькие офисы ФЕЙСБУКА. В сферу IT лучше не лезть. Серьезно, любой из вас будет жалеть. Лучше закройте Хабрахабр и забудьте, что тут писалось. Это все вранье, чтобы привлечь как можно больше новых макак на рабочие места и создать демпинг зарплат. Я вполне понимаю, что данным сообщением вызову дополнительный интерес у воротил из Cisco, SAP и IBM, но хочу сразу предостеречь пытливых — стоп. Зарплаты у IT-шников очень унылые. Остальным их просто не дают.
Какое ЧСВ нахуй? Вы БУКВАЛЬНО смысл пяти предложений не поняли и начали что-то срать. Если в 2022 году быть нормальным - это ЧСВ, то человечеству пиздец.
Ну да верно.
И самое главное никто тебе не заливает в задницу мнимую идею безопасности и баран-чекера, перекладывающий дополнительную нагрузку на мозги. Оказывается можно сделать вот так просто.
да пушка, жаль что еще не продакшн риди, и камел кейс бесит
Вот так это выглядит на лучшем языке
def counter(num):
num += 1
return num
Интересно как это выглядит на расте
Мимокрок
> Какой вопрос, такой ответ
Вопрос был про ВСЕ числа, а не только f64 или u32.
> Ебани f64 и тебе на все яисла хватит.
Не хватит.
Ну ты тугой... я хочу чтобы функция могла добавить единицу ко всем типам чисел: u8, ..., u128, f32, f64, i8, ..., i128.
Да ладно, я троллил. Там через дженерики больно пердолиться, как и в любом системном языке с типами. Просто я не понимаю где в реальной программе можно такое встретить? Вот пользователь ввел число 24 - это просто int или uint? Как функция должна это определить?
Мне это понадобилось в большом фреймворке, где типы данных задаются пользователем фреймворка и прокидываются внутрь бизнес логики как алиасы. Также мне надо было расширить фреймворк своей бизнес логикой. Так как пользователь может задать любой адекватный тип для алиаса, то чтобы не менять код фреймворка нужно пердолиться через дженерики. Но слив защитан.
Маркетологи звездят.
Ну ты дурак, конечно тебе реализация трейта нужна AddAssign<u8> для float. Пиши давай!
Ты чё, сука... охуел?! Мне надо чтобы функция добавляла единицу к числам любого типа. Рил мозг заржавел у тебя, старина.
Ебать, тебе делать нехуй долбоеб. Если ты сделал, что хотел, то пиздуй отсюда. А твоя хуйня гуглится за 2 минуты.
https://users.rust-lang.org/t/how-to-write-a-simple-generic-function-with-numeric-types/10943
мимо
Какой слив, шиз? Ты сначала пришел сюда с вопросом "А как сделать Х?". Несколько анонов потратили на тебя время, возможно пытаясь помочь, а оказывается это челлендж был о котором ты ничего не писал, чтобы тебя сразу на хуй не послали. Ммм, охуенно.
Это тред для сранья и содомии, а ты сюда со своим программированием пришел.
Хотя не, нельзя расширить внешний трейт для внешнего типа.
Тогда так:
pub trait AddAssignExt<Rhs = Self> {
fn add_assign(&mut self, rhs: Rhs);
}
impl AddAssignExt<u8> for f64 {
fn add_assign(&mut self, other: u8) {
self = self + f64::from(other);
}
}
pub fn inc<T: AddAssignExt<u8>>(value: &mut T) {
value.add_assign(1);
}
Ну ты же не можешь правильно написать.
>Юнити если что сдох
Valheim, Genshin Impact, Subnautica, Albion Online, Endless Space, Beat Saber, Boneworks, Rust, Блицкриг 3, Pillars of Eternity, Tyranny, Kerbal Space Program
Пока растеры пытаются починить асинки с UB, шарф становится де-факто стандартом геймдева.
Маня, раст претендует на нишу плюсов, т.е. написание движка, а на роль клея между модулями можно, что угодно взять, любую скриптуху.
Какие топ игры написаны? Или опять проект на-поиграться, как очередные операционные системы?
Я уже в процессе планирования написания MMO - убийцы всех MMO.
Cуть такова… Пользователь может играть лесными эльфами, охраной дворца и злодеем. И если пользователь играет эльфами то эльфы в лесу, домики деревяные набигают солдаты дворца и злодеи. Можно грабить корованы…
Язык у которого в рантайме проверяются выход за индекс массива, границы utf-8 символа, а так же ввиду ограниченности парадигмы нужно использовать подсчет ссылок - является прикладным.
Из прикладных языков сейчас лучший шарп, там тоже есть unsafe код, где ты можешь отключить проверку выхода за границу.
Если же тебе нужен полный контроль над железкой, бери чистый С, лучше просто нет. За редким случаем можно и С++.
Если тебе просто потыкать во что-то системное, но современное, бери zig, там пока нет буллшит маркетинга и фрустраций от вранья не словишь как с раста.
Как написать такой код на расте? У раста есть арифметика указателей и аналог классического for?
Всегда, "\0" это уже не пустой сепаратор. Классическая проверка что строка разделилась, это проверить на то что массив имеет больше одного элемента, если случайно прошла ошибка в виде пустой строки (как любят заменять null), то ошибка пройдет и дальше по коду.
Так что слизанный с котлина (или наоборот) вариант работы сплита, это логическая ошибка и самый грамотным вариант тут оказался шарп (что логично, ибо это лучший язык в мире на сегодня) или у питона (который вообще ошибку бросает, неудобно, но верно).
Пугать системщика, который голыми руками трогает байты в железке - работой с указателями, это как пугать электрика электричеством.
В этом и вся ирония, что на маркетинг раста клюнули всякие питонщики, скрипткиди, а не плюсовики и системщики.
>"\0" это не пустой сепаратор
Так я этого и не утверждал, пустой это именно что пустой. Попробуй найти подстроку "" в любой строке в своём любимом языке и сразу станет понятно, какой язык последователен в работе со строками, а какой нет.
Да вынь уже маркетинг изо рта, ты понимаешь, что зачастую все это притянуто за уши, а многие аспекты языка ограничены настолько, что им приходится проверять каждый доступ к utf-8 символу, где доступ к строке и так О(n).
Если в плюсовик может использовать или не использовать парадигму владения, то растер ограничен до такой степени, что принты у него магические макросы (по сути еще один язык в языке), а для нормальной работы необходимы сущности с подсчетом ссылок (где в том же С++ это опционально, т.е. по ситуации).
Вся суть этого маркетинга сводиться к тому, что, мол, если посадить макаку в столь узкую клетку, что ей просто придется взять карандаш, что вдруг она неожиданно начнет писать романы. Но мы то знаем что макака не станет писателем, как и js фронтенд разработчик не стал хорошим бэкенд разработчиком, когда ему дали ноду.
Так и тут не начнут писать качественны системный код, если вдруг ограничить пользователя в работе с указателями (мы видим, полно ошибок и в языках со сборкой мусора). Так что вынь этот маркетинг изо рта, ничего раст не дает, ибо тоже самое давала и жаба 25 лет назад (такой же маркетинг с безопасностью там был), но как видим, результат все тот же, это серебрянная пуля.
Я же работаю программистом, у меня нет времени потыкать во все языки, кушая мамкин борщ. И тем более не могу помнить/знать как они там ведут себя, мы видим что даже при сплите, они видут себя по разному (скорее всего больше половины тут и не догадывались).
Это древний атавизм, оставленный для совместимости. Причем тут багованая работа сплита в новых языках, порождающая пустые элементы, я не понимаю.
Есть ровно один способ как поиск подстроки может себя вести. Если это не так, то твой язык работает неправильно.
Как и сплит, да?
Поиск по пустой строке ничего не доказывает, это действительно выглядит как древние соглашение, так как приводит к UB (например если получить нулевой CharAt(0), то это будет не фига не пустота).
Я кстати прочитал "любимый язык" как "любой" (любой другой), поэтому подумал что ты призываешь в другие языки посмотреть.
> как древние соглашение
Если не веришь, иди глянь в сорцы, там будет условия типа
if (length == 0) return 0;
То есть, это пограничное условие для выхода, а не логика какая-то, поэтому это ничего не доказывает в случае сплита и тем более баговоности его в котлине и расте.
>Язык у которого в рантайме проверяются выход за индекс массива, границы utf-8 символа
>нужно использовать подсчет ссылок
Мудило, снова выходишь на связь?
У раста тоже есть гц - ARc, computer science говорит нам, что подсчет ссылок (при каждом пуке) это гц. Причем подсчет ссылок самый кривой и примитивный гц, питонисты поймут.
У раста проверка индексов.
У раста проверка utf8 слова при индексации
У раста вообще индексация строки O(n)
У шарпа тоже есть unsafe, для сырой работы с указателями.
У шарпа есть защита от фрагментации памяти. Есть value типы.
Ты же понимаешь, что подсчет ссылок работает предсказуемо, не вызывает проблем производительности с "пиками GC", как полноценный GC?
А что там у шарпа с utf8/16?
Ты же понимаешь что аллокация памяти всегда дорогая операция и если просто размазать по времени, действительно пиков будет меньше, но сами затраты некуда не денутся. Более того, мы чаще аллоцируем и высвобождаем сразу пачками (аренами/зонами) поэтому в реальном коде, не в искусственных тестах, могут быть даже схожие пики (сборка мусора даже в unreal engine есть и они не стесняются этого).
Что касается пиков, да они есть, но есть и рычаги контроля над этим. Я понимаю, что общее мнение складывается по подобию хабро статей, где "мы переписали и пики ушли", но на деле это чаще наброс или дилетантство. Иногда даже переписав на тот же язык можно неожиданно получить тонну оптимизации. А в управляемых языках полно инструментов (особенно в жабе), которые позволяют настроить все наиболее эффективно.
>А что там у шарпа с utf8/16?
Норм все, utf-16 это же тот же юникод, просто двухбайтовые чары сразу.
А ты не пукай слишком часто
>У раста тоже есть гц
У вас там сайт лег(растмастдай), попинай своего друга или Столярова, чтобы подняли.
То есть ты все понимаешь, но споришь ради принципа, подменяя понятия (явно понимая, что имелся в виду полноценный GC, но продолжая вилять жопой).
>да они есть, но есть и рычаги контроля над этим
Наверное лучше сразу взять язык, где нет этой проблемы
>>428249
Если программа на С# должна будет обрабатывать символы, потенциально кодируемые больше чем одним двухбайтным чаром, тоже будет проблема с производительностью так или иначе.
>Наверное лучше сразу взять язык, где нет этой проблемы
Чаще этого не нужно, тут пример - "а что если". Шарп/жаба действительно безопасные языки и лучше взять их, чем потом гадать почему у тебя сегфолт у языка, который обещал что их не будет.
А вот реальна проблема, это фрагментация памяти.
>Если программа на С# должна будет обрабатывать символы, потенциально кодируемые больше чем одним двухбайтным чаром, тоже будет проблема с производительностью так или иначе.
Мало что об этом знаю, но дума 90% будет лучше использовать два байта, чем четыре (что неверно про один байт utf-8). Не работал с экзотикой, там вроде руны есть в шарпе.
Сборка мусора, она либо есть либо её нет, полноценный у нас тут только ты, раз сходу фантазируешь новые термины.
Для вас одаренный, сборку мусора маркетологи окрасили в неприятный цвет и теперь шарахаетесь от неё как геи о вагины.
>У раста тоже есть гц - ARc
Arc это std::shared_ptr в плюсах. Для тебя это является полноценным ГЦ?
Поражает насколько им внушили безопасность раста, он сидит и удивляется. Ты в курсе что safe кода нет даже в стандартной библиотеке?
>Это предположение или ты знаешь что это возможно?
Лол, я и жабу ронял, правда unsafe.
>Arc это std::shared_ptr в плюсах. Для тебя это является полноценным ГЦ?
Да, я даже видел, когда плюсовики писали ГЦ у себя для чего-то. Видимо для каких-то задач она нужна, просто для С++ это дополнительная возможность, а не основа основ.
Ты не ответил на вопрос, видимо это было твое предположение.
Очевидно, что в стандартной библиотеке не обойтись без unsafe кода.
>Поражает насколько им внушили безопасность раста, он сидит и удивляется. Ты в курсе что safe кода нет даже в стандартной библиотеке?
Блядь, так это ваши проблемы, что это ВЫ нормально понять не можете. Ясен хуй, что 100% safe кода в системщине не может быть, да и никто не заявлял этого. Как ты себе это представляешь? Смысл как раз в том, чтобы обернуть unsafe-код в обертки и дергать его из safe-кода, т.е. разграничить абстракцией "опасную" область и безопасную.
Что же касается библиотеки, то ее безопасность доказана формальным методом группой ученых с PhD, которые построили модель языка.
>>428324
>просто для С++ это дополнительная возможность, а не основа основ.
Шиза? Пруфов конечно же не будет.
Л - логика.
Спрашивает может ли быть сегфолт в safe коде?
Да, если у тебя подключен и используется unsafe код.
И если у тебя даже в стандартной либе ест unsafe, то логично что у тебя всегда возможен сегфолт (я уже молчу про сишные врапперы).
>Ясен хуй, что 100% safe кода в системщине не может быть, да и никто не заявлял этого. Как ты себе это представляешь?
>Что же касается библиотеки, то ее безопасность доказана формальным методом группой ученых с PhD, которые построили модель языка.
Написать сейф код не можем, но доказать можем. Ты мне сейчас как на лицо нассал.
Чмоня, игнорирующая неудобные вопросы, с двачей конечно же знает больше команды надмозгов с ПхД. Лучше посрать в тред своей шизой и все. Зачем там что-то в интернете читать, а то еще манямирок может треснуть.
Ты забыл, что научный метод отвергает авторитеты и ставит истину выше убеждений.
Ты умудрился высрать исключающие параграфы в одном посте, а я лишь указал тебе на это. То что ты словил фрустрацию с этого, это нормально, ты становишься инженером, вопреки маркетинга.
И да, шарф по прежнему самый безопасный.
Л - логика.
>Спрашивает может ли быть сегфолт в safe коде?
>Да, если у тебя подключен и используется unsafe код.
Не значит. Выше анон уже пояснил почему, возразить ты ничего не смог кроме визгов.
Я же говорю, вместо того, чтобы пойти и прочитать исследования по теме, посмотреть на методы доказательства "безопасности" кода, на аргументы и т.д, проще просто включить дурачка, не понимать контекстов и продолжать разводить демагогию дальше.
Если продолжать твою логику дальше, то безопасности вообще не существует, т.к. на ЭВМ могут оказывать воздействия физические процессы. Тогда зачем что-то пытаться улучшить и формально доказывать? Просто пишем на ассемблерах, ибо абсолютной безопасности не достичь. А если ты признаешь "другие" безопасности, т.е. доказанная безопасность в некоторых рамках, то хули до слов доебываешься?
>Ясен хуй, что 100% safe кода в системщине не может быть, да и никто не заявлял этого. Как ты себе это представляешь?
>Что же касается библиотеки, то ее безопасность доказана формальным методом группой ученых с PhD, которые построили модель языка.
>Ты умудрился высрать исключающие параграфы в одном посте, а я лишь указал тебе на это.
Вот здесь, либо ты доебался потому что веришь в абсолютную безопасность(что не правда), либо же ты способен принять некую модель с безопасностью в определенных рамках и просто доебался, ради доебывания. В любом случае, ни один из вариантов тебя не красит.
Код либо безопасный, либо нет. Если в безопасном коде уже есть небезопасный код из стандартной либы/враппера, то безопасным он быть уже не может априори, тут даже докторскую не надо защищать.
>возразить ты ничего не смог кроме визгов.
Это вы визжите, я уже не знаю как вам эту простую логику объяснить.
Если у тебя на первом этаже могут обвалиться несущие стены, но на последнем они крепкие, значит ли что жители последнего этажа в безопасности. Пойди мне на формальном построенном доме докажи это.
>Если продолжать твою логику дальше
Зачем ты продолжаешь чужую логику? Так можно дофантазироваться до чего угодна.
>Я же говорю, вместо того, чтобы пойти и прочитать исследования по теме
Так ты ссылку давал на научное издание? Как я без пруфов пойду читать?
В целом, заметил тенденцию, если растера ткнуть в обоссанные тапки, он начинает вдруг маневрировать, рассказывая что ничего безопасного не бывает и вообще все формально, мол, -"а ты дурочек поверил, у нас то безопасность всего на пол шишечки, так-то".
Гребаные фанатики.
Лол, снова на все неудобные вопросы не ответил, набросав говна и аппелируя к личности. Это еще минимум с этого поста началось >>428335
>>просто для С++ это дополнительная возможность, а не основа основ.
>Шиза? Пруфов конечно же не будет.
где ты высирался, что в расте ГЦ по умолчанию включен и без него нельзя, а вот в плюсах это как опция.
>>428549
>Так ты ссылку давал на научное издание? Как я без пруфов пойду читать?
Оно одно и гуглится буквально по трем словам. Нужно постараться, чтобы при желании не найти.
В общем, ты ЧСВ дегенерат с ФГМ, который ведет диалог просто ради срача, вбрасывая говно на вентилятор. Дальнейший диалог считаю бессмысленным, ибо тебе из-за нехватки знаний о языке нечего сказать и ты сыпишься на самом простом, а посрать и потешить ЧСВ хочется, поэтому и продолжаешь срать своей шизой.
>расте ГЦ по умолчанию включен и без него нельзя, а вот в плюсах это как опция.
Полноценная safe разработка приложения на rust без rc/arc невозможна, на С++ возможна. Следовательно в расте без ГЦ нельзя. Это практически язык с завуалированным ГЦ. Плохо это или нет, уже другой вопрос.
>Оно одно и гуглится
Ок, все ясно с тобой.
>В общем, ты ЧСВ дегенерат с ФГМ
Да у нас тут врач!
>Дальнейший диалог считаю бессмысленным
Слив засчитан, можешь валить.
И зачем тебе столько гигабутов?
В пизде королёк
Почему тогда шарп?
Это копия, сохраненная 28 октября 2022 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.