Песочница

Детерминизм и профили ресурсов

Детерминизм охватывает объявленные наблюдения именованного исполняемого профиля; пределы ресурсов входят в профиль и не обещают неограниченное выполнение.

Когда это нужно

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

Разбор примера

Детерминированный запуск не обещает завершить любую программу. Он обещает закреплённые наблюдения либо чистый именованный отказ в заданном ресурсном профиле. Время по часам — эксплуатационное наблюдение, а не семантическое значение программы.

Как рассуждать

  • Наблюдаемые оси: байты stdout, байты диагностики, статус выхода, порядок предупреждений, отчёт ресурсов, проекция значения и при необходимости идентичность артефакта/происхождения.
  • Native и WASM могут иметь разные пределы и при этом чисто сообщать профильные ресурсные результаты.
  • Повтор закрепляет исходник, идентификатор исполнителя, пределы и проекцию наблюдений до сравнения байтов.

Быстрый выбор

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

Частая ошибка

Один лишь тайм-аут по настенным часам не является семантическим отчётом ресурсов.

Текущие границы

  • Совпадение в ограниченной кампании не является эквивалентностью всего языка или доказательством отсутствия расхождений.

Куда дальше

Справочник сред выполнения показывает исполнителей с происхождением, а проверяемые поверхности — точный охват поддерживаемых сравнений.

Среды выполнения · Проверяемые поверхности