Обновить
0

Пользователь

1
Подписчики
Отправить сообщение

Ну например

char str[] = "xz";
void* ptr = str;
const void xz;
*ptr = xz;

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

Возникает противоречие либо все ваши коменты в этой ветке бессмысленны либо все таки смысл создания такого языка есть, но вам этого делать не хочется. Это нормально, но тогда не удивляйтесь, что вашу идею с 0 размером войда никто серьезно не воспринимает т.к. обоснованно опасаются за проблемы которые это несёт. Вы утверждаете, что проблем нет коллективное мы вам не верим, мысленного экспиремента, даже не эксперимента, а просто обрывков рассуждений не достаточно.

Я думаю эта очевидная идея не пришла в голову только лишь вам. Я не знаю, но предполагаю, что ее реализация сложнее/хуже в реалиях 70х годов чем запрет на значение. У вас есть ллвм можете сами попробовать сделать Си где войд размера, 0 но имеет значение и посмотреть сколько проблем вылезет по дороге.

Будет отличное чтиво если ещё и статью по результатам запилите.

А эта теория уже была тогда? Ну так то да сишный войд это юнит, а невозможность инстанцирования вероятно сильно упрощает язык типа сколько байт занимает значение? А массив? А если это мембер структуры? А нужен ему адрес? А зачем? Да и кому вообще нужен массив/мемберы юнитов/войдов? Можно конечно заморочиться и сделать специальные оптимизации везде где встречается подобная дичь, но это как раз и есть усложнение компилятора. Можно ничего не делать, но тогда драгоценные байтики памяти/регистры для аргументов/результата тех времён расходуются. Думаю поступили практично нет человека значения нет проблем.

Как отличить хорошего врача от посредственного

Да никак, смиритесь.

Давайте копнем глубже, а зачем вам хороший врач? Представляю ваш шок сейчас, как зачем это же очевидно зачем. Неа, вообще не очевидно и позвольте мне объяснить что вам НЕ нужен хороший врач.

Когда у вас возникает самая частая проблема в любой сфере вы к кому обращатесь к хорошему специалисту или дешевому? Правильно к дешевому, просто потому что любой специалист справиться с самой частой проблемой.

Взгляд с другой стороны, если вы сами хороший специалист в чем то вам вообще интересно заниматься стандартными проблемами? Неа, вот вообще не интересно, хочется заниматься тем с чем другие не справляются.

Третий взгляд на проблему, если вы организатор бизнеса то ваша задача иметь много дешёвых специалистов для решения стандартных проблем и 1-2 хороших для сложных, так экономически рационально.

И так если у вас стандартная/частая проблема то вам не нужен хороший врач. Вы не интересны хорошему врачу, и бизнес будет рекоменжовать вам врача подешевле. Это правильно с любой стороны.

Если у вас сложная проблема то вам не повезло и вы все равно не сможете понять где хороший врач пока у вас не появится ваш собственный опыт лечения вашей проблемы, да даже и с опытом это будет угадайка.

Статистика может ответить на вопрос а был ли когда то в прошлом этот конкретный врач хорошим, и это конечно коррелирует с тем какой он сейчас, но у вас не будет доступа к статистике, а у кого он будет не будет знаний как это посчитать, а у кого будут знания не будет правильно накопленной статистики вот такая ирония.

В конечном итоге вам не важно хороший врач или посредственный вам важен хороший результат. Хороший результат возможен и с посредственным врачом тоже, но с меньшей вероятностью. Смысл в том что хороший результат не гарантирован в случае хорошего врача, поэтому я лично вообще не парюсь выбором и иду туда где удобней, но у меня и проблемы стандартные.

А у кого проблемы не стандартные то вам не повезло.

Из опыта использования балансированой рекуперации + кондиционеры в каждой комнате более 6 лет уже, хочу сказать что как и все любители (в том числе и я) вы допустили классическую ошибку не поставив входной фильтр. Он действительно нужен. У меня в рекуператоре стоят фильтры, но приходится лазить и чистить их, а мой чердак значительно менее удобный чем у вас максимальная высота 1 метр.

Для увеличения эффективности вентиляции посмотрите в сторону сбалансированной вентиляции это когда приточная + вытяжная в каждой комнате. Ну а если решите ставить кондиционеры то посмотрите ещё и в сторону рекуператора иначе придется брать кондеи помощнее ну и платить больше как за них так и за электричество.

Рекуператор не обязательно покупать, есть видосики на Ютубе как сделать своими руками из жести, но это на любителя я просто купил лосней. У меня работает 24×7 уже 6 лет, ночью в спальнях днём переключаю на ливин эрию. Это тоже было не идеальным решением, но почти в 2 раза дешевле.

Сегодня я бы у себя сделал 2 отдельных системы. Первая на все спальни, а вторая на ливин эрию. В каждой системе фильтр + рекуператор (он же сбалансированная вентиляция) + канальный кондей и добавил бы ещё канальный осушитель (у меня тут зимой бывает под 100% влажности месяц подряд). Да не дёшево, но того стоит.

А да никаких умностей в управлении и уж тем более облаков даже на пушечный выстрел я бы не подпустил, но это имхо. По моему умный дом это не тот которым можно управлять с телефона, а тот которым НЕ нужно управлять вообще и нет потребности в интернете/локальной сети. Все должно работать и через 20 лет после того как вы решите продать дом кому то у кого лапки и сено, ну разве что замена расходников в фильтрах не входит в это требование.

Ну не знаю, в наших пинатах фермеры (не все конечно) коровам на шеи вешают ошейники с жпсом и электрошоком. Зачем? Потому что так можно сделать виртуальный забор. Координаты отслеживаются по жпс и при выходе коровы за пределы участка ее бьёт током. Так дешевле чем заборы делать + там ещё пытаются добавить датчиков аля пульсометры и все такое что бы ещё и за здоровьем следить что бы надои выше были.

В общем без электроники тоже можно обойтись, но результаты заметно хуже получаются это значит, что в долгую почти все фермеры будут этим пользоваться. Разведение оленей в этом контексте это как суперпупер органик шмарганик мы упоротые фанатики не пользуемся вашими бесовскими технологиями хозяйство. Ну будет парочка, но большинству не важно существует они или нет, а массовое сельхоз производство уже давно без электроники не может обойтись иначе 8 миллиардов не прокормить.

Ставишь бряку в файле xxx.rs подключаешь какую нибудь зависимость где есть файл с тем же именем и твоя бряка срабатывает в обоих. Я как то неудачно назвал файл очень популярным именем и получилось что одна бряка срабатывала в 5 местах - можете сами представить насколько это помогает отладке.

Допустим бряка сработала и к счастью где надо и нужно посмотреть строку. Так сложилось что мне надо дебажить много нетривиального динамически сгенерированного эскуэля, там вот строки с квериками получаются длинными, и дебагер или вскод (я не разобрался кто виноват) заботливо для вас обрезает строки, можете представить как это помогает в отладке.

И вот наконец то бряка сработала и там где надо, и даже строка с квериком оказалась не очень длинная, но у вас цикл по контейнеру в функциональном стиле т.е. лямбда в лембде и лямбдой погоняет. В студии я просто перемещаюсь по стэку и все локальные данные доступны, а вскоде это боль 80 уровня понять кто на ком стоит категорически не возможно.

Там ниже пишут про иронию сарказм и прочее в контексте принтфа вместо отладчика так вот это ни фига не ирония и не сарказм потому что не примитивная отладка в расте это настоящая боль, а когда она примитивная то оказывается она и действительно не нужна.

У меня тут парсинг вашего русского языка выдал ошибку неоднозначности. Есть два варианта как это можно прочитать:

  1. не (превращаются во второй контур логики и перехватываются как можно ближе к точке возникновения) == не второй или не перехватываются

  2. не превращаются во второй контур логики и перехватываются как можно ближе к точке возникновения == не второй, но перехватываются

Так вот если первый вариант верен то я с вами полностью согласен, а если второй то категорически не согласен.

Я почти согласен с автором статьи, в плюсах эксепции (и то как он их правильно использует - кэтчи как можно дальше от траев по стэку) конечно очень удобно, а экспектед имхо не взлетит без аналога растовского ?.

С другой стороны (я не проверял все комментарии) я не нашел упоминания о том, что в расте паники по умолчанию на многих платформах это как раз и есть эксепции. Документация рекомендует не перехватывать паники просто так, а делать это на границе раста и других рантаймов.

Это рекомендация сугубо идеологическая, я перехватываю паники точно также как автор статьи эксепции - как можно дальше/глубже по стэку от самой паники. Это позволяет в расте получить идеальный сетап, резалт для того что нужно обработать по месту и эксепции для залогировать и продолжить для всего остального.

Где же нужно ставить кэтчи? В цикле обработки сообщений/команд/коннекций/реквестов/итд. Главный маркер здесь какой то цикл который запускает независимые друг от друга вычисления. Тогда эксепция просто абортит какое то одиночное вычисление, а цикл продолжается.

В расте если у меня нет кода обработки ошибочного резалта, то я просто вызывают экспектэд и получаю разумное сообщение об ошибке + опционально стэк тржйс + могу ещё и бряку поставить - очень удобно.

Все эксепции обычно обрабатываются одинаково - залогировать и продолжить поэтому типизация эксепций имеет мало реального значения достаточно одного типа, как в расте, - паника. Тогда как обработка ожидаемых ошибок по настоящему разная и возможность задать тип ошибки очень важно.

По-моему, в расте обработка ошибок сделана самым лучшим из всех мэйнстрим языков способом просто игнорируйте рекомендации не ловить паники, но делайте это с умом.

Ну хорошо, расскажите нам всем, какие симптомы бывают когда поставили блок питания который не вытягивает по мощности?

Вы теоретик, а я практик. У меня был блок на 450 ват чето там известное сильвер под разогнанный райзен 5990х + видяха (не топовая) Радеон 570х. Все прекрасно работало. В стресс тесте проц 180 ват тянул, видяха под сотню. Да все вместе конечно никогда не было, но 200 ват легко набиралось. Был не потому что сгорел по причине не справился, а потому что помещение где стоял комп затопило к херам в том числе комп под напряжением.

Так что разговоры про какие то там +30-100% запаса мощности - полная маркетинговая чушь. Всегда беру по самому минимуму и ни единого разрыва за 20 лет.

Даже не рядом

Так я и не предлагаю тестировать каждый билд. Я к тому, что появление этих функций в стандарте буквально ничего не меняет. Вы можете их смело игнорировать пока не наткнетесь на реальную проблему, что случится даже не в текущих мастер версиях компиляторов, а только в тех которые ещё только заражаются и то может быть. К тому времени когда вы наткнетесь на реальную проблему уже будут примеры как правильно использовать эти инструменты, что бы проблему решить. Сегодня эти инструменты просто ничего не делают и понять как их правильно использовать решительно не возможно.

Я вот тут ворвусь в разговор, я вижу, что вы прекрасно понимаете, что и отмывка и начало жизни это просто декларации тела этих функций тождественны айдентити. Это значит что все эти заморочки существуют только в компил тайме и то не во всех компиляторах. Это я к чему? А к тому что УБ настоящее в вашей программе из вакуума ветром не надаует к вам в бинарь. Единожды собранный и протестированный бинарь продолжит работать как надо несмотря ни на какие извращения. А если ещё проще то ни отмывка ни начало жизни использованные вами правильно и по назначению не дают индульгенцию на не тестирование. И обратное тоже верно если вы протестировали код с якобы УБ такого рода и он работает так как вы ожидаете то смело можете слать в пешее всех кто кричит про УБ в вашем коде.

Мне во многом нравится Раст, но там тоже есть подобные мегко говоря странности, например взятие (но без последующего использование) мут указателя на объект у которого есть действующие конст ссылки обьявленно УБ само по себе. Я думаю в рамках все той же логики компиляторщиков, типа нехер лезть в наши закрома даже если мы ещё не придумали как это использовать против вас сегодня ради оптимизаций, но в будущем мы то точно придумаем. Я вот больше практик, работает сегодня и по другому никак/дорого/да просто лень ну и чё? Будет конкретно проблема будем исправлять, а пока и так сгодится, а лондерами пусть пользуются сначало те кто их придумал и на реальных примерах покажут как правильно а как нет.

Это отличное поведение раста по умолчанию, когда надо с внешним миром взаимодействовать то там через атрибуты можно четко зафиксировать бинарный формат, а внутри всем больше нравится экономить память, а дебагер как то справляется с этим из коробки.

Так вы не сможете на стадии написания кода. Почему? Да просто замените дабл инт и чар на хз1, хз2 и хз3 и не забудьте о том, что в разных ревизиях их размеры тоже могут быть разными.

Там выше кто то на отладку жалуется, но целый Раст так делает из коробки вообще во всех структурах по умолчанию и всем норм, а на с++ значит не норм?

Мне нравится ваш сарказм, и пример хороший. Только вот этот пример точно также можно предъявить и оппонентам, как то же власть надо менять когда правительство плохо работает, а когда других способов нет то вот так как в Колумбии.

С другой стороны там Колумбия судя по Вики такой канонический фэйлед стэйт. Хотелось бы увидеть пример немного другой. Вот было государство было все норм, потом подвезли сменяемость и стало как в Колумбии если сравнение с берёзками тяжело воспринимается.

Ну вот пока другой механизм не завезли, то надо юзать тот который вы карго культом называете - без доказательств кстати. Покажите где есть сменяемость, а х..о так же как во внеобьятной.

Ну не у всех, я в стрессе ем за двоих, именно наблюдая за тем сколько я ем я и понимаю что у меня стресс. Как говорится, без единого разрыва, в самолёте жру как не в себя хотя еда там точно на вкус не очень, но мозг говорит какая нямка дайте 3.

Мне лично всё понятно, что и как у вас со скулайтом сегодня это явно не ваш сегодняшний основной инструмент. Возможно, 20 лет назад было сильно лучше чем сейчас.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность