Мне думается, что ты не прав насчет «вот-вот релизнется».
Я за всех не скажу, для разных программ разные языки нужны, но лично мне ржавчина очень даже нужна. Да и списоки рассылки ржавчины и реддит тоже народ посещает регулярно, посты там и сям в бложиках мелькают - значит не только мне оно нужно-интересно.
http://rust-ci.org/projects - не так и много, но кое-какие библиотеки все-таки есть. Большая часть даже в актуальном состоянии и собираются ночной сборкой компилятора ржавчины.
назови по подобию Го к Жабке как С к ?(язык 60ых с ...) оки?
от Си в Го Кен Томпсон(один из той целевой аудиторию комьюнити в которой сварили С (есть же христоматийный пример когда Д.Ритчи И К.Томпсон пилили многострочный идентичный код) и Пайк( т.е практика программирования).
т.е Си содержит в себе компромисы 70ых.
Го содержит компромисы 2010ых
многонодовые(либо распределёные либо многоголовая машина) - т.е те апаратные средства на которых становится выгодным писать код как набор взаимодействующих узлов-исполнителей , для чего и прикручен в Го csp
в С тоже вшыто намертво вызов функций через стек - тоже не настолько перенасим как некоторые языке предшественики - однако 95% микропроцессоров 70ых и позже имели такую реализацию стека которая как минимум не мешала реализациям С.
тоже и со сборкой муссора - учитывая нынешнии размеры памяти на многих задачах вполне такой куцей реализации сборки мусора как модная как раз таки на юниксах «получил ошибку упади» т.е перепуск с сохранёными(сериализированными) нужными значениям - т.е возврат в систему всех памяти.
но и это вообщето не нужно. ибо как вымерли платформы без апаратных стеков (или без остутствия индексных регистров) так и вымрут(если уже не ) без mmu
Не очень понимаю, кому и зачем может быть полезен go. На замену он годится разве что питонам и руби, да и яве со скалой в вебе. Сишникам он не нравится, плюсистам тоже
Каких характеристик. Язык ничего не умеет. Ни каких фич. Вообще. При этом он проигрывает си как в скорости, так и в низкоуровневых плюшках, а ведь это может служить единственным оправданием убогости возможностей.
ну по умолчанию нет. Но можно добавить через тот же cgo.
Или приводить к типу unsafe.Pointer (оно uintptr(оно вроде типа unit)) там их месить, и обратно в указатель.(я правда так на практике не пробовал, а где-то что-то такое видел/читал в интернете)
1) Тормоза. 2) Код на указателях выглядит ужасно, кроме разве что простых примеров - в си изначально делают топорно и понятно(для знающих си) и даже в c++ проще использовать набор умных указателей, ссылки, сырые указатели(когда нужно), пулы, boehm gc или свои велосипеды под конкретную задачу, чем в расте делать что-то серьёзное. 3) Нет никаких соблазнов для сишников и плюсовиков, для плюсовиков были, но у них активно пилят язык и есть библиотеки в духе boost(а для другой школы - Qt). В результате смысла перехода на rust даже теоретически нет. Код вряд ли станет проще, работать все будет точно не быстрее, время разработки вряд ли уменьшится.
Твоё понимание, ясное дело, погоды никому не делает. Ну это само собой разумеется. Гораздо важнее в этой ситуации понимание игроков в более выразительной весовой категории, среди таких: google, youtube, сanonical, cloudedlare, disqus, tumblr, soundcloud, сотни их публичных и тысячи неназванных. Вот именно это понимание большинство из нас находит действительно интересны и значащим, оно говорит сразу о многом — и о том, что твоё жалкое понимание, если ты не назовешься, можешь оставить при себе.
Сишникам он не нравится, плюсистам тоже
Мой милый пациент, ваши мир, очевидно, тесен и убог.
Смешные лалки. Нравы «сишников и плюсистов», в общем случае, не относятся к предмету качества конечного продукта и правильного взгляда его реализации; «сишники и плюсисты» — это, по большей мере, каста нисколько не примечательных, чем кто-либо, паникёров, и, зачастую, гораздо чаще чем того можно ожидать, смесь дебилов с быдлом крайней стадии; «cишники и плюсисты» — не преувеличивая и не занижая их значения — живут за счёт образованной в размахе со временем огромной экосистемы, удобной для их не самых поворотливых задниц, — всё остальное ничего не значит и ни о чём не говорит; «сишники и, чёртовы, плюсисты» абсорбируются желанием, слепой идеей, оставаться в деле сколь угодно много — но, согласно какому-то закону, который я почему-то вдруг забыл, такого быть не может.
Гораздо важнее в этой ситуации понимание игроков в более выразительной весовой категории
Игрокам в этой категории плевать слюнями на языки программирования и их фичи. Они будут использовать то, что выгодно использовать исходя из ситуации на рынке труда и перспектив обучения. Если специалистам, использующим С и С++ не нравится Go, то никакие игроки ничего изменить не смогут - им это не нужно. Им насрать на Go точно так же, как и на C, им нужно чтобы над их проектами работали специалисты, которые позволят им запилить качественный проект в приемлемый срок. Все.
Нравы «сишников и плюсистов», в общем случае, не относятся к предмету качества конечного продукта и правильного взгляда его реализации;
А никто тут не говорит о качестве конечного продукта и правильном взгляде на его реализацию. Тут речь о том, будут ли специалисты переходить на Go. Ответ очевиден - нет. Ибо Go ничего не способен дать программисту. Однако, если пхпэшники/питонисты перейдут на него, это может сказаться положительно на отрасли. Пожалуй, это единственный возможный плюс.
Покажите мне проект на си, который авторы решили переписать на go.
Не покажу, но вот что важно иметь ввиду: одним лишь восхищением языком X совершенно ни один дурак не хватится в клинических конвульсиях за переписывание сотен тысяч строк legacy-кода (его ведь придётся не просто переписывать, архитектуру-то важно переосмыслить, или как предлагаешь?) — поэтому старые кодовые базы, пока это не есть критично, трогать как ни странно бессмысленно. С другой стороны — новые масштабируемые проекты — часто ли их пишут на этих ваших сях, плюсах, что, серьёзно? Да потому что не выгодно и смешно — вот почему. Си и даже плюсы ретируются уверенными шагами, тех. прогресс не стоит на месте.
Хотя, знаешь, такие проекты есть. Как пример, Google.
«будут ли специалисты переходить на Go» — вот когда придут и/или потребуются рынку специалисты на Go (не суть), тогда и посмотрим на принципиальных сишников.
Ответ очевиден - нет. Ибо Go ничего не способен дать программисту.
Прости, но, опять-таки, несёшь какую-то необоснованную чушь. В твоём ключе первичным специалистом является образ программиста на C/C++. Да, конечно, они специалисты и у них особая миссия, но в ней не наблюдается ничего, что бы их выгодно отличало от других — программистов на том же Go. Время каждого проходит.
вот когда придут и/или потребуются рынку специалисты на Go
Рынку насрать на язык, еще раз говорю. Рынку нужны люди. Язык сверху менеджеры не спускают. А если и спускают, то только в говноконторах. В любом нормальном проекте выбор языка и других инструментов лежит на плечах технического руководства. Хотя в плане языка еще большую роль играет наличие специалистов на рынке труда. Поэтому «убеждать» нужно технарей.
Единственное исключение - это распространения java, там был, наоборот, скорее маркетинг. Но, как я уже и говорил, гугл не спуститься на этот уровень и давить своей поделкой не будет. Надеюсь.
Конечно, только на них и пишут все. […] От мейлуршников и яндекса до фейсбука.
Известно почему, они все из разряда legacy-общества: во времена их становления альтернативы не особо жаловали, да, чего так, их же вовсе не было, о чём речь. Новые продукты — новая история. Как-то так.
Яндекс ведь не так давно начал использовать и Go, но до сих пор это не отражается в вакансиях, да и вряд ли станут. Не удивительно, что таким образом работает не один яндекс: обучить C/C++ программистов языку Go — не мешки ворочать. Поэтому рассуждать об использовании языков в том или ином проекте на основе их вакансий и вакансий в общем на рынке — не совсем правильная идея.
У Rustика до сих пор не сформировалось централизованное, удобоваримое, community - вот интересно, как же это он собирается развиваться, - вспоминая golang, оно существовало задолго до релиза, вместе с пацанчиками росли всякие полезности, впрочем, некоторые успешно забывались, умирали, но общему прогрессу, по правде, ничего же не мешало. Ну, это, реддит-то, понятно, не совсем то, т.е. совсем даже не то. В 2009, по данным тиоба-*уёба, Go так вообще занял первое место - а rust чё-то ну прям ленивенький - или у них там политика такая, отчасти странноватая, тихони какие-то. Эх.
Для новых проектов тоже используют те же инструменты. Да, код тоже старый еще используется. Проблема в том, что когда ты, например, сжимаешь трафик вплоть до всякой мелкой возни с битами, интервалами вместо значений и пр. херни, тебе не до go. И вообще на си это выглядит красивее и лаконичнее. Ну С++ может добавить пару симпатичных штрихов. Когда я пытался экспериментировать с D, Rust и Go, я всегда мысленно(и не только) пытался понять, как будет выглядеть мой код или код проектов, которые мне интересны. Получалось еще хуже, чем С или С++. А то, что было можно, я давно уже переписал на питоне. Вот эту часть может и можно на Go перевести. Но не сишную.
Замену C++ можно сделать(с Си сложнее), но смотреть нужно в ту же сторону - язык должен быть ориентирован на рациональность(потенциальную и реальную) имплементации фич. Да и нечего к ним добавить, по большому счету, разве что улучшать и улучшать всевозможный контроль и работу во время компиляции, но «рантайм» трогать смысла никакого нет. ИМХО.
Выше уже сказали, что код, генерируемый не-релизным компилятором для не-релизного языка, всего в 2 раза проигрыват Си++? Окей, тогда я не буду повторяться.
2) Код на указателях выглядит ужасно
Код на каком языке?
си изначально делают топорно и понятно(для знающих си)
Си хорошо умеет делать только одно - месить память. И в более-менеее сложной задаче это 0.1% кода. Во всем остальном Си убог чуть менее, чем полностью.
и даже в c++ проще использовать набор умных указателей, ссылки, сырые указатели(когда нужно), пулы, boehm gc или свои велосипеды под конкретную задачу,
Боже мой, сколько умных слов. Просто для протокола: умные указатели, сырые указатели, пулы и велосипеды можно делать и на Rust (сырые указатели встроены в язык). Насчет boehm gc не уверен, но зачем он? В Rust уже был сборщик мусора, и его можно будет добавить через библиотеку.
чем в расте делать что-то серьёзное
Умные указатели и их аналоги в Rust уже есть, пулы делаются за день, а велосипеды писать неважно где - на то они и велосипеды.
3) Нет никаких соблазнов для сишников и плюсовиков, для плюсовиков были
Проблема в том, что Си-программисты очень консервативны, до луддизма; плюсовики же привыкли мастурбировать шаблонами. Если добавить к этому естественную инерцию готовых кодовых баз, шансы Rust на взлет невелики. С другой стороны, многие понимают, что Си давно устарел и нуждается в замене.
В два раза - это более чем дохрена. Даже для незарелизенного языка. Тем более, что пилят давно уже.
Код на каком языке?
На rust. На си такой код выглядит гораздо проще и понятнее. Даже на c++ закорючек меньше.
Я знаю, что все перечисленное в том сообщении есть в rust, я говорю об убогости этого. Код такой смотрится как кусок говна. Неужели непонятно, что си и c++ берут как раз для таких задач?
Да, замена c++ была бы нужна, но её нет. Ни go, ни rust, ни даже D.
Я знаю, что все перечисленное в том сообщении есть в rust, я говорю об убогости этого. Код такой смотрится как кусок говна
Код в студию.
Неужели непонятно, что си и c++ берут как раз для таких задач?
Я 20+ лет пишу на Си и Си++, так что я знаю, для чего они берутся. Но еще я знаю, что Си - безнадежно устаревшее говно, а Си++ - устаревшее монстроидальное говно.