Как стать автором
Обновить
4
0.1

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

Отправить сообщение

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

Не может.

Речь же идёт о компиляторе, а не о проверке в рантайме.

// В C++26 для локальных переменных
 
// Применение фундаментального типа наподобие 'int'
int a;            // декларация с неким ошибочным значением
std::cout << a;   // выводит ? или прекращает выполнение: чтение ошибочного значения

В комментарии к 5-ой строке написано: "выводит ? или прекращает выполнение: чтение ошибочного значения".

Очевидно, что имеется ввиду runtime.

Значит, было UB, теперь ещё добавили очень сомнительное EB.
Видимо, впервые поставив вопрос быстродействия не на первое место.

Как-то Саттер обходит стороной вопрос, что должно быть, если валидное значение совпадает с pattern'ом, который генерируется компилятором для "ошибочных" значений:

Мелким шрифтом: компиляторы C++26 обязаны заставить строку 4 переписать биты известным значением, и мотивированы сообщить о проблеме в строке 5 (но не обязаны этого делать).

Как они могут сообщить о проблеме, если все возможные значения — валидны?

И ещё вопрос совместимости с предыдущим кодом как-то тоже упущен.

Ничего, export template тоже пришлось потом убрать из следующих версий стандарта, как и спецификацию throw для функций.

Но int может принимать значения от -2147483648 до 2147483647.

Так то — int, а здесь используются значения элементов вектора nums.
Посмотрите условия на эти значения, как они сформулированы в задаче.

И ваше утверждение о диапазоне значений int, в общем случае, — неверно.

Словарь американского языка, router.
Там и послушать можно.

Интересно конечно, если бы Мавродий дожил до эпохи Биткоина - принял бы участие или сидел глазами хлопал, как ископаемый динозавр?

Так он же создал свою криптовалюту, Mavro.

Суть явления не ясна.

Можно взять VPS, потестировать с ним.
Тогда пакеты с той стороны провайдера, которые приходят на VPS, также будут доступны.

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

ЗЫ. Когда ещё работал под Windows, всегда отключал QoS для сетевых карт.
Как-то заметил, что он гадит, и стал всегда отключать.

Да, варнинги посыпятся

Почему-то не наблюдаю оных.

В сях нет строк ;)

Зато там есть строковые литералы, причём, с самого начала.

И не уверен насчет auto.

Ознакомьтесь со стандартом C23, а также с работающим примером.

А сейчас там "имлементация".
Чтобы понять, в чём суть, необходимо внимательно глазами побуквенно проследить.

Вы правы, проглядел, как я уже сказал тестового покрытия нет

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

Фрагменты одного из конструкторов:

    explicit FixedPoint(int decimal, unsigned int fraction = 0): val(0)
    {
...
        int8_t sign = decimal > 0 ? +1 : -1;
...
        val |= (decimal << FractionLength);

Из кода очевидно, что decimal может быть отрицательным.

В последней строке фрагмента кода, процитированного мной, написано:

        val |= (decimal << FractionLength);

Built-in bitwise shift operators:

For negative a, the behavior of a << b is undefined.

Соответственно, если конструктор будет вызван с отрицательным decimal, то случится UB.

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

Смотрите, написано:

нам кажется вас взломали укажите ваш телефон, чтобы мы понимали что это вы

Если всё так и было, и если после указания телефона они отказываются понимать, "что это — вы", то это — злоупотребление доверием или нет?

Не совсем понимаю, кто оставил вышестоящий комментарий (Only_god_can_judge_me), но цель моего проекта - создание самодельного компилятора.

OK.

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

Прямым текстом это не сказано, но в этой статье есть такие строки:

Преимуществ перед тем же С у Rave предостаточно:

  • Наличие базовой работы с ООП;

  • Наличие улучшенной безопасности работы с указателями и улучшенной обработки ошибок;

  • Отсутствие многих недостатков С, С++ и прочих языков(вроде того же препроцессора, хоть помечать его как недостаток довольно спорно), и так далее.

В некоторой степени, это — заявка.

Ну, и на официальной странице есть такие строки:

Since the beginning of its creation, Rave has been focusing on the performance of programs written on it. Thanks to the various flags (-rco, -O 3), you can easily reach the speed of the same program in C, or even surpass it.

Что также намекает на "замах".

Сравнение с "BolgenOS" некорректно - для меня Rave что-то вроде хобби-проекта, которым я занимаюсь в свободное время.

Это — хорошо, но сравнение с "BolgenOS" здесь корректно в том смысле, что человек не понимает, насколько задача, за которую он взялся, не соответствует его уровню.

Про "ЧСВ" не совсем понимаю. Так как это мой личный проект, то, по-моему, лишь я могу решать, что добавлять в него, а что нет? По возможности прислушиваюсь к дельным советам, в основном по фиксу багов.

Это был ответ на следующий фрагмент от Only_god_can_judge_me:

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

Если этот фрагмент не соответствует действительности, напишите об этом.

"Объективная критика" не должна состоять из насмешек, издевательств и оскорблений.

Это — верно.

При этом же, хочу отметить, что проект я развиваю в одиночку.

В таких условиях — тем более, для данной задачи нужен совсем другой уровень.

Качество кода (так как я ещё в процессе изучения С++ - уже около полутора лет) соответствующее, но рабочее.

Для глубокого познания C++ требуется лет 10, не меньше.
Для глубокого познания C может хватить и 3-х лет.

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

Во всяком случае, ассоциаций с "BolgenOS" возникать уже не будет.

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

К тому должны быть предпосылки.
Он уже изучил досконально C?
Научился на нём программировать на уровне сеньора?

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

То есть, он до сих пор не вылечил своё гипертрофированное ЧСВ?
До сих пор не понял, что он имеет дело со Вселенной, а ей наплевать на его хотелки?
Что, чтобы достичь заявленной цели (надежды), необходимо играть по её правилам?

Иногда завидно даже, вот если бы мои проекты окружало множество людей, удача ли это?

Может, его цель состоит как раз именно в этом, а не в том, о чём он заявляет публично?
Я думал, явление Bolgen OS — единичный случай.
Оказывается, — нет.

То есть, получается, злоупотребляют доверием?

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

А как они по указанному телефону отличат настоящего пользователя от взломщика?

так может лучше завести баги на гитхабе и вести себя профессионально, чем разводить клоунаду?

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

Хотя, глумиться, конечно, не следовало.

Может оно действительно чем-то лучше и удобнее чем стиль C/C++/C#/Java?

Очевидно, что так легче читать и писать декларации/определения любой сложности.

defer io::close(file);

О, суррогат деструктора.
Автоматизм, между прочим.

Вот это похоже на C?

В C нет автоматизмов, что — наиболее существенно.
Также там нет namespace'ов.

Этим Hare напоминает C++.
А декларации напоминают Pascal/Golang.

1
23 ...

Информация

В рейтинге
3 739-й
Зарегистрирован
Активность