Кто контролирует размерности? (опрос)
В недавнем тексте «Реальность существует и это надо учитывать» есть небольшое противоречие — не показана реальность явления, с которым предлагается бороться.
Действительно ли люди совершают ошибки связанные с неверными единицами измерения и размерностями величин? Может быть проблемы нет, и имеет место быть массовое использование инструментов помогающих программистам и исследователям избегать ошибок при оперировании величинами имеющими физический смысл?
Давайте выяснять (дальше развёрнутое объяснение и сам опрос)
Кто контролирует размерности? (опрос)
Исследуемая проблема имеет два проявления и первое состоит в том, что систем единиц измерения больше одной. Широко распространены две системы:
И проблема в том, что есть люди которые по разным причинам используют именно Имперскую систему.
Широко известны два события связанные с этой проблемой.
1) «Планёр Гимли» (1983) — при переходе Канады на метрическую систему в самолёт залили топливо, по привычке думая что цифры обозначают галлоны и фунты, а это уже были литры и килограммы.
2) «Mars Climate Orbiter» (1999) — автоматическая межпланетная станция получила данные для торможения которые были вычислены в имперских единицах «фунт-сила», а отработала так, как будто это были метрический «Ньютоны».
Больше таких рассказов нет. Может быть такие случаи не выходят за пределы внутренних отчётов об авариях, а может и правда проблемы нет.
Потому, что решение проблемы существует и давно известно — работать не с голыми числами, а с именованными величинами. Тогда программа может сама всё сконвертировать и правильно посчитать.
Например, вот так.
Второе проявление проблемы состоит в том, что можно просто сделать опечатку в имени переменной или арифметической операции и получить математически корректный, но бессмысленный результат.
Например, если ускорение не «умножить» на «время», а разделить, по получится не «скорость», а чёрти что. Но если использовать именованные величины, то ошибочную операцию можно обнаружить и своевременно исправить.
А если не использовать контроль размерностей, то можно получить число 12,5 и пребывать в уверенности, что расчёт прошёл успешно.
Таких инструментов существует много, как на уровне языка программирования, так и в виде специализированных библиотек и т.д. Такие инструменты существуют давно.
Да, там не всё идеально и есть свои особенности, сложности и проблемы.
Но они, эти самые инструменты контроля за размерностями, существуют.
И вот вопрос, а Вы ими пользуетесь? Вы вообще в курсе того что они существуют?