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

Насколько фича “track the ownership” Rust’а делает его крутым? я

пока что только про нее отзывы слышал

13 ответов

8 просмотров

ну я же говорю. с ней на расте может писать даже такой питонист как я, не нюхавший крестов

Это значит, что компилятор проверяет условия, за которыми в C/C++/Zig нужно следить самому. Насколько это круто? Кому как.

Было бы классно, если бы это было реализовано. 😉

Alexander Chichigin
Было бы классно, если бы это было реализовано. 😉

Ну я например планирую реализовать это в плюсах когда разберусь с исходниками кланга. С++ как язык интересен тем что многие вещи в стандарте прописаны как UB что значит что поведение в стандарте не прописано и отдано на откуп компилятору. То есть можно написать свое поведение когда при возвращении ссылок на локальные переменные они продолжат жить дальше навернуть поверх этого лайфтайм-анализ и получится тот самый lifetime inference по ссылке выше и при этом это не будет нарушением стандарта с++ 😉

> многие вещи в стандарте прописаны как UB что значит что поведение в стандарте не прописано и отдано на откуп компилятору Гм... Я бы посоветовал для начала выяснить разницу между Undefined Behaviour и Unspecified Behaviour.

Börgar
уб можно доопределить

Ага, доопределить можно, а вот писать нельзя. 🤦‍♀️

И в том и в том случае стандарт не говорит что должен делать компилятор, то есть авторы стандарта не смогли договориться о желаемом поведении и вместо того чтобы фиксировать поведение с которым вторая сторона будет не согласна пометили это как UB и отдали это на откуп компилятора чтобы каждый пользователь С++ смог настроить поведение компилятора на свой вкус

Богдан
И в том и в том случае стандарт не говорит что дол...

Я же не спрашивал Ваши фантазии на тему Undefined Behaviour? Что это такое и какие последствия имеет однозначно написано уже много раз. То, что Вы отказываетесь это понимать и желаете интерпретировать как Вам нравится — Ваше дело. Но при компиляции такого кода реальными компиляторами будут сюрпризы.

Богдан
И в том и в том случае стандарт не говорит что дол...

И мне нравиться такое развитие языка программирования - когда язык развивается не в угоду вкусов каких-то отдельных авторов или участников коммитета а когда язык представляется больше языковым фреймворком - когда стандарт добавляются лишь фичи с которыми будут согласны все а все остальное можно настроить под свои вкусы

В последний раз для тех, кто не в курсе. > UB это одно из валидных состояний кода а не ошибка Undefined Behaviour — это ошибка программиста, это такой код, который запрещено писать, и компилятор реально полагается на то, что кода с UB ему никто никогда не подсунет как на аксиому. На этом считаю тему закрытой.

Alexander Chichigin
В последний раз для тех, кто не в курсе. > UB это...

Ок, закрываем тему, добавлю только что я уже неоднократно поднимал эту тему @procxx чате а там народ как раз считает что UB это не ошибка а возможность для оптимизаций (иначе если бы UB считался за ошибку то такие программы компилятор просто не скомпилировал бы из-за ошибки в коде)

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

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

А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
почому оно не работает?
Vi Chapmann Chapmann
19
Так а кто может спарсить всех участников чата? Идишники
Magic
17
Есть вопрос: допустим есть железка с каким-то интерфейсом(допустим usb), но как по этому интерфейсу железкой управлять неизвестно, прог нету, а управлять очень хочется надо. К...
Mixail Frolov
15
а как ловят такое ghci> res <- getPos2 urlt 0 (alist !! 0) 200 ghci> res SearchAtom (Search "www.google.com" "/search?q=" "Haskell") "haskell.org" (SearchTS [(2024-05-06 07:...
Fedor
14
всем привет почти закончил курс После него можно писать свою операционку? Какие библиотеки надо использовать и куда дальше копать для изучения
Linus
13
Карта сайта