Данная статья — для тех, кто ищет новый подход к программированию,
и понимает глобальный характер заблуждений современного программирования,
завязанного на архитектуру существующих вычислительных систем, а не на моделируемый мир.
В сообщении предлагаются основные классы, которые способны описать свойства, используемые в курсе средней школы.
Основы подхода описываются в статьях, перечисленных в habrahabr.ru/post/176249
Итак, идеология структуры классов в пространствах имен:
перечислитель натуральный
от 0 до верхней границы используемого типа или до указанного значения
безразмерная величина
наследующие классы могут указывать и сравнивать единицы измерения
root_ns.science.mathematics.Counter_class
Общее количество счетных значений
Разрешает отрицательные числа
Ограничен физической реализацией числа
Безразмерная величина
Наследующие классы указывают единицу измерения
при отсутствии описанного преобразования
root_ns.science.mathematics.Scalar_class
Скалярная измеряемая величина с единицей измерения
root_ns.science.mathematics.Complex_class
Комплексное число
Может быть представлено в векторной или тригонометрической форме
root_ns.science.mathematics.Tensor_class
Тензорная величина
root_ns.science.physics.SI.One_class
класс единиц измерения СИ
перечисление единиц с указанием единиц по умолчанию
L — расстояние, м
M — масса, кг
T — время, с
…
root_ns.science.physics.SI.Multiply_class
Комплексная единица измерения СИ
включает перечень размерностей с степенью вхождения и единицы измерения по каждому измерению
При этом одинаковые размерности с разными единицами измерения могут входить несколько раз
root_ns.science.physics.Measure_class
класс для указания измеряемой скалярной величины
root_ns.science.physics.Measured_Template
Шаблон класса для операций с единицами измерения
Содержит указатель точности в количестве десятичных знаков
Содержит анализ точности и операцию округления
root_ns.science.logical.Base_class
Логические отношения
root_ns.science.structures.Listiner_template
Субъекты внимания
root_ns.science.structures.Self_template
root_ns.science.structures.tuples.Tuple_class
кортеж (реквизит с реквизитами, каждый из которых либо кортеж, либо одномерный реквизит)
UPD — Обсуждение похожих тем:
habrahabr.ru/post/144334 Type-rich Programming (С++11)
и понимает глобальный характер заблуждений современного программирования,
завязанного на архитектуру существующих вычислительных систем, а не на моделируемый мир.
В сообщении предлагаются основные классы, которые способны описать свойства, используемые в курсе средней школы.
Основы подхода описываются в статьях, перечисленных в habrahabr.ru/post/176249
Итак, идеология структуры классов в пространствах имен:
Математика:
root_ns.science.mathematics.Enumerator_classперечислитель натуральный
от 0 до верхней границы используемого типа или до указанного значения
безразмерная величина
наследующие классы могут указывать и сравнивать единицы измерения
root_ns.science.mathematics.Counter_class
Общее количество счетных значений
Разрешает отрицательные числа
Ограничен физической реализацией числа
Безразмерная величина
Наследующие классы указывают единицу измерения
Физика
При операциях производится контроль единицы измерения с выдачей предупрежденийпри отсутствии описанного преобразования
root_ns.science.mathematics.Scalar_class
Скалярная измеряемая величина с единицей измерения
root_ns.science.mathematics.Complex_class
Комплексное число
Может быть представлено в векторной или тригонометрической форме
root_ns.science.mathematics.Tensor_class
Тензорная величина
root_ns.science.physics.SI.One_class
класс единиц измерения СИ
перечисление единиц с указанием единиц по умолчанию
L — расстояние, м
M — масса, кг
T — время, с
…
root_ns.science.physics.SI.Multiply_class
Комплексная единица измерения СИ
включает перечень размерностей с степенью вхождения и единицы измерения по каждому измерению
При этом одинаковые размерности с разными единицами измерения могут входить несколько раз
root_ns.science.physics.Measure_class
класс для указания измеряемой скалярной величины
root_ns.science.physics.Measured_Template
Шаблон класса для операций с единицами измерения
Содержит указатель точности в количестве десятичных знаков
Содержит анализ точности и операцию округления
root_ns.science.logical.Base_class
Логические отношения
root_ns.science.structures.Listiner_template
Субъекты внимания
root_ns.science.structures.Self_template
root_ns.science.structures.tuples.Tuple_class
кортеж (реквизит с реквизитами, каждый из которых либо кортеж, либо одномерный реквизит)
UPD — Обсуждение похожих тем:
habrahabr.ru/post/144334 Type-rich Programming (С++11)