|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
Rust vs C++26.06.2020, 16:10. Показов 49574. Ответов 660
Метки нет (Все метки)
0
|
|
| 26.06.2020, 16:10 | |
|
Ответы с готовыми решениями:
660
[Rust] Обсуждение возможностей и предстоящей роли языка Rust [Rust] Как привязывать WinAPI-функции к коду на Rust? Расскажите о своём опыте программирования на Rust |
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
||||||||||||
| 02.07.2020, 20:05 | ||||||||||||
|
Вести разумную дискуссию (включая чтение аргументов) вы также не способны. Высокоуровневые абстракции можно писать на любом языке, хоть на ассемблере. На самом же деле высокоуровневость языка определяется тем, оперирует ли язык терминами процессора или абстрактными понятиями. Очевидно, самым низкоуровневым языком является Ассемблер (он оперирует терминами процессора напрямую), чуть выше Си,С++, Паскаль и т.п.: они тоже оперируют машинными данными, прикрытыми тонкой оберткой абстракции. А вот скриптовые языки уже знать не знают про процессор. Для того же Баша существуют только строки и утилиты. Про эффективность высокоуровневых языков - она обязательно будет ниже, чем у низкоуровневых, по определению. Это плата за слои абстракции и простоту разработки. Это не отменяет необходимость компилируемых языков. Как минимум, кроме них писать интерпретаторы/JIT-компиляторы не на чем. Хотя печальная тенденция писать все подряд на не-компилируемых языках явно прослеживается, с этим не поспоришь. Поэтому единственный шанс вытеснить С/С++ из их ниши - отбросить совместимость. Причем хорошо бы и модель компьютера использовать более современную, учитывающую предсказания переходов, кэши, многопоточность и т.п. Вот такой подход потенциально сможет обойти по эффективности не только С++, но и Си.
1
|
||||||||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||||||||||||||
| 02.07.2020, 22:02 | |||||||||||||||||
|
Добавлено через 42 секунды Добавлено через 3 минуты При этом увы и ах но переносимость между осями абсолютной не будет в принципе - есть разница между АПИ и всегда нужны будут адаптеры для ее сокрытия. Добавлено через 2 минуты
Добавлено через 4 минуты Мало того что вы подразумеваете под типа старыми делами из С? Сырые указатели или что еще? Без них все равно обойтись не удастся - это как минимум то из чего собираются умные указатели. А заносить это "под капот" категорически нельзя - потеряется кастомизируемость автоматики. То что это в расте куда то упрятали моментом отбросило его в развитии на уровень 60-х. Добавлено через 12 минут Добавлено через 1 минуту Добавлено через 24 минуты Добавлено через 32 минуты Добавлено через 7 минут Привести пример где что то превосходило бы плюсы в разработке софта вы так и не осилили.
0
|
|||||||||||||||||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
||||||||||||
| 03.07.2020, 07:45 | ||||||||||||
|
Но могу повторить: переносимость кода, не завязанного на конкретную машину всегда будет выше, чем у более низкоуровневого кода. Так программы на Питоне или Джаве запускаются на разных ОС вообще без каких-либо усилий, просто потому что интерпретаторы уже написаны. А для браузерных языков это вообще обязательное требование. Низкоуровневые же языки (включая С++, естественно) по определению завязаны на конкретную архитектуру. С++ взлетел именно за счет совместимости на уровне исходного кода, а вовсе не за счет какой-то мифической архитектуры, которую вы тут выдумываете. Просто на момент появления языка уже были люди, способные на нем писать и воспринимать новые фишки. А это огромное преимущество для любого нового языка. Совместимость на уровне исходного кода никак не связана с соглашением о вызовах. Никакой оптимизатор не сможет изменить архитектуру и логику программы, а логика ограничена терминологией языка и используемой моделью. Скажем, в С++ довольно плохо с многопоточносью, причем именно по причине лоскутного развития. Многопоточность появилась относительно поздно и не стыковалась с моделью вычислителя, вот и пришлось прикручивать ее сбоку. И оптимизатор не умеет ей пользоваться до сих пор. Нет, для объединения нескольких исходных кодов в одном проекте надо использовать только раздельную компиляцию. Bash и другие шеллы для автоматизации системных утилит. Python, Lua, ... для встраивания в другие программы Fortran, Python для научных расчетов Java, C#, скриптовые ... для кроссплатформенной разработки без необходимости перекомпиляции Специализированные веб-языки Си, Ассемблер для низкого уровня Ничего из этого вы так и не опровергли - только игнорировать пытаетесь. Добавлено через 7 минут Ах да, главный вопрос: если, как вы говорите, существует идеальный язык, С++, то почему им не пользуются все? Потому что они глупее Fulcrum_013'а? Допустим. Но в отличие от вас, они пишут реальный код, решают реальные задачи - так может лучше послушать их.
0
|
||||||||||||
| 03.07.2020, 09:15 | |
|
COKPOWEHEU, тут одно из двух: или он тролль или он думает, что потоки его бреда имеют смысл..
В обоих случаях лучше оставить его в покое, так как он на этих 11 страницах уже выписал весь бред, который он писал в других темах, и начал повторятся. Дальше всё пойдёт по кругу.
0
|
|
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||||||||||||||||
| 03.07.2020, 11:52 | ||||||||||||||||||||
|
Приведите конкретные примеры. Так понимаю с ними точно так же как с примером высокоуровневой абстракции на асме? Добавлено через 1 минуту Добавлено через 7 минут Добавлено через 2 минуты Добавлено через 2 минуты Единственный недостаток опять же на уровне библиотек - т.е. легко устраним. А именно нет штатного переключения с атомарных счетчиков ссылок на обычные неатомарные. А количество атомарных счетчиков в нормально распараллеленной программе должно стремится к нулю. Добавлено через 4 минуты Добавлено через 58 секунд Добавлено через 3 минуты Добавлено через 2 минуты Добавлено через 2 минуты Добавлено через 4 минуты Т.е. все в языке сделано в первую очередь для универсального применения - т.е. возможности быстрой и простой подстройки всего и вся к конкретной задаче. И ничего удобнее чем полноценный механизм шаблонов + сишные примитивные типы для такой подстройки быть не может. Добавлено через 3 минуты Подавляющее большинство софта вокруг выполняющие 99+% обработки информации написаны таки на плюсах. Добавлено через 7 минут Вы по ходу даже смысл слова абстракция не понимаете. Т.е. вы банально никаких знаний в области разработки софта не имеете, никогда разработкой не занимались от слова совем, только несете полный бред собранный из выкриков безмозглых (ну или безсовестных) евангелистов, не имеющий ничего общего с реальностью. Добавлено через 12 минут При этом возможность инстанциирования плюсовых шаблонов в новом языке так же как и шаблонов новога языка в плюсовом коде потребует наличие кода шаблонов. Раздельная компиляция в данном вопросе не применима от слова совсем, во всяком случае в современном ее виде. Тут поможет разве что полный переход к линктайм кодогенерации. Добавлено через 13 минут Ну да его именно для этого затевали 70 лет назад и 70 лет назад альтернативой был разве что ассемблер, то таки да тогда научные расчеты на нем были удобнее. Но по сути фортран - универсальный язык, т.е. пригоден абсолютно для всего, такого тогда когда его проектировали даже в мечтах не было. Но как бы даже с тем что в него опосля напихали все достижения алгола, что позволяет ему до сих пор оставаться на плаву, там где есть овердохрена легаси, не делает его выше даже С 70-х или виртовского паскаял - это примерно тот же уровень развития языка. Но после фортрана уже несколько поколений универсальных языков поменялось которые в первую очередь на счет по наукам были ориентированы. И вершиной развития в этом направлении являются таки плюсы. Добавлено через 7 минут При этом докомпилировать плюсы из промежуточного представления на старте или при развертывании тоже никто не запрещает - это не от дизайна языка зависит а от реализации кодогенератора. Другое дело что сама концепция подобной докомпиляции - фейл по определению. Все эти горе-вездеходы не пригодны к написанию либ для самих себя. Поэтому либы нативные придется точно так же компилить под все поддерживаемые таргеты (что кстати экономит кучу машинного времени), докачивать и ставить, что полностью нивелирует вездеходность никому нафиг не нужной скриптообертки. Поэтому с плюсами получило развитие разве что исполнение промежуточного представления на виртуальной машине, там где нативный код по соображениям безопасности нельзя запускать от слова совсем (про плюсы в браузере слышали? Очень скоро станет маст-хев опцией для всего веба).
0
|
||||||||||||||||||||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
||||||||||||||||
| 03.07.2020, 12:02 | ||||||||||||||||
|
Не по теме:
Желающие также могут обратить внимание, что в отличие от Fulcrum_013, я стараюсь приводить не только хвалебные высказывания, но и недостатки, и альтернативы, и аргументы. Те языки, которые этим не связаны, препроцессор не используют и ничуть от этого не страдают. Однако для разработки объективно более хорошего языка это сильный тормоз. Собственно, я это уже перечислял. Заворачивать самому, естественно, не вариант - это не будет работать со сторонними библиотеками. А вот разработчики стандарта это сделать (и навязать остальным!) это уже вполне по силам. Но даже если закрыть глаза и поверить вашей "статистике", ничего не изменится. Тем самым 90% (а чего не 99% или не 999%?) тоже нужен инструмент для разработки. Или вы теперь будете утверждать что программированием должны заниматься только адские хакеры? Так все равно ваша теория ломается - даже адские хакеры используют и Си, и функциональщину. Не по теме: Эх, что-то не верится что сумеете воспользоваться, но хоть шанс будет.
1
|
||||||||||||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||
| 03.07.2020, 12:06 | ||||
|
Добавлено через 3 минуты Так приведите хоть один пример где питон хотя бы удобнее. Таких примеров за десятилетия существования питона не появилось ни одного. Зато криков так и осталось выше крыши, хотя для счета по наукам из пайтона средство как из говна пуля. Добавлено через 46 секунд
0
|
||||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
|||
| 03.07.2020, 12:09 | |||
|
0
|
|||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||||||
| 03.07.2020, 12:16 | |||||||||
Добавлено через 1 минуту Добавлено через 4 минуты
0
|
|||||||||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
|||||
| 03.07.2020, 12:17 | |||||
|
Сам я для научных расчетов использовал Си, Баш, а сейчас адаптирую Lua. Коллега, спец по атомно-силовой микроскопии, использует Lua (собственно, именно поэтому и туда полез). Как бы вы ни изворачивались, как бы ни подгоняли статистику, мы видим разнообразие языков. Если бы какой-то из них во всем превосходил другие, он бы его просто вытеснил. Впрочем, элементарная логика вам недоступна, это вы уже продемонстрировали.
0
|
|||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||
| 03.07.2020, 12:28 | ||||
|
Добавлено через 7 минут Но и решают эти разрабы скопом 1% задач - продуктивность при таком подходе будет никакой от слова совсем. А все что создано позже плюсов/ады - это языки для привлечения неквалифицированных раззработчиков к примитивным задачам, на которых профессионалов не хватает. Они по определению уступают профессиональным языкам во всем.
0
|
||||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
|||||||
| 03.07.2020, 12:35 | |||||||
|
Это то же самое что сказать что С++ умеет оперировать графикой, хотя по факту там вызов сторонних библиотек. Добавлено через 6 минут Объективно же это - вопрос привычки.
0
|
|||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||
| 03.07.2020, 12:52 | ||||
|
Добавлено через 4 минуты Т.е. они вынуждены использовать менее приспособленные языки в следствие своей абсолютной безграмотности в специальности. Плюсы им не помощник в вопросе повышения продуктивности. Т.е. еще раз - квалификауия это по большому счету способность создавать постановку задачи - т.е. выделять высокоуровневые абстракции. Язык - это всего лишь ручка которой записываются абстракции. Но зачем ручка тому кто не понимает как ей можно писать? Так и шкрябают стилусом по глиняной табличке. Дай им ручку будт шкоябать по глиняной табличке точно так же, еще и руки чернилами перепачкают. Добавлено через 12 минут Еще раз - в вопросе повышения продуктивности язык может либо мешать реализовывать абстракции либо помогать. Но для начала их надо уметь выделять. Плюсы в плане реализации высокоуровневых абстракций гораздо лучший помощник чем все остальные, что и делает их гораздо более приспособленными к решению любых задач.
0
|
||||
|
|
||||||
| 03.07.2020, 12:52 | ||||||
|
Нельзя же слепо топить за С++, вот кусок кода, на который было потрачено (не мной) некоторое время на поиск бага
0
|
||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 03.07.2020, 12:54 | ||
|
0
|
||
| 03.07.2020, 12:54 | |
|
0
|
|
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||
| 03.07.2020, 13:14 | ||||
|
Добавлено через 7 минут Не забывайте что в С++ окромя STL есть еще и С++, в отличии от к примеру пайтона или шарпа. Добавлено через 12 минут Т.е. получить что то более близкое к идеалу можно развивая ядро плюсов, но никак не путем полного обрубания его возможностей. Но как бы коммитет для того и создавался чтобы затормозить развитие языка. По большому счету единственный недостаток С++ - это именно коммитет.
0
|
||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
| 03.07.2020, 14:04 | |
|
Croessmah, Не считаю нужным. Демократия в таких делах неуместна - это банальный авторитет большинства. Но наука а тем более техника авторитетов не признает. Доказано и Страуструпом и Ритчи и многими другими.
Особенно показательна в этом плане история алгола. И рождался коммитетом 10 лет и умер практически сразу, а созданный без всяких коллегиальных бредней фортран, который оный алгол должен был типа заменить, и сегодня живее всех живых.
0
|
|
|
Неэпический
|
|||
| 03.07.2020, 14:08 | |||
|
Fulcrum_013, я ж предлагаю внедриться, затем возглавить и, впоследствии, развалить данную организацию изнутри.
Добавлено через 1 минуту Так сказать, двух зайцев сразу.
0
|
|||
| 03.07.2020, 14:08 | |
|
[Rust] Time
Frontend Для RUST Просадки FPS в Rust Rust ошибка E0623 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|