Skip to content

lawref.unit_declarations

Нормализация объявлений атомов ДО §209 (E-0150, DECISION-0157).

Поверхностный сахар хранится только во входе authoring; выход — UnitDecl вида simple. Алгебра значений §49.1 остаётся в units.py.

Functions

NameDescription
expressionТочный множитель и вектор RHS; никаких ambient constants (§49.2).
failNo description.
lower_unitsОракульный читатель только деклараций §49.2, не всего языка.
normalizeНормализует тела UnitDecl, RHS задаётся полем expression (§49.2).
positiveNo description.
powersNo description.

expressionfunction#

def expression(text, resolve)

Точный множитель и вектор RHS; никаких ambient constants (§49.2).

failfunction#

def fail(message: str, code: str = 'UNIT_UNKNOWN')

lower_unitsfunction#

def lower_units(source: str, imported: list[dict] = ()) -> list[dict]

Оракульный читатель только деклараций §49.2, не всего языка.

Заголовки и feature-аннотации не несут вычислений. Неизвестный текст декларации отвергается; полный синтаксис пакета проверяет компилятор.

normalizefunction#

def normalize(declarations: list[dict], imported: list[dict] = ()) -> list[dict]

Нормализует тела UnitDecl, RHS задаётся полем expression (§49.2).

imported — узлы закреплённого мира, без догадок о неявном SI. Никакого expression в возвращённых узлах нет.

positivefunction#

def positive(num, den)

powersfunction#

def powers(pairs)

Documentation for Arxo. Writings — blog.arxo.io.

Anonymous visit counts on stats.arxo.io, no cookies.