Size: a a a

2020 February 29

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Если речь про memory-safety, то в языках с ГЦ и в том же расте - можно "писать безопасно", т.к. абстракции в них сильно меньше протекают
ffi есть? Значит, нельзя
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Проблема в том, что в плюсах оно может зависеть т.к. подключение библиотеки идёт инклюдами.
каким образом сторонняя либа может зависеть от проекта, о котором ничего не знает?
источник

DS

Doge Shibu in rust_offtopic
Слава
И ведь ты меня вчера ещё спрашивал, а как там с ABI у Ады.
Вопрос в том, что в плюсах без ffi ты можешь таких граблей насобирать на перечении умных указателей, неочевидных UB, всяких приколов move семантики и всяких lvalue rvalue xvalue glvalue prvalue, что будет огонь
источник

DS

Doge Shibu in rust_offtopic
Т-34 85
каким образом сторонняя либа может зависеть от проекта, о котором ничего не знает?
Ты знаешь каким механизмом сторонние либы подключаются в c/с++?
источник

С

Слава in rust_offtopic
Doge Shibu
Вопрос в том, что в плюсах без ffi ты можешь таких граблей насобирать на перечении умных указателей, неочевидных UB, всяких приколов move семантики и всяких lvalue rvalue xvalue glvalue prvalue, что будет огонь
Ну вот если ограничиваться взаимодействием через extern C, то такого не будет, конечно. Но и взаимодействие будет не оч.
источник

DS

Doge Shibu in rust_offtopic
Как он работает с точки зрения компилятора и что происходит, когда ты делаешь #include?
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Только его специализированные версии
правильно. Как они могут давать ошибку при компиляции?

Или тут намёк на хэдер, который идёт с либой? Так это твоя ошибка, что ты неправильно либу используешь, а не "со стороны либы"!
источник

Т8

Т-34 85 in rust_offtopic
Слава
И ведь ты меня вчера ещё спрашивал, а как там с ABI у Ады.
нет, я такого не спрашивал
источник

DS

Doge Shibu in rust_offtopic
Т-34 85
правильно. Как они могут давать ошибку при компиляции?

Или тут намёк на хэдер, который идёт с либой? Так это твоя ошибка, что ты неправильно либу используешь, а не "со стороны либы"!
Имеется в виду, что компилятор тебе выведет именно ошибки в глубине подключенного хедера от либы, а не твоего кода, где ты собственно и сделал ошибку.
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Вопрос в том, что в плюсах без ffi ты можешь таких граблей насобирать на перечении умных указателей, неочевидных UB, всяких приколов move семантики и всяких lvalue rvalue xvalue glvalue prvalue, что будет огонь
можно. А можно и не насобирать
источник

DS

Doge Shibu in rust_offtopic
Т-34 85
можно. А можно и не насобирать
Ну так проблема в том, что чтобы "можно и не насобирать" надо не хило времени угрохать на изучение именно подводных камней различных фич плюсов.

И это будут знания, которые вне плюсов вообще не актуальны.
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Ты знаешь каким механизмом сторонние либы подключаются в c/с++?
знаю. Есть объектный файл с хэдером, объектный линкуется с программой, а в хэдере описано, что можно дёргать
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Как он работает с точки зрения компилятора и что происходит, когда ты делаешь #include?
тупо включаем содержимое файла. И? Как мой проект окажется внутри сторонней либы?
источник

DS

Doge Shibu in rust_offtopic
Т-34 85
тупо включаем содержимое файла. И? Как мой проект окажется внутри сторонней либы?
Обьявления твоего проекта в хэдерах подключенных выше хедера либы могут создать проблемы для того, что будет описано в хедерах либы.
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Имеется в виду, что компилятор тебе выведет именно ошибки в глубине подключенного хедера от либы, а не твоего кода, где ты собственно и сделал ошибку.
так так и надо писать, что "я неправильно использовал инфу в хэдере либы"
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Ну так проблема в том, что чтобы "можно и не насобирать" надо не хило времени угрохать на изучение именно подводных камней различных фич плюсов.

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

DS

Doge Shibu in rust_offtopic
Т-34 85
такова селяви, другие языки не исключение
Да, но в них этих знаний нужно на порядок меньше.
источник

DS

Doge Shibu in rust_offtopic
В особенности, если речь про memory-safety и вопросы около него
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Обьявления твоего проекта в хэдерах подключенных выше хедера либы могут создать проблемы для того, что будет описано в хедерах либы.
неправильный подход. Это не либа тебе что-то должна, а ты должен под неё подстраиваться
источник

Т8

Т-34 85 in rust_offtopic
Doge Shibu
Да, но в них этих знаний нужно на порядок меньше.
я с этим не спорил
источник