Как стать автором
Обновить
148
0
Алексей Романов @alexeyrom

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

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

У вас тут даже циклических ссылок нет. tom.petName будет null, ни одного объекта класса Pet в памяти нет...

банк под санкциями

Не вижу, где банк указан. Может, это и Райффайзен.

топ-10 российского Steam по продажам

Из России же сейчас платить в Steam тоже нельзя? Только через разные обходные пути. Так что не очень понятно, сколько сейчас значит "топ-10 продаж в России". Упомянутые "более 100 тысяч", насколько я понял, это суммарно по всем магазинам, а не только Steam.

Я указал на неточность

вашего замечания о неточности.

По логике как раз будет. Будет вполне нормальный VPN с сервером в РФ. Иногда такие даже нужны, чтобы заходить на российские сайты из-за границы.

https://historyforatheists.com/2020/07/the-great-myths-9-hypatia-of-alexandria/ Великие мифы: Гипатия Александрийская (на английском). Хотя эта статья без основных мифов вроде бы обошлась (в отличие от упомянутой "Агоры"). Исключение: астролябия существовала задолго Гипатии.

Размещать ссылку на их материалы уже ведь считается участием, разве нет? https://mmdc.ru/services/common/chto-takoe-nezhelatelnye-organizaczii-i-pochemu-nelzya-rasprostranyat-ih-materialy/ приводит как пример, за который штрафовали, и посещение конференции (правда, платное или нет, не сказано).

Правя Википедию на русском, вы не участвуете в деятельности НКО, потому что никакая НКО не ставит своей уставной целью редактирование Википедии.

Насколько вы уверены, что суд решит именно так?

" На работу я вышел в августе. на время каникул — без учебной нагрузки " (и по сути вы не преподавали даже),

По остальному вопросов нет, но 1. зарплата 2277 к этому периоду по статье никак не относится; 2. проведение уроков несколько раз упоминается: "Нередко планерка мешала занятиям, т.к. продолжалась даже после звонка на урок." "По итогу, как оказалось — зарплата у меня вышла даже ниже, чем на каникулах." "Сегодня же выходной день, уроков нет." "Уроки я проводил в кабинете ОБЖ (в котором, конечно же не было ничего для того, чтобы я мог нормально провести урок)."

Со временем ее начали заменять смертельной вакциной.

Вакциной от жизни?

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

Если верить French Cavalry Defeats Dutch Fleet?, это возникший позже миф. К этому времени Амстердам был взят, там поставлено новое правительство, которое приказало всем флотам не сопротивляться французам. Несколько гусаров по льду действительно пришли, но корабли не захватывали, а просто получили подтверждение командующего флотом, что он собирается выполнять этот приказ. Французский командир действительно потом говорил про захват, но и в его версии неожиданности не было:

When the ships saw us, they prepared their defences.

Когда на кораблях нас увидели, они приготовились к обороне.

До такой степени really операции над целыми числами тоже не ассоциативны, так как может происходить целое переполнение, которое, в свою очередь, может вызывать исключительную ситуацию или нет.

Я наконец нашёл исходную цитату, не знаю, почему в прошлый раз не получилось. И оказывается, там как раз говорится, что если целочисленное переполнение вызывает исключение, то перегруппировывать нельзя. [expr.pre] (eel.is)

[Note 4

The implementation can regroup operators according to the usual mathematical rules only where the operators really are associative or commutative.

For example, in the following fragment

int a, b;

/* ... */

a = a + 32760 + b + 5;

the expression statement behaves exactly the same as

a = (((a + 32760) + b) + 5);

due to the associativity and precedence of these operators.

Thus, the result of the sum (a + 32760) is next added to b, and that result is then added to 5 which results in the value assigned to a. 

On a machine in which overflows produce an exception and in which the range of values representable by an int is [-32768, +32767], the implementation cannot rewrite this expression as

a = ((a + b) + 32765);

...

However on a machine in which overflows do not produce an exception and in which the results of overflows are reversible, the above expression statement can be rewritten by the implementation in any of the above ways because the same result will occur.

 — end note]

Ключевое выделено. Так что чуть поправлюсь: перегруппировывать операции с плавающей точкой тоже можно, но только в тех случаях, когда это не может изменить результата (например, умножение на 0, когда можно доказать, что нигде нет бесконечностей или NaN).

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

Ну или можно сказать, что это Note и технически не обязательно к исполнению (non-normative) Element: Non-normative Note (iso.org)

Но выделенное явно подразумевает, что по стандартам C и C++ перегруппировывать операции с плавающей точкой нельзя.

И в MSVC:

By throwing the /fp:fast switch, you tell the compiler it should pretend that floats (and doubles) obey the rules of simple algebra (associativity and distributivity).

Do You Prefer Fast or Precise? - C++ Team Blog (microsoft.com)

То есть опять же без ключа перегруппировывать нельзя.

На всякий случай: я не говорю, что в примере из вашего комментария 28 мая в 19:40 (habr.com) определён порядок вычисления самих a(), b() и c(); он не определён, и я это хорошо знаю. Но только что скобки там причём, и гарантируют, что сначала будет вычислено `b() * c()`, а потом a() * результат.

Ну да, вы ж сами процитировали самое основное:

Operators can be regrouped according to the usual mathematical rules only where the operators really are associative or commutative.

Поскольку арифметическое сложение – ассоциативная операция (в теории), то компилятор вправе её перегруппировывать.

Интересно, что тут значит "really". Потому что сложение и умножение чисел с плавающей точкой как раз не ассоциативны. Так что я бы понял так, что перегруппировывать можно только операции над целыми числами.

К тому же для -fassociative-math в документации GCC явно сказано

Allow re-association of operands in series of floating-point operations. This violates the ISO C and C++ language standard by possibly changing computation result.

И как ни смешно, для Fortran это как раз может включиться по умолчанию:

For Fortran the option is automatically enabled when both -fno-signed-zeros and -fno-trapping-math are in effect.

Конвертер может вынести a+b в локальную переменную. Это разве не исправит проблему?

если не ошибаюсь есть санкционная планка в $300

Только для смартфонов из США. Правда

Товар считается американским, если в его производстве есть более 25% объектов интеллектуальной собственности компании — резидента США, напоминают юристы

(из Санкция «Смартфонная»: чем грозит запрет на импорт устройств дороже $300 | Forbes.ru). Подозреваю, что OnePlus под это не подпадает.

Правильно, "море" в единственном числе -- mare. А во множественном внезапно "maria".

Так для телефонов такая библиотека давно есть и Google я как-то больше доверяю в знании международных деталей google/libphonenumber: Google's common Java, C++ and JavaScript library for parsing, formatting, and validating international phone numbers. (для JS может быть лучше порт libphonenumber-js)

1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Зеленоград, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность