214 похожих чатов

Программисты на C++, вам вопрос. Вы согласны с утверждением, что

многие(но не все) проблемы крестов в том, что им приходится поддерживать обратную совместимость с С?

11 ответов

6 просмотров

программисты на rust, вам вопрос, насколько больно получать ошибки от компилятора? 😢

Тайп-астронавтика на шаблонах — тоже совместимость с Си?

T::Dïmä-<🐿> Автор вопроса
1
программисты на rust, вам вопрос, насколько больно...

Предполагаю, что получать UB и рантайм ошибки больнее - но это не точно =)

T::Dïmä <🐿>
Предполагаю, что получать UB и рантайм ошибки боль...

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

T::Dïmä-<🐿> Автор вопроса
1
есть такое, но после ноды аж больно получать ошибк...

Ну это типикал для входящих в раст из ноды\пхп\питона итд

T::Dïmä-<🐿> Автор вопроса
Alex Berezhnykh
Тайп-астронавтика на шаблонах — тоже совместимость...

Вопрос конкретно про С а не совместимость стандартов итд

Это были вопросы с подвохом, потому что в моем понимании проблемы не только с совместимостью с Си (:

T::Dïmä-<🐿> Автор вопроса
Alex Berezhnykh
Это были вопросы с подвохом, потому что в моем пон...

Поэтому я написал в скобках "..что многие(но не все) проблемы .."

Не могу сказать, многие ли это проблемы, но вот какие я вижу: * Система макросов, которые протекают куда только можно, а также проектная модель на них построенная (#include). От этого сильно страдает модульность кода как таковая, а также очень грустно становится тулингу - один и тот же файл приходится парсить и компилить (+ резолвить в случае IDE) в разных контекстах (с разными дефайнами); * На мой взгляд, слишком много UB-ситуаций. Не думаю, что в языке с такими требованиями от UB вообще можно избавиться (насколько мне известно, даже из Rust полностью не смогли его изгнать), но вот то, что их настолько много - плохо. Чего только стоит история вокруг std::launder из-за УБ, пришедшего из Си, причем это УБ было сделано из-за возможности оптимизации; в итоге эту оптимизацию реализовали только в одном компиляторе, а пользы она толком и не принесла; * Схожая с предыдущей проблема: слишком многое позволяется, несмотря на то, что почти наверняка код ошибочен. Например на одном из путей управления забыть return; * Стремная грамматика языка, от которой плохо как компилятору, так и прочему тулингу.

Похожие вопросы

Обсуждают сегодня

Если у меня есть такой класс: Object = {} function Object:new(a_name, a_transform, a_color, a_mesh, a_material, a_shader, a_textures) local private = {} private.n...
Cuarno Vile
4
зачем же переименовывать ? чтобы кол-во участников возросло или вдруг IBM от этого снова на свифте начнет кодить ? Я не понимаю что страшного в том что свифт гавно, если это т...
Oleh Nerzh
10
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Гайз, кто-нибудь пробовал запустить probe-rs под камень, которого нет в probe-rs? Мб есть какой-нибудь пример у кого... Через target-gen попробовал сгенерировать chip-descript...
Максим Смирнов
2
здравствуйте. совершаю вот такую вещь: strcpy(line, (char)current_number); где current number — неподписанный шорт, line — массив чаров. ругань следующая: main.c:29:30: error...
Roberto's Ширгозиев
13
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Добрый день! Подскажите, пожалуйста: какими компетенциями нужно обладать, чтобы претендовать на работу эрланг (отдельная благодарность, если про элексир тоже подскажете) разр...
via ☸️ led
20
Всем привет. Ребят подскажите пожалуйста. Вопрос по дизасемблировани. Начну с начала. У меня есть скомпилированная программа на ГО (я разработчик) - в ней есть защита лицензии...
Zloy
11
Можно попросить небольшое ревью кода? Тут немнога, я ничего интереснее не придумал, чем написать аналог tree в качестве практики с cmake. https://github.com/hrimov/tree-unix/...
Andrew Hrimov
11
Карта сайта