Журнал изменений flang
Релиз языка — это тег vX.Y.Z, а по нему архив формулы и публикация в npm. Строки под релизом — заголовки коммитов, вошедших в него: в этом репозитории заголовок пишется утверждением о том, что теперь правда, поэтому он и есть готовая запись журнала. Правки, от которых язык снаружи не меняется, — планы, спецификации, тесты, скрипты, — сосчитаны, но не перечислены.
0.6.2 — 22 августа 2026
- Формула на 0.6.2 и запись о выпуске: чинится установка через Homebrew (
1201f5a) - Компилятор перепечатан под 0.6.2 (
32d3c4b) - Упаковка выпуска чинится буквой X: без неё каталог runtime-c приезжал без права входа и brew install падал у всех (
54a5ac4) - Версия 0.6.2 (
49bf68b) - Разведка ввозов разбирает шапку, а не весь файл: память −24 %, время −5 % (
b7a7b86) - Принцип свёртки говорит теперь и о пройденном куске списка: доказано 197 → 199, потеряно ноль (
17b2c26) - «https» у поручения «Запросить» работает: шифрование берётся поручением внешнему хозяину, а не своим кодом (
d44e4c2) - У строки одна мера и там, где строка — октеты: поиск ходит по границам знаков, счёт сведён с нарезкой, склейка отказывает на слипающемся стыке (
f11343e) - Две рукописные копии сличения списков сняты, три устаревшие ссылки на снятый запрет исправлены (
2eae04b)
Ещё 4 правки языка снаружи не меняют.
0.6.1 — 22 августа 2026
- Формула Homebrew переведена на 0.6.1: sha256 посчитан на архиве выпуска (
9683d80) - Компилятор перепечатан под 0.6.1 после шести веток: дешёвая сверка входов зелёная (
643bed2) - Версия 0.6.1 и запись о выпуске (
1b4232b) - Компилятор перепечатан после четырёх веток: правила «или» и фильтра доехали до собранного, отпечаток входов снят (
9efb373) - Двоичный говорит по протоколу помощника:
flang --mcp-mode, и три вердикта уходят порознь (15342ea) - Точка раскрутки перепечатана: тридцать шесть проверок ядра уехали в семя (
ba2207f) - Числа сведены с собранным двоичным: 13 894 920 октетов, 31 с, 7,3 ГиБ (
24d9bb8) - Точка раскрутки перепечатана после правки порядка строк записи (
a9fb259) - Точка раскрутки перепечатана: словарь на восемнадцать поручений, оба хозяина на C, отказ FLANG_IO_NOT_TEXT (
48d6a84) - Прибавка от обоих правил названа числом в самом ядре: +2 и +2 на шести файлах библиотеки, парным замером (
1a95824) - Прогон подделок спрашивает сверщика о всех программах каталога примеров, а не об одной (
7857320) - Сверщик читает вариант, написанный голым словом, и знает конструкторы встроенного списка (
f70597f) - Заголовок случая в записи встал перед своими шагами: «добавить» дописывает в конец (
5fa0001) - Числа замера в ADR-0006, SPEC и примере: три порчи, четыре размера, цена памяти (
3fdaa91) - Нулевой октет вернулся в законный текст: отказ теперь только на неправильном UTF-8 (
a45e34a) - Точка раскрутки перепечатана: семя несёт запись доказательства и ключ --записать (
ca25911) - Долги записи и сверщика названы прямо: сведение, вторая командная строка, один шаг на строку (
aaa8a35) - Из 49 сведённых обещаний ядра остались 36: подмену тела пережили тринадцать (
9b64462) - Точка раскрутки перепечатана под два новых правила ядра; сверка --check совпала байт в байт (
cb31c94) - man flang описывает ключ --записать: доказательство кладётся в файл и сверяется отдельной программой (
a34fbb4) - Счёт постусловий не считает пояснения: строка, начатая двумя косыми, не объявление (
5d96bbc) - Шапка сверщика перечисляет все девять проверок, а не шесть (
c335b01) - Закрытие цели считается по случаям, а не в среднем по теореме (
08b78ee) - Сверщик спрашивает хозяина утверждения и у тех, при которых теоремы нет (
25ece3f) - Имя «Строка шага» разошлось с отчётом о доказательствах: у записи оно своё (
0624a87) - Запись обязана говорить обо всей программе: счёт постусловий сверяется с исходником (
a2bf55e) - Сверщик сличает утверждаемое теоремой с обещанным постусловием (
6d091d3) - Сверщик получил закрытый список правил сведения и проверку полноты записи (
3c44eb5) - Доказательство стало предметом: ядро записывает свой терм в файл, сверщик на flang сверяет его с исходником (
56488e5) - «Ответить в соединение» перестало рвать содержимое strlen'ом: длина берётся у значения, нетекст отвергается (
9632acf) - Ядро получило разбор случаев по внутреннему условию цели и правило несовместимых допущений; при обоих стоят подделки (
a443b7c) - Ядро доказательства обещает о себе: 49 постусловий, все сведены ядром (
21c7180) - Пример «Двоичный файл туда и обратно», ADR-0006 и словарь в SPEC: восемнадцать поручений (
5b62c16) - Октетная пара у файлов: словарь, оба хозяина на C; текстовая пара на нетексте отказывает вместо молчания (
bcf4c69)
Ещё 16 правок языка снаружи не меняют.
0.6.0 — 22 августа 2026
- Формула Homebrew переведена на 0.6.0: ссылка на тег v0.6.0, sha256 посчитан на архиве выпуска (
55292de) - Перевод компилятора на C перепечатан под 0.6.0: потолок шагов внутри поднят до миллиарда, два захода подряд дали одно и то же (
a722581) - Ядро берёт цель «А и притом Б»: половина «условие ложно» есть ложь (
4522d7f) - Ведомость пустоты заведена и сошлась: 93 доказанных по 18 файлам библиотеки разложены по четырём кучам (
d22c94c) - Семя перепечатано: ядро в двоичном опровергает границу над числом, и улика задания закрыта (
0cfcf7d) - Пустота закрыта там, где ядру хватило правил: logic ×2, numbers, strings; при стороже заведён показ порчи (
32f3979) - Две ложные границы карты ядра оговорены: К2 и П3 были ложны на «не числе», доказанного при этом не потеряно (
71d1d78) - Перевод компилятора на C пересчитан после слияния двадцати веток: два захода подряд дали одно и то же, 7 файлов, 26 110 965 байт (
ce6e760) - Ядро научилось ОПРОВЕРГАТЬ границу над числом: контрпример «не число» называет оно само (
0b3db25) - Точка раскрутки перепечатана: область на виток батута доехала в семя (
a00ac8d) - Сторож пустоты: разбор ведомости и чтение исходника на flang; «Знак» перестал говорить о подписи (
2a9f350) - Числа в пояснении к области витка — по парному замеру, а не по прикидке (
37f8ad9) - Область на виток батута: хвостовая рекурсия перестала копить арену (
202afd3) - Старое имя дочищено в контрактах Провода (
d9e7e3e) - Столкновение имён разведено: «Цифра числом» Провода зовётся «Цифра провода», у strings.flang имя остаётся своим (
033b491) - Поломки от слияния сведены: вторая копия SASL снята, «Целая часть протокола» объявлена в плане, долг сращивания пересчитан (
cce8fff) - Семя возвращено к стволу перед перепечаткой (
295522f) - Семя перепечатано после снятия задвоенной функции и сведения со стволом (
9fce394) - Путь в пояснении примера записан латиницей целиком: половина имени файла была кириллицей и команда из шапки не работала (
a77ade3) - Семя перепечатано: ядро в двоичном читает оговорку «пока это число» (
5e444b8) - Точка раскрутки перепечатана: починка цели «js» доехала в семя, и из семени собирается компилятор, который её знает (
416618d) - Оговорка в utf8: тело «Досыпать байты» совпадает с «Соединить списки» с точностью до имён доводов, и счёт копий по телам эту пару не ловит (
007bb73) - Провенанс векторов записан в сами модули: чем и когда сверено (
5b01c42) - Числа в шапке postgres выправлены по замеру: 86 функций, 3 файла замыкания, 18 замечаний на снятой строке ввоза (
8017570) - Пример «библиотечное API» снова собирается: в списке
тольконе хватало имён, которые зовёт контракт ввезённой функции (aae2d38) - Вход по scram-sha-256 в настоящую базу СОСТОЯЛСЯ, и журнал прогона записан в шапку (
a8d6bc2) - План входа: после запроса вводится состояние «Послали запрос» (
ddff135) - Дизъюнкция в допущении разбирается СЛУЧАЯМИ: цель сводится дважды, при левом и при правом дизъюнкте порознь, и принимается только когда сошлись оба (
06d117e) - Библиотека сводится в одну программу: девять вернувшихся столкновений разведены, а мерой стал прогон, а не абзац (
80205ee) - Страница про базы говорит про два файла, а не про один, и числа «Провода» считаются (
fd7d03a) - План входа: проверочная роль probnik1 с одним витком, и упор назван памятью, а не временем (
bf25259) - Фронтенд поехал: цель «js» научилась печатать план, страница осталась без единой строки JavaScript, стенд написан на flang (
56b7d47) - Ссылка пересылается письмом, и по ней приходит ответ: работник отвечает тому, чьего имени в его коде нет (
e749515) - Слой доказательств на JavaScript снят: 4958 строк, живого потребителя не было (
ec375d8) - Справка доехала до семени: пересборка положила её туда, куда прямое копирование не легло (
2b6e184) - Шапки драйвера и плана входа приведены к тому, что есть на самом деле (
fe44f6b) - Имя с провода, назвавшее процесс другого вида, отказывает ОТПРАВИТЕЛЮ по имени: FLANG_PROCESS_ACCEPTS вместо тихой смерти получателя (
1d02aaa) - Одинокая низкая половина считалась у C# нулём знаков: «длина» и «разложить на символы» расходились ВНУТРИ одной цели, 4 входа из 12 — теперь 0 (
4508d18) - Вход по scram: четыре RFC-2202 вектора, груз SASL в вести и октетная труба у плана входа (
7587800) - Ядро читает оговорку «пока это число»: правило и четыре подделки при нём (
9f655a5) - Общая половина драйвера вынута в «Провод»: из 83 функций про PostgreSQL только 39 (
f603430) - Смерть соседнего узла пережита на 8 целях из 8, и по дороге найдена дыра у rust и c: подхваченному процессу негде было завести состояние (
0157027) - Модуль зовёт соседа, а сторож смотрит на всё дерево, а не на один вход (
c456b6b) - Отказы ядра доказательств названы поимённо: 13 из 13, и у каждого сказано, чинится он теоремой или упирается в предел языка (
bd0ece0) - Ввозы узла выровнены под новый ствол e21199e3, и две записи базы знаний о пропаже узла (
dff71d4) - Снята вторая копия «Мера склейки», оставленная моим слиянием (
d2f5379) - Три написанных вручную сличения сняты, и одно из них было неверным (
26b206c) - Сохранение множества отделено от сохранения меры: на одном теле мера доказывается индукцией, множество остаётся сеткой (
bf14a43) - Пропажа узла доезжает до надзора на всех восьми целях, прогоном подтверждена на двух (
fc8f4ec) - Карта целей написана: 47 клеток вида цели с вердиктом и дословным отказом ядра, перепись библиотеки считается командой (
30f0d4c) - Сторож подделок сверяет список с каталогом в обе стороны — и нашёл четыре подделки, которые не проверялись ничем (
ec56299) - Надзор переживает смерть соседнего узла: работа убитого узла подхвачена, подтверждено 2 против 1 (
30c6072) - Последняя копия «Целой части» снята: postgres-plan снова доходит до настоящей базы (
809311e) - Клетки карты целей заведены уликами: 30 видов цели прогнаны ведомостью, отказы ядра сняты дословно (
24a8195) - Улика ДО числом: смерть соседнего узла надзор сегодня не замечает — всего 13, подтверждено 1 (
25fd27a) - Равенство в теле функции разрешено: запрет держал не цену, а одну запись, и спека требовала обратного (
730210d) - Надзор узла возвращён в напечатанный узел в четвёртый раз: с ним узел с объявленным деревом надзора вообще не поднимался (
ed90e27) - Возвращён надзор узла: третья работа, потерянная слиянием, а не коммитом (
7ab1393) - Возвращён надзор узла: третья работа, потерянная слиянием, а не коммитом (
f7ce5b1) - Категорная поверхность переписана по прогону нового судьи, и девять расхождений дорожки новичка закрыты (
65fa1b1) - Веер сведён в одну функцию и справка очищена от внутренних слов (
2289c06) - Семя перепечатано на сведённом дереве: судья категорных законов, 166 утверждений библиотеки и поднятый потолок шагов в одном двоичном (
0446d33) - Потолок шагов вычислителя поднят впятеро: был съеден под ноль — 200 000 001 виток из 200 000 000 (
d49c9df) - Пробел назван ключами разбора, а сторож состава правил научен второй стороне долга — семя НЕ перепечатано (
3e0d540) - Возвращено правило доказательства о соседних парах, потерянное при чужом сведении: в ядре снова восемь правил (
4469811) - Судья категорных законов вшит в двоичный: подделка отвергается, отчёт называет размер сетки (
8557d80) - Возвращён разбор SASL, потерянный при чужом сведении: план SCRAM снова зовёт существующие функции (
c1ff756) - Семя перепечатано на сведённом дереве: индукция по строке и ствол в одном двоичном, обе подделки правила отвергнуты (
e98d02e) - http: оговорка о числе при строчном коде — без неё утверждение ложно на не числе (
f5d20e8) - Семя перепечатано: слияние ствола потеряло принцип индукции по строке (
8701abb) - Семя перепечатано после догона ствола и сошлось: 7 файлов, 24 684 403 байта (
07dc33e) - Три факта о длине строки заведены, и они дали три утверждения: узким местом был не факт, а то, что мерой длины пользовались два правила ядра из шести (
4649484) - Оснастка перестала звать удалённый компилятор: 38 зовов node flang/bin/flang.mjs в 28 файлах переведены на bootstrap/flang, три скрипта уведены из запрещённого /tmp (
8a15ff2) - Цена утверждений сбита там, где она была настоящей: снят пересчёт и три даровых с вызовами, http переписан на меньшее число действий (
eed48b8) - Слияние поправлено: postgres.flang взят целиком со стороны ветки — ввозы были, а тела остались (
d46ca1f) - sha256: пересчёт следующего слова в постусловии раунда снят — 2197 мс из 12763 замерено чередованием (
0c5b155) - Печать больше не отсылает к удалённому: вместо «инструментария на Node» названы setoid.flang и setoid-oracle.flang и сказано, что их не запускает ничто (
bb81144) - Числа в SPEC слоя доказательств догнали дерево (
fa4d9a8) - Ярлык proof:search снят обратно: его файл удалён намеренно, я вернул строку слиянием по ошибке (
5ac835a) - Точка раскрутки перепечатана под правку справки, второе поколение сошлось: 7 файлов, 24 627 498 байт (
4d77236) - Комментарий у «Досыпать байты» больше не ссылается на мёртвый довод (
2da3eb8) - Ширину знака в байтах называет «UTF-8», а разбор протокола её больше не считает (
3852f1f) - C: приставка внешних имён программы обходит занятое так же, как имя файла (
223100e) - Печать перестала выпускать непосуждённое молча: 41 программа из 951 печаталась кодом 0, теперь код 3 с названным пробелом (
9f255bb) - Третья копия разложения кодовой точки в байты снята — и она давно лгала (
75edd9e) - Три точные меры длины у строки: склейка, разложение, знак — плюс восемь доказанных (
e15e519) - Охрана делает утверждение о дереве поиска истинным, а ядро научено брать её фактом: конъюнкт из охраны берётся, дизъюнкт — нет (
0c4f9b5) - Проверка замкнутости цели встала на прямой шаг «по примеру», а не только на ветвь индукции (
82312ae) - занятые слова цели больше не доезжают до напечатанного кода (
4efe982) - Прогон враждебными входами: одно моё утверждение оказалось ложным, восемнадцать чужих границ sha256 тоже; все починены оговоркой (
382330c) - База знаний: три стены постусловия сняты, даровость вырождается на постоянной функции, девять обвалов на частичных формах (
51046c5) - lists.flang восстановлен: моё сведение взяло сторону, не разбиравшуюся вовсе — 72 примера снова проходят (
8c7aaf9) - У строки появился принцип индукции, и он закрыл одно утверждение, а не сотню (
c14cd74) - http: тридцать три утверждения о разборе запроса, заголовках, чанках и печати (
544dd7a) - postgres: двадцать пять утверждений о вестях, полях и разборе целых (
75315ff) - Пять немых функций заговорили: разбор суммы в постусловии работает, и стена о проекциях снята (
8b29e0b) - sha256 и json: сорок семь утверждений о ходах, разметке и разборе; липкость беды записана явно (
9b8dff6) - base64: тринадцать утверждений о ходах кодирования и четыре ложных утверждения о шестёрках исправлены оговоркой о конечности (
6d18434) - Утверждения о проекциях, опциях и итогах: поле варианта и сравнение сумм читаются в постусловии (
d80e070) - Промежуточный факт лёг в ядро и закрыл ноль; настоящий выигрыш дала стоявшая поверхность, а в стволе найдена живая дыра состоятельности (
f63cdc1) - Семя перепечатано после слияний imena и uzel и сошлось на втором поколении (
440800a) - Одно действие, записанное вызовом и встроенной формой, доказывается одинаково (
a2516ce) - Драйвер PostgreSQL доехал до живой базы: октетная пара восстановлена у хозяина в C, поток драйвера стал октетным (
f3ce2d9) - Корпус HTTP перенесён на flang и снова кого-то проверяет: 55 входов, все сошлись, и шапка stdlib/http.flang опять не врёт (
16bb043) - Число строк библиотеки в спеке ядра догнало дерево: 12049 стало 12146 (
1946857) - Числа в комментарии и в заметке приведены к парному замеру: 3053 мс против 2404 (
933041f) - «Цифра числом» в библиотеке одна: постгрес берёт её ввозом из «Строк» (
5076818) - Семя перепечатано новым компилятором (
82617dd) - Значение привязки в постгресе называется «Значение с длиной впереди» (
f01450d) - Разбор «Результата» называется «Успех или запасное», а не как разбор «Возможно» (
d1e5e58) - Обрезка в HTTP названа по тому, что снимает: пробельные знаки, а не только пробел (
549e214) - Пять имён «Высшего порядка» называют то, чем функция сделана, а не только итог (
450869b) - Сортировка вставками доказана: свёртка читает шаг постусловием того, кого зовёт (
24c5bd8) - «Приписать в начало» в библиотеке одна: «Высший порядок» ввозит её из «Списков» (
2b9fd24) - «Чётное» в библиотеке одна: «Высший порядок» ввозит её из «Чисел» (
ae46dd8) - «Целая часть» в библиотеке одна, живёт в «Числах», и три модуля ввозят её (
a3907b6) - «Досыпать байты» в библиотеке одна: SHA-256 берёт её ввозом из «UTF-8» (
ba10871) - Правило соседних не отдаётся правилу ограниченности: цель «длина … не больше 1» принадлежит седьмому (
578c54b) - Рекурсия сортировки отделена от дорогого утверждения, и ещё два утверждения utf8 доказаны (
d31409b) - Ядро насыщает допущение о соседях: «Г : Х не убывает» распадается на порядок хвоста и границу головы (
482a3b8) - Удалён scripts/build-stdlib-index.mjs: печатник указателя на удалённом разборе, не грузится (
8a85f50) - Ещё одиннадцать утверждений библиотеки доказаны: вхождение по построению, «не больше» вместо «не меньше», разъятые конъюнкции (
522b6ea) - Квантор по соседним парам занял отвергаемую форму «не убывает», ядро получило седьмое правило (
0fa312e) - Удалён flang/examples/web/shortener/serve.mjs: ввозит удалённую реализацию; тот же сценарий уже есть планом на flang (
18efb2f) - Удалён flang/proof/search.mjs: ввозит удалённое ядро на JavaScript и не грузится (
0be8536) - Снят мёртвый узел связи на Node и починена ссылка на него (
89bddf4) - Снят мёртвый прогон примера-библиотеки (
7d95994) - Снято хранилище примера-библиотеки: единственный звавший ушёл (
22cff28) - Снят мёртвый HTTP-хозяин примера-библиотеки (
501327b) - Снят мёртвый мост примера-библиотеки к языку (
8f22928) - Снят мёртвый сетевой хозяин сокращателя (
f5490b4) - Снят мёртвый хозяин сокращателя с журналом (
8a14567) - Удалён flang/src/proofterm-probe.mjs: копия удалённого ядра на JavaScript, которая не грузится (
5a4ff76) - Снята мёртвая сверка распределённых узлов (1445 строк) (
20b2294) - Снят мёртвый замер планировщика (2068 строк) (
d9cd3dd) - Снят мёртвый разбор типов стенда (
07f5e4d) - Снят мёртвый замер стенки планировщика (
52f04bd) - Снята мёртвая печать стенда в Elixir (
1bcfbb1) - Снята мёртвая печать стенда в C (
a7f3095) - Функции как значения: сортировка по сравнению доказана, порядок вперёд и назад сведены тождеством (
d3fe2b7) - Сортировка устойчива и доказана: тело разбором вместо свёртки, «не теряет и не добавляет элементов» доказано индукцией по списку (
3791c89) - надзор поднимает упавший процесс на всех восьми целях (
051d579) - надзор поднимает упавший процесс и на цели rust (
c5333f3) - надзор поднимает упавший процесс и на цели java (
7ea6603) - надзор поднимает упавший процесс и на цели csharp (
436d43c) - HMAC-SHA1 сходится и с шестым вектором RFC 2202: ключ длиннее блока хешируется (
18c83bf) - надзор поднимает упавший процесс и на цели elixir (
6b05374) - надзор поднимает упавший процесс и на цели go (
7e955f4) - в шапке вывода ключа убран повтор абзаца о цене витка (
0b58168) - Точка раскрутки перепечатана этим деревом: она снова читает свой слой вычислителя (
95f149b) - надзор поднимает упавший процесс и на цели js (
f99b7b3) - у каждого утверждения о длине теперь есть пример: рантайм-сторожей в выводе ключа не осталось (
fd9d170) - надзор поднимает упавший процесс на живом узле: цель python, прогоном (
c4ef71d) - Двести ввозов дерева написаны именем модуля, через ../ осталось восемь (
75e9c16) - Круг «разобрал и собрал обратно» стал выразим: контракт больше не проверяется, пока считается контракт, и петля постусловия развязана преобразованием программы (
2e2a698) - в шапках драйвера и плана названа настоящая причина: пусковой пакет уходит нулём октетов (
ba6da4d) - База знаний пополнена тремя заметками, и число строк библиотеки пересчитано (
62a66bf) - SHA-1, HMAC-SHA1 и PBKDF2-HMAC-SHA1 сходятся с векторами FIPS 180-4, RFC 2202 и первыми двумя RFC 6070 (
f8d89f0) - двоичный хозяин пишет строку через strlen: пусковой пакет PostgreSQL уходит нулём октетов (
4b8ec2a) - клиент SCRAM-SHA-256 считает доказательство и проверяет подпись сервера (
7bd68b7) - полный узел работает на всех восьми целях: хозяин node.c, 1617 строк, мира 29 (
afb42a9) - Цена утверждений словаря измерена и урезана вдвое: 11,4 раза стало 6,3 (
90d2654) - В базе знаний записан измеренный факт: двоичный хозяин обрывает содержимое на первом нулевом октете, и драйвер PostgreSQL по проводу не идёт (
d6bc2a0) - Доказанное ядром постусловие в напечатанный код больше не едет: на stdlib снято 62 проверки при работе, цена утверждений на сортировке упала с 3,23× до 2,72× (
b0f372a) - полный узел работает на цели java: хозяин node.java, 1063 строки, мира 21 (
aec9fcd) - Сторож ссылок считает и ещё не добавленные файлы дерева (
fd12e22) - Страницы и указатель говорят: модуль подключается по имени, путь — только для чужой ветки и пакета (
307068f) - Десять чисел прозы, разошедшихся с деревом, приведены к замеру; на странице второго замера цены они стали подстановкой (
3b325a9) - Сверки с удалённой реализацией на JavaScript убраны: 44 файла, 31 394 строки (
105943c) - полный узел работает на цели rust: хозяин node.rs, 1158 строк, мира 17 (
e5b6e15) - Подделки ядра проверяются на flang: 3 файла, аксиом ноль, нарушений 0 (
55214e3) - Ведомость снова считается: утверждения переписаны так, чтобы ядру хватило сорока миллионов шагов (
52e8c7a) - У строки одна мера — знаки: содержит, начинается с и разделить больше не режут знак пополам, а соединить отказывает там, где два знака слились бы в один (
5c4eb60) - У строки одна мера — знаки: содержит, начинается с и разделить больше не режут знак пополам, а соединить отказывает там, где два знака слились бы в один (
c015f45) - драйвер PostgreSQL разбирает три сообщения SASL и собирает оба ответа клиента (
81be03c) - Сторож лицензионной разметки написан на flang: 81 публикуемый исходник, 0 отказов (
69b26db) - Узел по ссылкам прогнан на BEAM: работа доехала до имени с провода, а тот же узел без ссылки хоронит работника при «ok:true» и исходе «покой» (
c41b08c) - В package.json осталось три крючка npm, а сорок ярлыков зовутся через ./ярлык (
88b565f) - Сторож ссылок написан на flang и ловит ту же беду: битых ссылок 2 из 880 (
ef6764d) - На сайте есть страницы про базы данных, процессы и категорную поверхность, дорога «как учить язык дальше» и четыре схемы (
f53279b) - цель js вернулась в счёт вторым хозяином node.js: 575 строк, мира 15 (
91065c9) - Ввоз без пути разбирается, ищется по имени модуля и виден сторожу (
fda57b0) - HMAC-SHA256 сходится со всеми семью векторами RFC 4231, вывод ключа PBKDF2 — с вектором RFC 7914 (
5f24e14) - Узел раздаёт работу по именам с провода: адрес и тип принимаемого едут одним значением «Ссылка» от «Т», и груз чужого типа отвергается проверкой типов (
3054a47) - полный узел работает на цели elixir: хозяин node.ex, 877 строк, мира 12 (
b0905aa) - ключ приводится к блоку хеша: длиннее блока — хешируется, короче — дополняется нулями (
d7906b3) - Календарь разобран весь: двадцать три функции из двадцати четырёх несут утверждение, переживающее подмену тела (
01c2d2f) - свод выдаётся байтами, списки режутся началом и сливаются исключающим или (
9de9dcc) - список байтов печатается шестнадцатеричным, по два знака на байт (
b462c11) - слово из тридцати двух разрядов раскладывается на четыре байта и складывается обратно (
d50e819) - Ещё семь функций календаря, и ложное утверждение эталона снято (
c7db98e) - Пять функций календаря получили содержательные утверждения, и одно из них нашло ошибку в самом календаре (
43960e7) - UTF-8 закрыт: все 59 функций трёх модулей несут содержательные утверждения (
e1ddd46) - Разбор UTF-8 обвешан утверждениями: у четырёх функций хода их не было вовсе, «точек не больше, чем байтов» было даровым (
fe189f2) - Разговор с базой: четырнадцать утверждений о чтении ответа (
147865b) - Пять функций UTF-8: три даровых «не больше четырёх на символ» сняты, порядок досыпки и первый байт закреплены (
5b34787) - Двенадцать содержательных о словаре связями, и ловушка на повторяющихся ключах поймана до написания (
e17b981) - «Списки строк» закрыты, начат UTF-8: найдено первое НЕВЫРАЗИМОЕ — квантор по списку внутри постусловия (
6ce107a) - Двенадцать содержательных о множестве строк: вложенный отбор даёт квантор, которого у языка вроде бы нет (
661e02c) - Ещё пять «Списков строк»: три даровых сняты, у склейки и хвоста утверждений не было вовсе (
9f457c7) - Пять функций «Списков строк»: три даровых сняты, в том числе единственное в библиотеке, закрытое индукцией (
95fe659) - Восемь содержательных об опциональном значении, и второй ход ядра: «равен да» после вызова переводит цель из сетки в доказанное (
235b4df) - Утверждения удешевлены: то же самое сказано за постоянное время вместо обхода (
4aadb0e) - Разговор с базой: восемь утверждений о полях, беде и потоке (
7c1424c) - Восемь содержательных о результате, и найден ход: цель, зеркалящая дерево условий тела, переезжает из сетки в доказанное (
49cd47f) - «Строки» закрыты: 31 функция, 36 утверждений, даровым осталось одно — и оно оставлено нарочно (
fb2d786) - Восемь утверждений переписаны: у строки ДВЕ меры, и сшитое из форм разных мер утверждение ложно на одинокой половине суррогата (
606b526) - Семь содержательных утверждений о дереве чисел: сортировка начинается наименьшим, а вставка растит дерево ровно на одно число (
598b419) - Двадцать содержательных утверждений о числах, и все под сторожем: не число, бесконечность и минус ноль ломают половину очевидного (
79f0b0a) - Все двадцать четыре функции словаря хешем разобраны: у двадцати есть утверждение, переживающее подмену тела, у четырёх — записана причина, почему его нет (
9a47d8e) - Разговор с базой: семь утверждений о разборе вести (
1bab435) - Утверждения высшего порядка, функции 26–34: сжато ровно столько, сколько в коротком списке; наименьшее и наибольшее взяты из самого списка (
59c5559) - Утверждения высшего порядка, функции 21–25: на найденном месте стоит подходящее, состав есть два отображения подряд (
61039c1) - Утверждения высшего порядка, функции 16–20: счёт подходящих есть длина отобранного, все и любой сведены к счёту (
1c7a491) - Три вопроса о знаке и «Только цифры»: утверждений не было вовсе, написаны сверкой двух разных способов (
6f34c22) - Шестнадцать содержательных утверждений о словаре деревом: каждое переживает не заглушку, а враждебную сетку (
79bf702) - Утверждения высшего порядка, функции 11–15: порядок вперёд есть порядок назад с переставленными доводами, свёртка пустого есть основание (
4b18462) - Повтор и три обрезки: одно даровое стояло трижды, вместо него круговой ход плюс отсутствие пробела на краю (
a67aaae) - Регистр, разложение, переворот, палиндром: четыре даровых заменены, тавтология у палиндрома не написана (
16502b6) - Ещё пять строковых функций: даровое «позиция неотрицательна» снято, граница кругового хода регистра записана честно (
3759c1b) - Последние два ослабленных заменены полной спецификацией обрезки: ослабленных не осталось ни одного (
a3fcf01) - Разговор с базой: восемь утверждений о расширенном протоколе и о дополнении (
5f7a422) - Утверждения о первых пяти строковых функциях: даровое «счёт неотрицателен» снято, круговой ход и длины склейки записаны (
bba04c1) - Ещё пять утверждений: печать json и таблица знаков по коду; замер даёт 31 содержательное из 34 (
550115e) - Утверждения высшего порядка, функции 6–10: слагаемые и сомножители переставимы, меньшее с большим дают ту же сумму (
23ddde5) - Печать перестала выпускать непроверенное; предел шагов 200 млн по замеру; справка разрезана надвое под предел C99; связанная запись отдаётся выходным параметром (
489863d) - Утверждения высшего порядка, функции 1–5: противоположное складывается в ноль, чётное не меняется вычитанием остатка (
d6dbc7a) - Утверждения о списках, функции 26–28: удалено ровно столько, сколько было вхождений; пар ровно столько, сколько в коротком списке (
09dabe4) - Восемь функций словаря хешем получили утверждения, которые подмену тела заглушкой не переживают (
ff4a4a0) - Разговор с базой: семь утверждений о сборке сообщений клиента (
da5cf1a) - Шесть ослабленных утверждений http.flang заменены пятью содержательными: разбор цифр сказан обратностью таблице, цель — покрытием без остатка (
7b36681) - Утверждения о списках, функции 21–25: вставленное стоит в списке, первый элемент переживает отсев, счёт вхождений не ноль ровно тогда, когда значение в списке (
b097783) - Разговор с базой: семь утверждений о печати чисел октетами и о кадре (
3151002) - Утверждения о списках, функции 16–20: наименьшее и наибольшее взяты из самого списка, сумма неотрицательных не меньше наибольшего (
d7a5419) - Утверждения о списках, функции 11–15: найденное место держит искомое, поиск и обход согласны (
4787e69) - Ещё пять утверждений о http.flang: путь, схема и годность адреса сказаны через то, что они значат (
739284d) - Разговор с базой: шесть утверждений о резке потока по байтам (
6d681f2) - Утверждения о списках, функции 6–10: взятое считается точно, срез до конца отдаёт весь список, промежуток доходит до предела, обход сходится со встроенной формой (
a530c52) - Пять тавтологий json.flang переписаны содержательными, и размен назван: ядро их больше не доказывает (
7a2b6ae) - Пять утверждений о http.flang переписаны содержательными: замер подменой тела даёт 9 вместо 5, даровых не осталось (
f8280b4) - Утверждения о списках, первые пять функций: счёт звеньев сходится со встроенной длиной, отброшенное и взятое вместе дают весь список (
b112be1) - Разговор с базой: первые девять утверждений о знаках и байтах (
65f64c3) - Предел шагов поднят с 40 до 200 млн по замеру: связывание съедает 59 процентов само, ядро 141; обрыв перестал быть бесшумным — шаг, съевший больше половины, называет себя (
47210dd) - Таблица слов языка достаётся прогонщиком, а не командой: словарь и прогон поверхностей ожили — и нашли понятие, выпавшее из двух таблиц из трёх (
41fe41c) - Точка раскрутки перепечатана: предел 200 млн внутри, проверка перед печатью внутри, 24 155 542 байта (
6b1017d) - Проверка перед печатью восстановлена, и разведено чужое столкновение имён, без которого дерево не связывается (
ad3d73a) - Столкновения имён считаются обходом текста за 0,1 с — связывание отвечало за 6 минут (
0559b9d) - Круг обхода дерева разрезается записью-нагрузкой: семья печати литералов вынута и доказана (
3991810) - Двоичный печатает поток токенов: две проверки прозы ожили, и одна из них сразу нашла ложное утверждение суточной давности (
f189a9c) - Три столкновения имён разведены суффиксом слоя, точка раскрутки перепечатана: 24 217 343 байта (
999662d) - Литерал починен, цена названа числом, и указана настоящая причина дороговизны ядра (
5a40cdb) - Предел шагов поднят по замеру с 40 до 200 миллионов, и обрыв перестал быть бесшумным (
06452ff) - Сторож прироста от «веса» ожил: словарь типов спрашивается у двоичного (
6d28909) - Ведомость печатает обязательства целиком и спуски завершаемости (
cafc41f) - Подделки на оба правила прогоняются двоичным, а не мёртвым тестом (
25e5fac) - Точка раскрутки перепечатана: двоичный из семени печатает partialSites (
4c071a5) - Два правила ядра легли вместе: равенство в утверждении и цель-выбор с истинной ветвью (
c98f2ca) - Проза догнала дерево с одним компилятором: README на двух языках и man переписаны по прогону (
fad6a48) - Согласие спек проверяется планом на flang: 290 строк JavaScript ушли, в fspec/ их не осталось ни одной (
d3d3933) - Двоичный научился печатать места частичных форм: ключ partialSites в строке функции (
8f6ebad) - Полный узел заработал на четвёртой цели: хозяин на C# — 1101 строка, мира 14, решений ноль. Сверка восьми целей и печать переведены на двоичный (
b8119a1) - Отозвана собственная ошибка: значение-функция сравнивается верно, потому что дефункционализация делает её вариантом — лишняя проверка формы искомого снята, ложная подделка убрана, довод записан на её месте (
d2bce78) - Шестой ход ядра: цель-выбор с истинной ветвью — введение дизъюнкции слева, ведь «или» в языке разбирается в «если». Две подделки в дереве, изъятие проверки ветви «то» краснеет доказанной ложью (
e5730e9) - Структурное равенство узлов перенесено в ядро доказательства на JavaScript (
deccd4b) - Отказ «правила нет» и доводы про аксиомы выровнены между слоем и свидетелем: сверка ядра снова 29 из 30, единственный красный — сторож постоянного шага, он был красным и на github/main (
28f8bc4) - Второе поколение точки раскрутки: шесть файлов из семи совпали с первым, расходится только compiler_flang.c (
59f3b70) - Круг раскрутки замкнут прогоном без Node: 24 мин 50 с, семь файлов совпали байт в байт, и собранный двоичный тоже (
f913ae0) - Из справки убран абзац, ставший неправдой: «печать не проверяет типы и завершаемость» (
6056021) - Числа замера подставлены вместо выдуманных: 59 программ, и почти половина — ложные доказательства (
00249ca) - Числа точки раскрутки в bootstrap/README пересчитаны на нынешнем дереве (
6b40f75) - Разрешение конфликта в рантайме на C было неверным и не собиралось: их блоки звали машинерию, которую моя сторона удалила (
8dd40e5) - Печать модуля связи переехала на двоичный: 105 строк из 1117 разошлись, и обе стороны названы (
2e6eda9) - Шестое решающее правило доехало до слоя на flang: файл 03 закрыт вхождением по построению, стало 10 содержательных из 20; подделка про функцию-значение краснеет при снятии проверки формы (
880d783) - Уборка после удаления JavaScript в стволе: мёртвая печать снята, живое оставлено (
5afc272) - Незаконченная правка сторожей и запусков после удаления JavaScript: зафиксировано на обрыве лимита, продолжение по /srv/flang-rabota/sostoyanie-storozha.md (
314e03e) - Скрипт на JavaScript, печатавший точку раскрутки, удалён; релизный архив берёт её готовой из bootstrap/ (
12d9867) - Шестое решающее правило — вхождение по построению — заведено у свидетеля: подделка про чужой элемент и подделка про функцию-значение отвергнуты (перенос в слой на flang ещё не сделан) (
b8a9d6d) - Перепечатка точки раскрутки вернулась на путь сборки: печатает двоичный, сверка байт в байт цела (
8c051ee) - Полный узел заработал на третьей цели: go. Мира у хозяина 12 строк — меньше, чем у Python и у JavaScript (
2f2570a) - Допущение индукции приезжает ПО МЕСТУ ВЫЗОВА, переписка равенствами дошла до правила порядка, замкнутая арифметика считается, а склейка фактов по вызову больше не теряет их: стало 9 содержательных из 20 (
72fe55e) - Полный узел заработал на второй цели: узел на Python и узел на JavaScript ведут одну программу через настоящий провод (
ec55079) - Планировщик и таблица процессов узла переехали на flang: печатаются во все восемь целей, 67 744 сверки, расхождений 0 (
41050dd) - JavaScript удалён: 48 файлов, 56 072 строки. Компилятор один — написан на flang, собирается в двоичный, печатает сам себя и во все восемь целей (
fe8e8a3) - Точку раскрутки печатает сам двоичный: Node ушёл с пути сборки, обе печати совпали байт в байт (
88b877d) - Справка двоичного починена: перенос строки в тексте был буквальным, сборка -Werror снова чиста (
4ed7c26) - Восемь целей печати в двоичном: десять столкновений имён в замыкании разведены суффиксом слоя, точка раскрутки перепечатана — 23 903 453 байта (
9bc9da6) - Страница руководства называет, что печать проверяет и чего не проверяет (
a8954a8) - Столкновение имён снято переименованием: «Хвост строки» обходчика корпуса и языкового сервера — разные функции, совпало только слово; точка раскрутки перепечатана (
c3bebbf) - Печать двоичного спрашивает у проверки: разбор, типы, завершаемость и ядро — примеры названы пробелом (
4428bcf) - Четыре новых имени переименованы, а не помилованы; три отставшие ведомости пересняты пофайльно — и рост оказался стволовым (
274d3c1) - SPEC самоприменения знает про соседа по подкаталогу: прогонщик корпуса (
18d328d) - Компилятор на flang догнал правку: поле суммы из одного варианта и в типах, и в вычислителе (
7792358) - Проза, отрицавшая форму, догнала дерево: сторож утверждений чист (
f54b527) - Охват сторожа имён пересчитан: двенадцать подделок — образцы тестов, и решение записано (
3a0cc72) - Шапка прогонщика догнала дело: обходчик стал двумя строками (
5f2e7a5) - Точка раскрутки перепечатана после свода слоя ввода-вывода: 7 файлов, 15 513 900 байт, сверка совпала (
d44898e) - Числа прозы догнали дерево: 33 переписаны измерителем, три ложные тревоги сторожа пересказаны так, чтобы проза осталась верной, ловушка записана в базу знаний (
f0e966f) - Точка раскрутки перепечатана после свода границы входа: 7 файлов, 15 487 176 байт, сверка совпала (
d20b8eb) - Ведомость тоже смотрит разобранный вход: программа с четырьмя свойствами печаталась зелёной (
cb0e9ad) - Отказ без довода называет и каталог: команда принимает не только файл (
81276bd) - Подсказка «как запустить напечатанное» проверена прогоном и поправлена у трёх целей из восьми (
9fff8d6) - Обходчик примеров дерева переведён на flang test: 35 строк оснастки заменены одним вызовом (
9d3c202) - Числа сайта и описания пересняты на собранном дереве: тотальных 7899 из 9854, доказано ядром 239 из 409, аксиом ноль (
9cc1cff) - Цена нового отклика предъявлена и уплачена: разбор «Отклика» без запасной ветки обязан дописать ветку (
e468ed3) - Отчёт различает три числа примеров: свои прогнанные, чужие прогнанные и потерянные с отказом (
8b68b57) - Поле суммы из одного варианта доехало до печати: восемь рантаймов и точка раскрутки (
1fe3126) - Числа прозы догнали дерево, и заметка про срок назвала своё настоящее место — машину состояний связи (
93b0a58) - Проза догнала свод: справка, страница руководства и сайт больше не обещают одну цель из восьми (
a9cf1aa) - Прогонщик считает СВОИ примеры отдельно от ввезённых: девять файлов на 11 683 строки отчитывались чужими (
6eea2b4) - Проза догнала бинарник: справка, страница руководства и страница установки называют весь пробел, а не половину (
9f464f8) - Проверки формы написаны НА FLANG: двоичный считает 68 из 68, и отрицательные — обычным «пример» (
8c6d8f0) - Контракт назвал числа после слияния: 17 472 сверки решения о связи и 3672 сверки провода на восьми целях (
e4d0343) - Надзоры из плана сверены дважды: со свидетелем и с разбором; конец связи на Python догнал пятый признак (
aaa8f98) - Сторожа имён и счёта возвращены в исходное: ноль новых нарушений от этой работы (
d978de0) - Свод догнал числа: описание самоприменения перестало отставать от дерева, новая страница замера встала под запрет жаргона (
f666033) - Подделка на каждое объявление и проверка на сам сторож: изъятие обязано краснеть (
a4b0b0d) - Бинарник перестал принимать неверное молча: суд по составу правил, а не по трём из четырнадцати (
345972e) - Возврат web/app и web/wasm, снесённых по моей ошибке, и снятие закрытой строки долга (
9ce17f3) - Точка раскрутки перепечатана, и собранный двоичный принимает форму сам (
27a78ae) - Хозяин в C догнал словарь: октеты, ввод потомка, срок ключом — и вывод обоих совпал байт в байт (
9682dec) - «надзорыИзПлана» открыта наружу: сосед просил, и это дешевле, чем оставить 12 строк непроверяемыми (
b0fb737) - Браузер заговорил со службой: три кириллических маршрута из трёх, было ноль из трёх (
6ed8154) - Обёртка «потерять» убрана: решать, докладывать ли о разрыве, узлу больше нечем (
4b59aea) - Три дыры выразимости закрыты формами, которые разбор прежде отвергал (
fa953d6) - Сторож чисел поправлен: число про distributed.mjs называет день и способ замера (
b575b1d) - Ввод потомка и срок хозяина проверены планом на flang, а не мимо языка (
1d62340) - Сверка «Долгов» с деревом стала зелёной: 22 раздела из 22 (
f2150c4) - Сторож печати плана переехал из рабочего пути: потолок 29 722 строки JavaScript восстановлен (
b5979b7) - Вторая цель заговорила: конец связи на Python пожал руку узлу на JavaScript по настоящему сокету (
8b50503) - Улика и починка октетов под проверкой: 557 октетов настоящего PostgreSQL проезжают байт в байт (
b48a5a9) - Цена обнаружения дыры в потоке посчитана в контракте: поле в кадре и два числа на связь (
328b50a) - Словарь ввода-вывода вырос на три поручения и один отклик: октеты списком чисел, ввод потомка, срок хозяина ключом (
d0678d9) - Напечатанный модуль связи получил лицензионную разметку: печать её не ставит и ставить не должна (
4b3ffcc) - Развилка «два надзора над одним процессом» названа: из трёх исходов два уже видны, третий стоит пятого кадра (
b1e58b7) - Контракт распределённости догнал прогоны: девятнадцать испытаний, шесть строк ведомости из «объявлено» в «сделано» (
d5dd52b) - Принятый сокет, который не назвался, закрывается за 704 мс при сроке 700 вместо вечного ожидания (
6b4e850) - Контракт и база знаний догнали замер: строка «мир 459, на flang нет» поправлена разбором, а не стиранием (
aa930df) - Четыре ветки без прогонов получили прогоны: обратное давление, «через N», запас витков, «остановить» над представителем (
f1aa403) - Часы хозяина на C пошли в миллисекундах: было пять одинаковых замеров подряд, стало три разных (
45534aa) - Проза догнала дерево: спецификация описала печать плана, база знаний поправлена, сторож чисел стал чист (
2ff91f9) - Проза слоёв самоприменения и точка раскрутки догнали пометки (
773591c) - Узел перестал решать сам: жизнь связи ему печатает компилятор, и 13 прогонов по настоящим сокетам зелены (
76358b0) - Восемь близнецов печати на flang догнали форму: 8 из 8 сверок зелены (
c72e881) - Проза двух примеров догнала анализ: убывание числа он принимает, и цена этого названа (
835369e) - Прогонщик корпуса: течи на путях отказа закрыты, а руководство узнало про каталог и маску (
cd5e451) - Эталон надзоров из плана: перевод сверен с разбором на 9 программах, 11 надзоров, изъятие краснеет на всех (
113bd5b) - Близнец на flang догнал форму: лексер, разборщик, типы, вычислитель, формы, отказы (
5c8bc18) - flang в Vim и Neovim: правила подсветки напечатаны из таблицы языка, а сервер найден четырьмя путями и проверен настоящим редактором (
3fd8b4e) - Срок первого знакомства: сосед, который не поднимется, назван за 803 мс вместо вечного молчания (
0ab9213) - Сокеты и часы стали решением на flang: жизнь связи — чистая машина состояний, 307 строк эталона (
0a0dfeb) - Путь установки проверяется целиком: четыре способа, семь команд на каждом, и шестая поломка ловится прогоном, а не человеком (
71c5dee) - «Пробелы» объявлены натуральным числом, и сторож ушёл: доказательство стало статическим (
a06d3be) - Имена в прогонщике корпуса развёрнуты, а числа прозы догнали дерево (
f931f0a) - Двести девяносто три функции корпуса были тотальными и без пометки: анализ берёт их как есть (
f2d60bb) - Заготовка заявки в linguist перестала ссылаться на четыре каталога, которых нет (
35a4343) - Контракт разбора моделей назван тем, что он делает, и его критерий готовности приведён к дереву (
80ad639) - Руководство, описание языка и спецификация приведены к дереву: старого проекта в них больше нет (
2fd8298) - Сторож жаргона: внутреннее слово больше не имеет права попасть в текст для читателя со стороны (
642bab6) - Найдена ошибка библиотеки: Content-Length считается знаками, а не октетами — и чинится не одной строкой (
97e109f) - Правка рантайма 0.5.1 догнала точку раскрутки: две строки исходника, шесть килобайт печати (
3bfe929) - Слой доказательств получил первые собственные примеры: пять на обязательства и ядро (
1c1df90) - Точка раскрутки догнала исходники: слияние с конфликтом оставило её на день позади (
da2b7f3) - Форма напечатана во все восемь целей: рантаймы сошлись знак в знак на 15 входах (
8550b98) - Хозяин вкладки перестал ввозить компилятор, и приложение поехало из напечатанного модуля: 1 768 447 байт стали 102 675 (
d68bd04) - Страница руководства называет две цели печати вместо одной: c и elixir, а недостающих шесть (
9c78283) - Сокращатель перестал держать свою копию: 67 строк сняты, числа деревьев пересчитаны прогонами (
c679a9e) - Суррогат решено отвергать: 1 112 064 скалярных значения замыкают круг, все до одного (
dbbf2c8) - Печать плана написана на flang и сверена побайтово: 108 программ корпуса из 108, включая программу с планом (
6464f66) - Предел раскодирования в http закрыт: круг замыкается на 1 114 112 точках из 1 114 112, было 95 (
cf2e8de) - Справка emit перестала врать про обе цели: C# отбрасывает недостижимое, а границы входа у чужой программы нет ни у одной (
b18a089) - Числа сверки восьми целей в контракте пересчитаны прогоном: 456 вопросов, 3648 сверок (
17bf1df) - Справка двоичного больше не врёт про Java: целей названо две, и про каждую сказано, чего у неё нет (
d94c2d7) - Однобуквенное имя в эталоне переименовано: сторож имён поймал «м» (
789a6f7) - Печать перестала молчать о плане, а JavaScript научился его печатать: восемь целей отвечают, семь отказом (
e0afec6) - Двоичный печатает в Java: 7 столкновений имён разведено, долг границы входа закрыт, и напечатанное запускается (
0d17aa7) - Граница входа теперь строится на flang: программа, напечатанная двоичным, больше не берёт -3 на типе «нат» (
cf67fa3) - Форма «символ по коду» заведена в рабочем пути: 21-я встроенная, обратная к «код символа» (
feb12e8) - Границы кадров переехали в эталон и сверены рваным потоком: 797 знаков, резаных по 7, дают ровно 10 писем (
c4c2f37) - flang test берёт каталог и маску: прогонщик корпуса написан на flang (
bfa9872) - Перепись переcчитана прогоном: 1 764 байта на процесс не воспроизвелись, вышло 1 948 (
a00ecb0) - Из npm теперь ставится тот же двоичный компилятор, что из brew: расхождений было 54 из 59, стало 7 — и все семь названы (
ed4090a) - Суффикс цели переведён на CSharp, как у карты разведки и соседних веток: 316 имён из 324 совпали с картой поимённо (
891455e) - Двоичный печатает в Python: долг границы входа закрыт 161 строкой на flang, ключ --target заведён 127 строками C, вне границы расхождений 0 из 102 (
68d7a82) - Четыре беды одной команды: каталог заводится, жаргон убран, рантайм едет в архиве, тест называет обе стороны (
8beae33) - Граница входа у печати в JavaScript печатается, а не вычитается: сверка со свидетелем стала 107 из 107 на всех байтах (
9ef941f) - Вход по паролю открытым текстом проверен настоящей базой: поддержаны два способа из шести (
104ac38) - Ведомость отвечает первой строкой: 26 строк на одну функцию стали 14, словарь ушёл за ключ (
ea5619b) - Отказы компилятора проверяются на flang: 9 примеров вместо проверок на JavaScript (
d9d68c7) - Целое длиннее пятнадцати цифр объявлено неразобранным, и минус ноль проверен примерами (
52afcce) - Контракт распределённости догнал прогоны: вторая цель посчитана числом, кворум назван развилкой (
5a0ea6a) - Убран тип, который никто не может построить, и названо следствие: типов колонок у программы нет (
adb48d0) - Двоичный печатает в C# из командной строки, и долг границы входа закрыт: напечатанное собирается dotnet и отвечает {"ok":true} (
a3a5001) - База знаний: четыре заметки о том, что выяснилось на драйвере, и охват сторожа имён пересчитан (
aeb3f07) - Двоичный печатает в Elixir: ключ --target elixir работает, а долг границы входа закрыт — 108 программ из 108 побайтово без единого вычитания (
07040fb) - Двоичный печатает в JavaScript: 102 программы корпуса из 102 совпали с Node побайтово, кроме одного названного блока (
cae4c01) - Закрыты три дыры, найденные замером по настоящим службам дерева (
a85747e) - Печать в JavaScript въехала в замыкание двоичного: неподвижная точка сошлась 37 из 37, C вырос на 1 056 833 байта (
d18e567) - Драйвер PostgreSQL на flang: настоящая база отвечает, и граница языка названа числом (
c7690d4) - Воспроизводимость по семени предъявлена прогоном: 6 семян, 12 прогонов, 6 разных журналов и ни одного расхождения внутри семени (
bb6f826) - Предел пробега стал ДОКАЗАННЫМ сроком: 47 витков вместо миллиона у 55 мест из 60 (
aef7ed3) - Двоичный печатает в Go: 163 программы корпуса, 159 расходятся со свидетелем только границей входа, 1 — транслитерацией, и оба расхождения есть у цели «c» (
2beb35e) - Проза о границе выправлена: эталон stampFile написан, и правило «файл один — беда его» названо на обеих сторонах (
14bb1f7) - Двоичный печатает в Python: 302 столкновения имён разведены суффиксом, 391 объявление цели переименовано (
a8f1938) - Обратная сторона провода приехала в эталон: раскодирование на flang, 402 значения корпуса сходятся оборотом (
d45c8b8) - Двоичный отвечает редактору:
flang lsp— 47 столкновений имён разведено, сессия LSP сверена с Node побайтово (6516ea7) - Печать в C# втащена в замыкание двоичного: 4261 функция против 3919, ноль столкновений, сборка без единого предупреждения (
70bf3c2) - Печать в Rust втащена в замыкание двоичного: 2 столкновения имён на 234 объявления, и долг границы входа закрыт — 108 из 108 программ побайтово (
892780f) - Печать в Elixir втащена в замыкание двоичного: 262 столкновения имён разведены суффиксом, замыкание выросло до 400 типов и 4294 функций (
a18bb10) - Печать в Java втащена в замыкание двоичного: 7 столкновений имён разведено, связанных функций 3919 → 4247 (
a153b73) - Имена печати в JavaScript разведены суффиксом: 141 столкновение стало 0, корпус сошёлся 107 из 107 (
6d86ab1) - Печать в Go встала в замыкание двоичного: столкновение одно из 197 привезённых имён, и границу входа эталон печатает сам (
38b9fb2) - Печать в C# развела все свои имена: 395 объявлений получили суффикс «шарп», сверка со свидетелем осталась 107 из 107 (
b2998c6) - ADR-0003: решение «свою BEAM писать не надо» отменено, своя машина пишется (
44070ac) - Ключ --args и стрелка описаны там, где их ищут: 5 прогонов в страницы, 3 написания стрелки названы (
926abf4) - Ведомость пакета берётся у прошедшей проверки: второе ядро в дереве убрано (
a444d75) - Сторож имён считал копии деревьев исполнителей: 809 файлов превратились в 9708 (
471bbee) - Свидетель словаря свойств стёрт: 163 строки JavaScript, ни одной проверки не потеряно (
c937d8b) - Свидетель сетки нарушений стёрт: 202 строки JavaScript, ни одной проверки не потеряно (
1be151e) - Бюджет ядра свой: 40 млн витков роняли команду там, где свидетель отвечал за 87 мс (
a2b0986) - Свидетель равенства морфизмов стёрт: 786 строк JavaScript, одиннадцать проверок названы (
6cda817) - Свидетель законов множеств стёрт: 292 строки JavaScript, одна проверка снята (
5a40bea) - Свидетель квадрата связи стёрт: 363 строки JavaScript, десять проверок названы (
2e8bc56) - Ядро доказательств переключено на слой flang: три файла и 6 442 строки ушли из рабочего пути (
1a8fb1d) - Транслит ушёл из релизного архива: компилятор печатается в compiler_flang.c, и починено это в имени модуля, а не в генераторе (
ec3806e) - Служба на flang ходит наружу: «Открыть соединение» открывает сырой сокет, а вся сетевая четвёрка названа одним словом (
66b9406) - Восьмой ход доехал до эталона на flang: постусловие вызванного стало фактом, а круг закрыт неподвижной точкой (
c5dfbc9) - Четыре свидетеля ушли с рабочего пути: 27 файлов и 37 081 строка стали 23 и 35 991 (
0ac93b3) - Девять программ сошлись побайтово: сторона на flang читает порядок соседей и свёртку, растущую ровно на один (
435756a) - Исход счёта стал суммой из четырёх: отказ называет ЛОЖЬ, и расхождений 14 из 324 (
0f3d722)
Ещё 598 правок языка снаружи не меняют.
0.5.1 — 19 августа 2026
- Выпуск 0.5.1: сборка на Mac починена, и скрипт выпуска перестал искать несуществующий файл (
6d845f9) - Библиотечная дверь напечатанной программы проверяет типы: чужой код получал мусор молча (
c5b64d4) - Пакет назван именем языка, и три страницы перестали учить команде, которой нет (
80d1288) - Сборка на macOS чинится вторым макросом:
brew installне доходил до конца ни у кого на Mac (d187ac0) - Четыре сторожа прозы снова зелёные: 53 числа пересчитаны деревом, а не памятью (
1dcf19a) - Признак у оракула функтора читался печатью и был ложен всегда; четыре заметки базы знаний (
18f9de9) - SHA-256 на flang: 37 функций, все тотальные, сверено на пяти официальных векторах (
a09bae1) - Сетка отношений множеств переключена на слой: checkSetLaws больше ничего не решает (
87aa8cd) - Байты UTF-8: перевод текста в байты и байтов в кодовые точки, 16 функций (
7277eb9) - Двоичный собирает пакет:
flang package— десятая из десяти команд (c5c53a3) - Исход прогона стал замкнутой суммой и у эталона на flang (
b18aa61) - Равенство морфизмов переключено на слой: setoid.mjs ушёл из рабочего пути (
b343fb6) - Двоичный читает замок: программа собирается из груза, прежняя схема отвергается (
ee8f60a) - Граница вычислителя: исход прогона стал замкнутой суммой у свидетеля (
8c56ffe) - Двоичный собирает замок:
flang lockбез Node, 20 сверок байт в байт (2b8deaf) - Ответ ядра наружу оставлен побайтово прежним: список неоплаченных — связь внутри ядра (
892c1b0) - Ядро: восьмой ход — постусловие вызванного как факт на месте вызова (
fb0187f) - Точка раскрутки перепечатана поверх слитого ствола: 3868 функций (
3fdb904) - io: место отказа, имя плана в пределе и код 3 у ненайденного плана (
3289026) - Двоичный умеет io: хозяин с эффектами написан на C, план прогоняется без Node (
5318745) - Точка раскрутки перепечатана: восемь новых функций эталона в bootstrap/ (
2002462) - Правило «не минус ноль» перенесено на сторону flang: поле, два источника и четвёртый проход сужения (
e050585) - Точки входа плана на flang: найти, начать, шагнуть (
063ac89) - Точка раскрутки перепечатана поверх слитого ствола: 3847 функций (
a9a6f31) - Три коротких имени в точке входа развёрнуты: сторож имён вернулся к прежнему долгу (
b78af89) - Правило «свёртка растёт ровно на один» и сличение с точностью до порядка соседей (
24291c7) - Поле «не минус ноль» на числовом типе и дно из неравенства нулю (
cf33543) - Двоичный умеет facts: вердикт байт в байт как у свидетеля (
69c88a3) - Замок схемы 2: brotli из формата убран, адрес модуля — sha256 исходника (
5b6e0c7) - Факт-чекинг втащен в замыкание компилятора: 21 столкновение имён разведено (
5e597ac) - Указатель библиотеки пересобран после слияния ствола (
6dcfa7d) - Слияние ствола, перепечатка точки раскрутки и измеренный ноль на именной границе (
06e9a93) - Числа прозы и замеров перемерены под семнадцатый модуль (
ce8f540) - Корпус: ещё четыре цепочки номеров переписаны на «нат» целиком (
ba9abe9) - Корпус: шесть параметров-номеров объявлены «нат» вместо «число» (
84e19e3) - Точка раскрутки перепечатана: правило случаев доехало до C (
caa29d7) - Класс номера: правило целости встало в ПАРУ, плюс два правила границ — 89 из 271 стало 92 (
e0330da) - Квадрат связи переключён на слой: рабочий путь 29 файлов -> 28 (
c60a5ec) - Двоичный умеет
ast: дерево разбора байт в байт как у свидетеля (734bfa3) - Оракул функтора написан на flang и проходит проверку: 320 строк, 0 диагностик (
03163f8) - Шапка failures.flang говорит, откуда файл: две редакции, что взято и почему не склейкой (
5989955) - Сторона на flang: тот же принцип, позванный с пути постусловия (
df540a7) - Двенадцать однобуквенных имён взятой редакции переименованы: сторож имён вернулся к прежнему числу (
a44cf80) - Запросы и ответы: 17 постусловий там, где их не было ни одного (
021842d) - Страница сокращателя: замер шести нужд службы и раздел про журнал (
a9d5f31) - Класс номера: целость номера читается со сторожа «остаток от 1 равен 0» — 86 из 271 стало 89 (
c3ef865) - Улика на основание 64: 520 случаев сверки с Buffer, расхождений ноль (
0ffdd35) - Индукция по разбору на пути объявления: ядро само ведёт базу и шаг (
ccc4ebb) - Хозяин: allowHalfOpen — служба получила право подумать между запросом и ответом (
18a49ba) - Основание 64 закрыта: кодирование и раскодирование по RFC 4648 (
60f1ae7) - Служба связана с журналом упреждающей записи: подтверждение только после записи (
c909f7f) - Две редакции failures.flang сведены: взята полная, таблица кодов приехала из второй (
b59b281) - Основание 64: азбука, шестёрки и тройка байтов (
3aeee7f) - Свидетель законов выброшен: семь модулей на JavaScript и 207 проверок (
3a6c59f) - Примеры доехали до двоичного и до прозы; долг печати бинарника назван числом (
ab0f88e) - Предел сетки моноида и изоморфизма: копия в пути вместо ленивого чтения у слоя (
5385822) - Моноид и изоморфизм переключены на flang: рабочий путь 36 файлов и 37 371 строка → 29 и 36 349 (
a0e7802) - Оракул моноида и изоморфизма переехал в дерево: 713 и 6 строк таблиц сошлись знак в знак (
454d610) - Числа прозы о свидетеле поправлены на измеренные: 2140 строк, а не 2141 (
0b88c4c) - Утверждений о планировщике стало 15, доказаны ядром все 15; четыре ожидаемых проверены на выразимость поимённо (
72ac2a4) - Сверка планировщика выросла с 264 исполнений до 336, изъятий с 11 до 19, словарь сверяется на 174 программах (
78875d4) - Планировщик процессов на flang: 260 строк стали 2048, сверка на 264 исполнениях сходится (
964d0a5) - Числа прозы догнали дерево после слияния ствола 0a87f260: 13 расхождений (
d63ec85) - Ствол влит; три коротких имени выправлены; четыре заметки в базе знаний (
9319177) - Имена файлов и сторожевые списки приведены к новому словарю (
3925559) - Код переведён на новый словарь, точка раскрутки перепечатана (
7278119) - Спецификация самоприменения: состояние шести генераторов кода догнало дерево (
da35879) - Проза переведена на новый словарь: эталон — слой на flang, свидетель — JavaScript (
7862010) - Дыра уравнения ветви закрыта проверкой: образец, перевязавший разбираемое имя (
5e64b9d) - SPEC ядра доказательств: раздел о мере списка с числами и списком подделок (
8a95ed3) - Версия набора правил 11: отказ правила порядка называет все случаи меры целиком (
6e47681) - Точка раскрутки перепечатана после правки лексера: 13 304 108 байт (
82424e9) - Порядок таблицы лексера сведён с образцом; раскладка связывания и долг имён переснята (
8033924) - Эталон догнал свидетеля на доказанной непустоте: семь целей печати из восьми (
e0ce3f4) - Числа README и flang/self/SPEC.md догнали дерево: сторож раскладки чист (
a12a847) - Порядок ключей results восстановлен: свойства зовутся на прежнем месте таблицы, а не после неё (
12f6497) - Тождество читает длину как меру: отказов stdlib 80 -> 77, корпус 111 открытых (
c66267b) - Сторож чисел прозы чист: последние пять расхождений выправлены (
d4cc71a) - Постусловие границы снято: сторож всего дерева зелен на этом файле (
94fea93) - Обрубок в имени оракула развёрнут: «знач» стал «вычисленное» (
370123e) - Сторож на собранный HTML, оглавление через разбор, замер сборки двоичного перемерен (
0042336) - Девять чисел прозы догнали дерево; в стороже осталось 47 (
34be51e) - Постусловие зовёт только местные имена: сторож всего дерева зелен (
c80884c) - Пять свойств переключены на flang: рабочий путь 36 файлов и 37 270 строк → 31 и 36 530 (
98b5310) - check гоняет примеры: ложный пример больше не печатается в цель (
11d2f02) - Форма диагностики, границы чисел и кодовые точки: 270 новых точек сверки, 0 расхождений (
0eb103b) - Сторона на flang: мера списка перенесена целиком, близнец сошёлся с эталоном (
59b927d) - Учебник, страница руководства и обходчики зовут команду, а не путь в сборку (
271de16) - Одно имя у программы — «flang»: так называет её и сборка из исходников (
b517cc8) - Имя вида и описание значения сверены прямо, границы представления названы (
e8601c9) - Голая «flang» открывает оболочку; «--help», «-h», «--version» работают (
0fd73cf) - Лицензионный гейт снова зелёный: шесть файлов замера конкурентности несут SPDX (
ac6acba) - Числа прозы переписаны измерителем, а не руками: сторож чисел научился чинить (
a1d4489) - Равенство значений и порядок процента: 303 пары и 484 пары, 0 расхождений (
e7481d2) - Пара догнана после слияния: справка io у близнеца и потолок ствола (
c742d5a) - Оракул свойств переехал в дерево: 441 строка на flang, 706 строк таблиц сошлись знак в знак (
605cd5c) - Пакеты: библиотека в одном файле, подключение одной строкой, сборка без сети (
d1dbff6) - Побайтовая сверка встроенных форм: 8001 имя, 556 отказов, 320 помощников, 214 программ — 0 расхождений (
62048d2) - Сторона на flang для горячей замены: первая редакция (
0d1de88) - Правило порядка научено мере списка: 91 отказ stdlib стало 80 (
465d947) - Словарь встроенных форм собран в один файл на flang: имена, синонимы, арности, частичность (
55bac10) - Витрина Rosetta научилась показывать доказанное: 5 задач из 14 вместо 2 (
20bf2ec) - Словарь перевёрнут в шести сторонах и сверке: flang — эталон, JavaScript — свидетель (
3801845) - Версионирование документации: числа подставляются из замера, страница выпусков печатается из тегов (
f24199c) - Монотонность считает flang: пятое свойство сверено, все 24 записи корпуса совпали (
3fee55d) - Частичный порядок считает flang: три закона и карта здоровых сверены побайтово (
4f187b2) - Дистрибутивность считает flang: обе стороны закона сверены побайтово, расхождений 0 (
d13349a) - Идемпотентность считает flang: обе формы закона сверены побайтово, расхождений 0 (
958c8eb) - Коммутативность считает flang: 226 программ корпуса сверены побайтово, расхождений 0 (
b0c1153) compat.mjsразделён: перевод модели FTS вышел из рабочего пути, 230 строк вон (0f04207)- Роадмап и разборы перемерены деревом; спецификация уехала в конец раздела «Язык» (
70aa6f2) - Витрина Rosetta научилась показывать доказанное: 5 задач из 14 вместо 2 (
565d863) obligations.mjsвышел из рабочего пути разделением: 252 строки JavaScript вон (51a789a)- README журнала: числа, границы и честный список того, чего он НЕ гарантирует (
6a8c926) - Постусловия у словаря хешем: ещё 9 утверждений о границах хеша (
a72d544) - План дописывания и прогон корпуса: 75 проверок, все зелёные (
00a35e0) - Журнал упреждающей записи написан на flang: 25 функций, все тотальные, сторожей ноль (
a2e15c9) - Близнец: убрана мёртвая «Без последней части», тавтология заменена утверждением (
ebf4318) - Границы
подстрокадоказываются четырьмя фактами, и именная граница пережила вычитание: 19 мест из 212 стало 52 (45d7856) - DISTRIBUTED.md: ведомость близнеца и честный список невыразимого (
3790a83) - Постусловия у высшего порядка: ещё 12 утверждений о длине результата (
c5f3450) - Постусловия у словаря, дерева чисел и дерева-словаря: ещё 12 утверждений (
83791df) - Постусловия у логики, опций, результата и списков строк: ещё 21 утверждение (
3a33ad8) - Близнец распределённости: flang/self/distributed.flang (
55587dd) - Постусловия у списков, строк и множеств: 39 утверждений о длине и знаке (
d18c1e9) - Седьмое поручение и код выхода: «Запустить процесс» отвечает двумя откликами, а
flang ioразличает «нашёл беду» (1) и «сам сломался» (3) (db9a25f) - Два места, где дерево врало само себе, перемерены прогоном: 57 773 в 57 и зазор ядра 0 из 301 (
633e411) - Права на два файла возвращены: их сменил npm, а не правка (
ff65da0) - Четыре страницы: установка, операции, пакеты, разборы — всё прогнано (
dbf2df9) - Словарь ввода-вывода вырос на «Перечислить каталог»: 1122 проверки дерева перестали упираться в «прочитать можно только названный файл» (
120e688) - Порождённый C перепечатан после языкового сервера (
063d2f4) - Числа прозы перемерены деревом после всех семи слияний, и дубли в своде сняты (
db97373) - Порождённый C перепечатан после обхода занятых имён, три числа прозы перемерены (
73bee76) - Порождённый C и рантайм перепечатаны после арены памяти (
d7c344c) - Порождённый C перепечатан после встречи со стволом (
763c8b8) - Порождённый C перепечатан после зазора ядра (
a5be510) - Точка раскрутки перепечатана после встречи со стволом (
7f64a15) - Ссылка на эталон наборов поправлена: файл переехал, а восемь близнецов не знали (
4d372c5) - Довод «почему счёт не аксиома» написан, а не обойдён: сторож аксиом поймал слово без довода (
fd48792) - Правило записано в SPEC: имя модуля и имена, занятые целью (
cd3844e) - Точка раскрутки перепечатана на новом стволе: 7 файлов, 12 883 135 байт (
9b8a92b) - Проза догнала закрытый зазор: план выброса эталона и спека ядра говорят 291 из 291 (
8e9f1a4) - Два файла вернулись в ведомость:
тольконе покрывал того, что ввёз вычислитель (34bf938) - Четвёртый ход проведён руками: три программы зазора сошлись с эталоном (
115ba46) - Вычислитель ввезён в ядро-близнец: четвёртый ход получил чем считать (
aef255a) - Пятнадцать функций «Свободные имена» переехали слоем ниже: решать про замкнутость обязан тот файл, где стоит ход (
8025fba) - Обход стал суффиксом у всех восьми: приставка
flang_у бэкенда уже занята (0593d2c) - Числа прозы сведены прогоном: обход занятых имён прибавил строк и функций (
705a83b) - Точка раскрутки перепечатана: обход занятых имён въехал в замыкание (
edffa79) - Таблицы занятого переехали из
src/emit: тот каталог — реестр целей, а не полка (8c0d260) - Печать обходит имена, занятые целью: восемь бэкендов и восемь близнецов (
ff1d751) - Дефект назван и померен: имена, занятые стандартной библиотекой цели (
99fff55) - Сторожа сведены после границ номера: ведомость, потолок, слой types (
b27d04a) весвъехал в близнеца: 24 отказа по имени сняты, остались два по ядру (742d251)- Точный десятичный въехал в двоичный: 27 примеров денег бинарник берёт сам (
bf2fdf7) - Масштаб доехал до близнеца: точный десятичный стал типом, а не именем (
88b043c) - Справка близнеца на flang догнала эталон: раздел про замок есть в обоих (
50a776e) - Потолок рабочего пути поднят на 88 строк и разобран пофайлово; замок в путь не входит (
a800cfc) - Предел на проверку: зависший файл называет себя, а не молчит до чужого срока (
e08797d) - Близнец догнал:
длинапомнит контейнер и на flang, точка раскрутки перепечатана, неподвижная точка сошлась (4cc5703) - Печать груза считается по тексту, а не по канону: переставленный ключ отвергнут (
1f2274d) - Сторож временных каталогов: прогон, оставивший мусор, называет его числом (
5229097) - Отказ
flang lockбез файла встал до ввоза модуля, а не после (aa7bdba) - Сторож предобработки заведён в npm-скрипты: comparison:check рядом с emit:check (
e992c28) - Замок без склада записан числами: 7,6 КБ, цена имён 25 %, обновление целиком (
48b6cac) - Порядок ключей в замке сохранён: печать из замка совпала с печатью из исходников (
1be224c) длина Xпомнит X: три тавтологии из корпуса убраны, доказанных мест 18 → 19 (effdfae)- Порт отдаётся системе всегда: закрытие слушающего сокета вписано в flang io, и в finally, а не после (
99de1d6) - Точка раскрутки перепечатана после правки близнеца: неподвижная точка сошлась (
6171774) - Замок несёт сами зависимости: программа собирается из него без исходников (
9643adf) - Ведомость точки раскрутки: байты сошлись точно, время сборки перемерено (77 -> ~90 с) (
720d35e) - Свод подстроки измерен и записан: 6 мест из 82, и препятствие названо числом (
d0cc771) - Точка раскрутки перепечатана в том же коммите, что и правка близнеца (
0f9bc2e) - Числа прозы сведены с деревом сторожем, а не памятью: восемнадцать расхождений закрыты, счётчик чист (
76b8736) - Числа прозы догнали дерево: три из них сдвинула эта правка, восемнадцать пришли с слиянием (
312b6da) - Числа в прозе догнали дерево: сторож был красный в 7 местах, стал чистым (
512551d) - Красные сверены ИМЕНАМИ: заявленная чистая база занижена, и ни один красный не мой (
f18656f) - Цена нового варианта отклика предъявлена компилятором, а не молчанием: разбор, перечислявший «Отклик» целиком, отказался собираться (
1966aef) - Близнец отношения двух имён закрыт: третье поле границы и четыре факта подстроки (
fac342b) - Числа словаря догнали дерево: восемь поручений, девятнадцать вариантов, и предсказание в plan.flang сверено с тем, что вышло (
6f867e2) - Приложение живёт и в настоящем браузере: 6 сверок из 6, 111 тактов часами (
b417faa) - Служба работает ПО СЕТИ: шестнадцать связей через настоящий сокет, коды сошлись с прогоном через значение все шестнадцать (
23110e6) - Область на накопитель свёртки: 8 МиБ вместо 710 на четырёх тысячах, ценой 1,37 раза по времени (
6f3faed) - Сеть, которой ждут: три поручения, один отклик, и служба сокращателя переехала на сокет без единой правки в самой службе (
940fdda) - Приложение в браузере: 16 тотальных функций на flang, 31 пример, 0 упавших (
7595f62) - Отношение ДВУХ ИМЁН вписано: у
подстрокине хватало ровно одного факта из четырёх (d80cc71) - Словарь ввода-вывода узнал экран: было 5 поручений и 7 откликов, стало 7 и 10 (
f7bead5) - Перемерено на стволе: пять команд на месте,
--proofпечатает, память врала в 410 раз (b8011b3) - Близнец кладёт и вторую отметку: непустота доехала до дерева, 144 программы из 148 размечены как эталон (
39266f7) - Ведомость точки раскрутки перемерена: таблица врала вдвое, а команду
runне знала (5627441) - Смешанные письменности сняты нацело: 228 → 0, невидимая беда убрана первой (
5bdb9ba) - Точка раскрутки перепечатана под новый близнец типизатора: 8 017 599 байт, семь файлов (
8b9351f) - Корпус спрошен: 18 мест из 213, и настоящая причина отказа названа — она не сторож, а ТИП (
34a6d5d) - Типизатор близнеца отдаёт доказанное число на узел: отметка была, класть её было некому (
4822a42) - Сторож имён: правило про имя проверяется прогоном, корпус сверяется поимённо (
663c570) - Сторож чисел успокоен: «122 строки» рядом с именем файла читалось как число строк файла (
aff49d2) - Ведомость корпуса сведена с деревом: сорок восемь доказанных, четыре новые строки службы, 57 из 57 (
c774c02) - Цена четвёртого хода перемерена на трёх оставшихся: препятствие не подготовка, а проводка (
fa5e4a4) - JSON вынут из ветки: он требует слова «приписать», которого в этом дереве нет, и ломал 230 проверок библиотеки (
8160bb8) - Каталог службы описан числами: 1 258 строк, 7 утверждений, 5 закрыто ядром, 4 недостачи с ценой (
5439c23) - Служба работает СЕГОДНЯ: запрос из файла, ответ в файл, два поручения, 243 из 243 (
639ee1c) - Незавершаемость в планировщике: запас кончился у одного, служба жива — 243 из 243, сетка 200 семян (
7cb98c6) - Ещё пять мест номера доказаны корпусом: 7 из 214 стало 14, и оба узора правки названы (
83c781a) - Верхняя граница номера ВПИСАНА В КОРПУС: два места доказаны, и цена правки названа (
f5321a6) - Служба целиком: байты пришли — байты ушли, шестнадцать запросов подряд, четыре из них злонамеренных (
532054c) - Исход службы объявлен типом, и три утверждения о нём закрыты ядром: 4 из 4, ноль на веру (
bf1731f) - Хранилище ссылок: 12 тотальных функций, 17 примеров, ни одного места в памяти (
a09494c) - Мирская половина HTTP, JSON и время подтянуты в дерево: 2 596 строк библиотеки под настоящую службу (
ded8e96) - Три сторожа сведены после пары бинарника (
1458c6b) - Долг столбца снят из «Долгов», а вход с эмодзи заведён и в stdlib: числа свода пересчитаны прогоном, а не перенесены (
7d6427b) - Точка раскрутки перепечатана под столбец в единицах UTF-16: две единицы трансляции, +4853 байта (
2b4f503) - Столбец близнеца лексера переведён в единицы UTF-16: десять расхождений с эталоном закрыты, вход с эмодзи стоит в корпусе сверки (
e62f07b) - Четыре следа слияния в проверках закрыты: правил пять, и своды пересчитаны (
b4fbddf) - Близнец расходился с эталоном СТОЛБЦОМ отказа — и поймал это краевой случай (
a909d8c) - Длинная строка отказа разложена, числа прозы догнали: 4507 → 4511 (
0bf3f0e) - Два поколения без Node сошлись: flang₂ печатает ровно то же, что flang₁ (
8d5e555) - Дыра в
flang runназвана: ключ--index-baseтуда не доезжает вовсе (70c93fe) - Числа прозы про парсер догнали дерево: 4434 → 4507 и 6947 → 6981 (
8953394) - Сверка AST всего корпуса нашла ЕДИНСТВЕННОЕ расхождение — и оно в тексте отказа (
d5a8d38) - Точка раскрутки перепечатана: близнец парсера тронут — артефакт догнал (
59d882d) - Переходный уклад закрыт: SPEC называет слово, а ключ ставит базу только молчащим (
e168890) - Близнец слова на flang, подделки и починка двух изъятий после слияния (
8ea6190) - Слово в языке:
элемент начиная с 0объявляет базу номера в самом файле (0b1e901) - Заслон печати у близнеца: сверка заговорила и назвала место, которого я не ждал (
de27451) - Оба ключа доведены до близнеца связывания: неподвижная точка 25 из 25 (
1c9a1f8) - Близнец границы номера закрыт: читатель и база одним шагом, и сверка получила голос (
6956ef5) - SPEC: дверь договора записана и за близнецами, а не только за эталоном (
59defb1) - Отмена знания при перевязке имени в близнеце: 14 мест связывания, три места сужения нетронуты (
3ea18a0) - Точка раскрутки перепечатана: bootstrap/ снова та печать, что дают исходники (
094d0cc) - Дверь договора доехала до близнецов Java, C#, Elixir и JavaScript: восемь из восьми (
a581c58) - Близнец границы номера начат: поле и сбор написаны, и третий замер объёма снова оказался меньше (
1440e67) - Помеха семи целям названа числом: столкновения имён по каждой, 2…309 (
a226e62) - Дверь договора доехала до близнецов Rust и Python: четыре цели из восьми (
c578416) - «Одно слово на функцию» опровергнуто замером, зато найдена и закрыта настоящая дыра (
86c8492) - Указатель библиотеки перепечатан, а охват ядра дорос до сорока восьми: седьмой доказанной в библиотеке стала «Сколько заголовков» (
e04e366) - Дверь договора доехала до близнецов C и Go: две цели из восьми (
836d2ca) - Объём долга близнеца поправлен по дереву: имена границы кладутся в «Вид отрезка», а не в «Вид числа» (
743aa1a) - База номера стала свойством ПРОГРАММЫ: нестрогая граница заработала, 2 места из 214 стали 7 (
eb5e4bb) - Кеш убран из рабочего пути за явное согласие: потолок JavaScript не пробит (
4f93a6d) - Форма из справки заработала:
--function «Имя»принимают обе реализации, а не одна (e016093) - Числа строк в прозе подтянуты за новыми файлами: сторож счёта снова чист (
34cde47) - Указатель перепечатан, числа прозы сведены со сторожем (
ad47552) - Заголовок оболочки не расширен: каталог печати заводит человек, а не
emit(e33eaa8) - Транслит из имени каталога убран: docs/rukovodstvo → docs/guide, 35 ссылок в 10 файлах переписаны (
b11e7e1) - Предусловие в библиотеке снято печатью: восемь целей дороже одного утверждения (
8f5f6b2) - Замер выигрыша от кеша записан числом рядом с кешом, и число неприятное (
3d7b791) - Зазор ведомости назван числом в дереве: 33 из 37 знак в знак, 4 — в сторону «сказал меньше» (
30ae079) - Числа README и обзора догнали дерево: библиотека выросла до четырнадцати модулей, корпус восьми целей — до 96 программ (
f5d4b2a) - Плагин asdf стало откуда ставить: репозиторий заведён, а расхождение копий стережётся (
fb53566) - Числа прозы догнали дерево после правки: 7048 строк
src/types.mjsвместо 7040 (0e1d768) - Именной верх переносится через числовое сужение: вложенный
еслиперестал отнимать доказанное (ee87a3d) - Именная дорога корпусом НЕ проверена, и близнец назван долгом с объёмом (
86ff939) - Класс номера измерен поимённо: свод 279 у 195 не сдвинулся, и причин шесть (
2284db8) - datetime.flang: 24 функции, 77 примеров, ноль сторожей в рантайме (
8f0439d) - Замеры библиотеки пересчитаны прогоном: 259 функций в четырнадцати модулях, индукции доступны 65 — впервые с работы над списками вырос и счёт по суммам (
dfef247) - Бинарник получил
check --proofиtest; ядро в дороге проверки отвергает подделку тем же кодом (068f4ff) - Печать в C въехала в двоичный: шесть файлов из семи байт в байт без Node (
0d4d9d3) - Корпус прогнан по модулю: 54 входа сошлись, обрезки целого запроса по одному байту все до единого «неполон» (
1320dcd) - Утверждения json: высказано 8, ядром закрыто 5 (
df7e9f1) - Кеш вердиктов ядра лёг под адрес содержимого, и на слово ему не верят (
ab31126) - Верх, выраженный ИМЕНЕМ: границы номера доказываются, и заслон печати назван (
ee0bed6) - Печать json и корпус зелёный: 91 из 91, и корпус нашёл ошибку (
8a04b6d) - Печать ответа и запроса: Content-Length считается по телу, а не берётся из заголовков — расхождение длины с телом это шов, по которому вставляют чужой запрос (
b3ff394) - Разбор запроса целиком: три исхода вместо двух, и «неполон» отдельным вариантом — обрезанный запрос ждут, а не рвут связь (
f4d16d6) - json.flang: разметка и разбор стопкой — 31 функция, 60 примеров, всё чисто (
7da938c) - Ядро, примеры и ведомость доехали до точек входа компилятора; граница входа у прогона (
9259a2b) - Процентное кодирование и адрес: кодирование полное, раскодирование доводит до знака только печатные ASCII — обратного моста к «код символа» в языке нет, и предел назван, а не обойдён (
39b699c) - Адрес определения считается от нормализованного разбора: четыре поверхности дают один хеш (
a29eddb) - Чистая половина http начата: куски строк, сравнение имён без регистра и целое из десятичной без знака — отрицательная длина тела не число, а нападение (
16cfc1f) - Список asdf состоит из версий, которые ставятся: релиз без архива в него не попадает (
1c41ffe) - json.flang: значение, знаки и число из текста — 15 функций, чисто (
2a0b401) - Точка раскрутки перепечатана: перебазис оставил её на 3431 функции против 3439 в дереве (
e655a49) - Команда
npm run build, которой нет, убрана из обоих README и ещё из шести файлов (e5882c1) - Восемь транслитных имён в fspec переименованы английскими словами (
9930d16) - Перебазис на настоящий ствол: разошлось 3 из 275, ствол пришёл красным на 8 (
87cafd7) - Близнец сетки починен после переименований двоичного; ведомость и долги сведены (
b6b3e78) - Дерево сведено после двух слияний: раскрутка, ведомость, долги и потолок (
bfa96b4) - Откат слияния work/totality-hole отменён: препятствие, из-за которого он был, снято (
5dcdace) - Ядро доказательства въехало: три предела перемерены, рост оказался квадратичным (
2e7fe72) - Цена договора в печати названа числом: «ноль байт» было верно и было дефектом (
aebc7ec) - Близнец горячей замены откачен; ведомость переснята, долг и потолок выправлены (
5a7a460) - Договор доехал до двери C# и Elixir: восемь целей из восьми (
fba8e3b) - Договор доехал до двери Rust и Java: шесть целей из восьми (
6c088c7) - Договор доехал до двери Go и C: четыре цели из восьми отказывают тем же кодом (
d15b127) - Договор доехал до двери Python: вызов по имени проверяет
требует(00e72c1) - Договор доехал до границы напечатанной программы: JavaScript отказывает тем же кодом (
3c8620e) - Ядро отцеплено от замыкания: три бюджета не пускают, названы числом; 36 имён остаются (
5269b86) - Слияние work/totality-hole откачено:
требуетне доезжает до печати (574094e) - Ядро доказательства втащено в двоичный: 36 переименований, стена оказалась в памяти (
30b5c69) - «Состояние» точки входа раскрутки названо в той же форме, что у прочих долгов (
f013022) - Третий шаг: корпус честные предусловия НЕ выдержал, и препятствий два (
66c39a4) - Сторож чисел чист: одиннадцать чисел прозы пересчитаны деревом, а не подогнаны (
6272b76) - Проза сведена с деревом прогоном: сторож чисел чист, было 75 расхождений (
c1267dd) flang runпоявился в двоичном: программа считается без Node и без «cc» (15bf721)- Два честных
требуетв stdlib: свод сдвинулся 279 → 277, и цена измерена (e015095) - Числа «Долгов» и журнал догнали слияние: два сторожа снова зелёные (
628bdb2) - Два числа прозы, разошедшихся от правки, догнали дерево (
98db0a0) - Восьмой близнец доучен форме «приписать»: 101 программа из 101 вместо 94 (
781e88c) - Довод про чтение
требуеттипизатором записан в SPEC; числа прозы догнали дерево (1d98aba) - Числа собственных страниц сайта сведены с измерителем: «семь языков» стало восемью, и заведён сторож на 17 чисел (
ef4568b) требуетчитается фактом в типизаторе: сторож уголоваснят по-настоящему (8074d09)- Числа страницы поверхностей взяты под сторожа: 16 фраз собираются из прогона и обязаны найтись дословно (
cbdc412) - Формула Homebrew перестала врать: ссылка отдаёт 200, а sha256 сверен со скачанным (
2a293ce) - Словарь языка заведён печатью из таблицы поверхностей: 148 понятий, сторож краснеет двумя способами (
c25d482) flang/src/proof.mjsстёрт: ведомость доказательства осталась только на flang, 1 300 строк вон (1b2ac67)- 84 заметки базы знаний переименованы: транслит уступил английским словам (
3a6f55b) - Имена файлов и адреса страниц переведены с транслита на английские слова (
5961343) - Вычислитель втащен в двоичный: помеха названа числом — три столкновения имён (
7f95df5) - Довод про четвёртое правило записан в SPEC, числа прозы догнали измеритель (
ac0e344) - Шапка близнеца замены выправлена: долг назван там, где он есть, и красный список сверен именами (
8fedd1d) - Числа корпуса и утверждения догнали форму: свёртки в корпусе больше нет (
9fb1491) - Сверка близнеца замены влита: 57 пар сетки сошлись побайтово, три изъятия краснеют (
61e0c72) - Словарь между спеками встроен в
flang check: три порчи краснеют своими кодами (2d40dc4) - Каталог недостач и рантайм Elixir догнали форму: три места, где ветка отстала (
a03ff94) - Правило «цель есть допущение» (Γ, A ⊢ A) — на обеих сторонах разом (
0d9f3c2) - Ведомость самоприменения выправлена: строка
io.mjsбольше не «не начат» (39a127b) - Проверка планов встала на flang: 18 случаев корпуса, 4 порчи из 4 краснеют (
2c0583a) - Близнец горячей замены собран: три условия из четырёх, связывание и типы чисты (
1ea0748) - Сторож четырёх поверхностей покраснел на цитате — цитата снята (
3c0b6ae) - Три рантайма ветки чинены под нынешний main:
приписатьсобиралось не тем API (c212afc) - Числа прозы догнали дерево: 21 расхождение, внесённое вливанием, закрыто (
891c66d) - Тень программы перенесена на flang: 204 тени сверены побайтово, 161 Мб (
240fe33) - Семь близнецов доучены форме: зазор между эталоном и близнецом закрыт (
ed99f5b) - Требование до кода:
требуету левого края, ноль новых слов (9e280d1) - Версия набора правил 9, и число впервые сдвинулось вместе со счётом правил (
522444d) - Сторожа числа правил пересчитаны: правил ЧЕТЫРЕ, и это стоит списком (
24e7ba8) - Близнец догнал: правило 4 написано и на flang, и подделки под него отвергнуты (
0b78b6c) - Четвёртое решающее правило: порядок по построению, граница — ТЕРМ (
f377d57) - Подделка на четвёртый ход написана: замкнутая посылка, дающая «нет» (
53f9bca) - Проза о восьмом близнеце пересчитана прогоном: 3268 строк было приговором, 3667 стало делом (
0b6de04) - Сверка восьмого близнеца зелена целиком: 101 из 101, 44 из 44 меры, 10 из 10 процессов (
c02bc00) - Числа улики пересчитаны счётом строк, а не длиной разбиения: 1768 и 20 038 (
01478fa) - Словарь действий конкурентности считает flang: 162 программы сверены побайтово, расхождений 0 (
6a05890) - Четвёртый ход ядра перенесён в близнеца: вычисление замкнутой цели (
4912ba4) - Близнец печати в JS догнал эталон: 101 программа из 101 совпадает побайтово (
ce77628) - Пятнадцать помощников рантайма доехали в близнеца: стек под объявленный предел и вид «добавить» (
3ecc7fd) - Множество отказов считает flang: 1358 функций корпуса сверены побайтово, расхождений 0 (
7bb77ac) - Черновик близнеца печати в JS снят с неслитой ветки: замер выбрал догон, а не переписывание (
c6db14b) - Проза догнала дерево: контракт слоя назвал шаг 8, четырнадцать чисел пересчитаны измерителем (
6832cf9) - Служба на flang и 26 проверок к ней: подделка краснеет на 1724 чередованиях из 6000 (
0df70ad) - Хозяин у службы: одна цель печати из восьми исполняет поручение, семь отказывают названным кодом (
4b87bf0) - Седьмое действие процесса: поручение выдаётся, отклик приходит сообщением, а видов отказа как было десять (
657f058) - Числа сторожей сведены до конца: частичных форм 846, непустотой снято 363, «вес» доказывает 45 (
227dc02) - Числа корпуса сведены с деревом после прибавки языкового сервера: функций 6 855, утверждений 149 (
73cbea5) - Языковой сервер получил близнеца на flang: протокол, документы и диагностика сверены с эталоном знак в знак на 40 сообщениях (
70f1ebb) - Таблица ключевых слов близнеца лексера сведена с образцом порядком: 138 фраз из 625 стояли не на своём месте (
564c9be) - Библиотека и примеры больше не платят длиной списка за приписывание в начало (
ff0c2d7) - Список наращивается с двух концов: приписывание в начало стало встроенной формой и напечатано во все восемь целей (
c486f90)
Ещё 360 правок языка снаружи не меняют.
0.5.0 — 18 августа 2026
- Словарь между спеками стал проверяемым: имена отображения сверяются с обеими спеками (
ee69bb7) - Причины двенадцати сеток списка и четырёх сеток ВПО измерены попыткой (
58883e1) - Семь мёртвых функций вынуты из близнеца: имя без зова — обещание без исполнения (
ab00383) - Числа сверки вписаны в шапку близнеца: 177 вызовов, 160 решает сам (
ff98b88) - Названо, чего не хватило «неделимому остатку»: делитель — имя, а не литерал (
f4b28ab) - Причина расхождения синонимов названа счётом: спрашивает одна сверка из семи (
6a558e4) - Довод «builtins.mjs не переписывается» проверен прогоном: он устарел, файл уже переписан девятью частями (
26386d0) - Три утверждения «Кратчайшего пути» переехали из сетки в доказанное ядром (
461382c) - Сверка на 177 вызовах зелена: расхождений 0, близнец решает 160 из 177 (
6451f2a) - Доказано «удвоенное неотрицательно»: теорема в пять строк, ноль строк ядра (
dfc4e77) - «the Fibonacci step is non-negative» — та же теорема на английской поверхности (
78e3101) - «шаг Фибоначчи неотрицателен» переехало из сетки в доказанное ядром (
0911f0e) - Теги программы на flang: список случаев диспетчера перестал держаться на JavaScript (
f39fef1) - Близнец командной строки разбирает вызов: тридцать ключей, четыре отказа до работы (
6953da3) - Противоречие двух спек на flang не ловится ничем: прогон дал код выхода 0, и заведён сторож, который краснеет (
dc98f68) - Граница чистого и эффектов в командной строке измерена: 258 строк из 700 (
2589478) - Вычислитель-близнец расклеен трёхсторонним слиянием: обе стороны целы (
bcf6044) - Три сторожа и вычислитель-близнец расклеены: моё слияние сложило все стороны разом (
e1e73c1) - Числа прозы сведены с деревом после шести слияний: 63 из 63, правлена проза (
4afc76c) - Точка раскрутки перепечатана после замера стека в wasm (
9e253ac) - Число строк склоняется: 33 921 это «строка», а не «строк» (
909aa97) - Точка раскрутки перепечатана после всех слияний (
85d1da7) - Точка раскрутки перепечатана после слияния монады: печать, а не текстовое слияние (
6b78689) - Заголовок Д1 больше не спорит со своим же абзацем: «три захода» это заказ, «девять» это итог (
d38dd01) - В4 переставлен на своё место: раздел В3 больше не разорван посередине (
39d067a) - Цена лишней ветви в горячем цикле вычислителя измерена: знак отрицательный на шести прогонах из шести (
24fc942) - Порог окупаемости пула ИЗМЕРЕН: считали K больше шести, вышло K = 1, а настоящий порог — один готовый процесс на поток (
c9013c4) - Очередь готовых стала деревом рангов: 207 с → 13,8 с при миллионе одновременно готовых, журнал побайтово тот же (
8705369) - Потолок задержки есть: снятый пробег доигрывается с места, и самый дорогой падает с 4418 витков до 512 (
1303e55) - Объявленный предел глубины в wasm стал пределом: было молчание сторожа и смерть вкладки на глубине 60, стало 7 474 кадра и текст эталона (
7bd8800) - Журнал вливаний вышел на сайт: 138 вливаний, у 105 названо сдвинувшееся число, страниц стало 103 (
a9e95f7) - Ограниченность считает flang: 18 893 функции корпуса сверены побайтово, расхождений 0 (
8423ce6) - Точка раскрутки перепечатана после слияния седьмого слоя: 8 220 897 байт, сверка 24 из 24 (
eb6b71b) - Числа прозы сведены с последним замером: 258 из 263, изъятий 29 (
2211e1f) - Сверка связывания названа прогоном: 260 программ, 21 129 объявлений, расхождений 0 (
d28ea5c) - Изъятие слоя поверхностей записано числом: снят вызов — красно с первого случая (
5beac91) - Числа корпуса пересчитаны, а не подогнаны: 6484 функции, 364 места непустоты (
9351e8d) - Печать самоприменения перешагнула сторож шагов: доказано, что не перебором, и лимит поднят (
3667f02) - Принцип по свёртке перенесён: три формы тела закрыты, разошлось 5 из 262 (
9656e5b) - Цена разбора корпуса названа верно: 26 минут против 2, а не против 40 секунд (
1c52ed0) - Числа прозы пересчитаны после подрезки слоя: 1308 строк, 135 функций, 28 обычных (
8049501) - Точка раскрутки перепечатана, а сверка достижимости получила семь дурных наборов вместо пустого корпуса (
0b65388) - Числа корпуса сведены с деревом после фазы 4: 35 функций близнеца, сторожей ноль (
56b5b19) - Проза сведена с деревом: седьмой слой назван в четырёх документах, четыре числа пересчитаны (
9215298) - Равенство морфизмов и естественность квадрата считает flang: 231 программа сверена побайтово, расхождений 0 (
bbbe72e) - Четыре поверхности диагностики закрыты: цитата говорит на языке файла, 0 расхождений из 186 (
1c2d7bf) - Сличение по вызову перенесено в близнеца: разошлось 6 из 260 (
823c40b) - Связывание вынуто седьмым слоем: сверка выросла с 13 синтетических наборов до 232 программ, расхождений было 23 (
678eb34) - Пробел разбора закрыт последним словом: 148 слов из 148,
в монадеразворачивается (f900156) - Разбор цели по условию перенесён в близнеца: разошлось 7 из 257 (
4dfe57c) - Квадрат связи модулей считает flang: 231 программа корпуса сверена побайтово, расхождений 0 (
f8ee781) - Цена четвёртого хода переписана прогоном: три программы зазора из четырёх считают замкнутую цель за 875–1395 мс, четвёртая упирается в другой файл (
3b876dd) - Разворачивание монад вынуто отдельным слоем: парсеру оно стоит 90 функций, а не 1154 (
dfbd5fe) - Подготовка программы у близнеца-вычислителя удешевлена в 15,5 раза: 1074 функции считаются за 792 мс вместо исчерпанного предела в 40 000 000 витков (
6282a6a) - Захват части аргументов работает обеими сторонами: 47 случаев из 56, которых приставка не брала (
fb33469) - Числа дерева сведены с измерителем после трёх переносов: правлена проза и ожидания, сторожа не тронуты (
864a34d) - Долг разборщика, которого нет с 15 августа, снят из четырёх шапок и двух спецификаций: запрещённых слов осталось одно из девяти (
94d9c1e) - Зазор самоприменения сведён прогоном: 236 из 250 и 14 поимённо вместо 237 из 249 и 12, разбирается 147 слов из 148 (
180f668) - Порождение процессов есть, а стен осталась одна из трёх: две заметки базы поправлены прогоном, копия в /srv перестала ломать ссылку (
7ca513a) - Каррирование замерено до работы: фаза 4 упирается в одно правило, написанное дважды (
d67acaa) - Принцип по отрезку «нат» перенесён: носителей стало два, разошлось 7 из 255 (
f3cdc08) - Два долга ведомости в SPEC самоприменения закрыты и заменены обратным утверждением: близнец знает все шесть слов и все девять видов законов (
5893037) - Ведомость доказательства вышла из рабочего пути на JavaScript:
flang check --proofсчитает слоем на flang, эталона в пути нет (ba78881) - Теорема держится у библиотечной функции: связанный AST 102 из 102 вместо 101 (
86bf881) - Носители обещания сверены побайтово на 234 программах вместо восьми, расхождений 0 (
cc6f70c) - Числа прозы сведены с выросшим близнецом ведомости: правлена проза, а не сторож (
3104d20) - Гипотеза «дано» типизируется обеими сторонами: три улики из трёх отвергнуты (
5b68cbf) - Тихий конфликт двух веток найден прогоном: -flto увидел незаполненный итог прогона (
ccd7248) - Связывание на flang научилось нести теорему входного файла — как эталон (
1a5bfe4) - Цена четвёртого хода измерена, а не оценена: 12 счётов из 43 зовов, подготовка не кончается на 1074 функциях (
d8f4e58) - Точные десятичные и правило остатка перенесены: разошлось 10 из 252 (
ea9486c) - Точка раскрутки и проза догнали многоядерный планировщик: правлен пересказ, а не сторож (
74ad18a) - Ведомость на flang печатает утверждения, категорию, связь и пять свойств: 226 программ дерева из 226 сходятся с эталоном побайтово, было 0 (
78734f7) - Начальная алгебра встроенного списка перенесена в близнеца: разошлось 11 из 251 (
deb945d) - Готовый процесс кладут на СВОЙ склад, а не на склад по остатку от номера (
38895bc) - Числа прозы сведены с деревом после слияния: правлена проза, а не сторож (
f56409b) - Изъятие показало дыру в наборе: замок процесса не держал ничего — теперь Р6 (
cb7054b) - Стенды замера умеют оба режима: поле «workers» в measure.sh и новый by-cores.sh (
d9d6f2f) - Зазор с близнецом назван поимённо, а не расширен: два расхождения из трёх стоят в списке, третье закрыто переносом текста (
7e50f41) - Корпусная сверка шести целей пошла по ветви отметок и нашла там сломанный список Elixir (
aadfd1f) - Заметка в каталоге linguist названа точно: заявка на flang уже написана, а не «ещё не приехала» (
ab0c5da) - Сверка тега вернулась в напечатанный код: прогон корпуса нашёл, где доказательство опиралось на ложную посылку (
d31a635) - Последние четыре места, называвшие уехавшее, приведены к дереву (
fa14b4b) - Ломоть пробегов отвязан от пачки: потолок был в общем замке, и это измерено (
ac13526) - Три заметки в базу знаний и поправка к четвёртой: как разнимать проекты, не потеряв проверку (
5debace) - flang-lsp перестал молчать на непонятом доводе: команда, отвечающая кодом 0 и ноль байт, неотличима от сломанной (
ee9ea8a) - Старый проект FTS вынесен из репозитория: 357 файлов, 180 755 строк — и всё, что его называло, приведено к дереву (
fdfb0aa) - Найдено зависание на тридцати двух потоках, и оно было не в скорости (
aea6649) - Зависимость сличения по вызову названа заранее, чтобы её нельзя было сломать молча (
c006085) - Отметка анализа перестала считаться частью написанного: ведомость вернула 60 утверждений из 138 (
35e0509) - Две поправки честности: сличение по вызову не берёт допущение индукции, а разбор по условию не берётся за связыватель (
5d564c6) - Чтение .fts стало внятным отказом, а не падением: свой код, указание, где взять убранное, и закрытая дыра рядом (
10aacac) - Побайтовая сверка с близнецом сохранена: пятый ход включается доводом, как четвёртый (
1ccc24c) - Проверка типа не печатается там, где тип доказан: арифметика быстрее в 4,9 раза, всё вместе — в 1,6 (
2854d2b) - Ядро научилось цепляться за три формы тела: условие, свёртку и вызов (
43e61f2) - Близнец обязательств стал истиной, а эталон — вторым мнением: отношение перевёрнуто там, где оно уже настоящее (
c7b2ae1) - ThreadSanitizer нашёл гонку на признаке остановки — признак ушёл под замок (
eace078) - Рабочий режим планировщика: потоки берут процессы, а не пробеги (
e771cff) - Обязательства в рабочем пути считает flang, а не JavaScript: мост переехал в дерево (
e5c4be2) - Шесть файлов, от которых зависят все восемь целей печати, переехали в flang: не копия, а перенос (
4114962) - Межмодульная оптимизация включена по умолчанию: напечатанный C стал быстрее в 1,14 раза (
c903983) - Языковая полоса GitHub: сырьё замеров исключено, а про .flang сказана правда (
a6761f4) - Сайт документации собирается из docs одной командой, без единой зависимости (
ab948f3) - Документация разложена по назначению: руководство в docs/rukovodstvo/, у docs/ появился указатель (
74a4832) - Ведомость пересчитана на собранном дереве, и проза догнала её числами: 6429 функций, 4893 тотальных (
17d6853) - Близнец ядра доказательства догнал эталон на 242 программах из 249, а остаток зазора назван поимённо (
7cc5804) - Сырьё замера отсечено от корпусов одной строкой: 41 красная проверка была не про язык (
d9ff37c) - Ведомость пересчитана ОДИН раз на собранном дереве: 6383 функции, 4868 тотальных, 138 утверждений (
676c662) - Спецификация назвала четвёртый ход, его три условия и долг: у вычисления близнеца на flang нет (
7e931a2) - Замкнутая цель стала вычисляться: тот же ход, каким закрывает случай «по примеру», позван из «свести» (
4011dae) - Три леммы об алфавите: регистры не пересекаются, обе половины начинают имя (
14cf309) - Две леммы о чужих знаках в имени: один символ и объявленный пробел (
4de7a81) - Ещё одна цена переезда, и снова измеренная: связывание на flang теряет теорему (
94a45e8) - Пять лемм об алфавите идентификатора C и о приставке помощников (
b3eaae4) - Долг переезда закрыт наполовину, и вторая половина оказалась платной (
ae711fc) - Дерево догнало правки: точка раскрутки пересобрана, восемь чисел прозы пересчитаны, сверка ведомости узнала пятый источник законов (
92aa3b1) - Числа корпуса догнали близнеца: 5775 функций, 4406 тотальных, 4200 без проверок (
ac79f62) - Монада перестала пропадать при связывании: латентная дыра того же класса закрыта, пока её никто не открыл (
8e956f4) - Проверка предела запроса переехала под ifdef: без процессов она никому не нужна (
bdc54c3) - Контракт теорката получил главу про связь модулей — вместе со списком того, чего этот слой не проверяет и не будет (
1581aa4) - Третий отказ порождения записан в контракт и в карту, счётчик строк пересчитан (
e38555f) - Вычитка планировщика нашла пять мест: одно портило доставку, четыре были заряжены (
6409d9d) - Вердикт нарушенного закона назван словом эталона: «violated», а не второе слово о том же (
a530d59) - Три модуля с тремя взглядами на один заказ легли в дерево: связь между ними стала проверяемой, и три обычные ошибки её ломают (
7ff6895) - Спецификация назвала починку близнеца и цену слепой сверки (
6e96787) - Близнец начальной алгебры догнал починку захвата, и сверка перестала быть слепой к ней (
7c6c5f7) - Две леммы, закрывшие две записанные недостачи: длина списка и глубина дерева (
bd711f1) - Разборщик на flang догнал эталон: перевод данных на объекте функтора разбирается обоими побайтово (
7aaf7f7) - Слияние с main прошло, и слияние показало три вещи (
9ed03d8) - Спецификация назвала шесть дыр за сутки, захват подстановки и новый охват сторожа (
a988c07) - Третья стенка измерена, а не оценена: порождение открыло дверь, которой не было (
713a82d) - Сортировка вставками досчитывает там, где раньше отказывала: 1500 элементов под пределом 8 ГиБ (
37b5639) - Сторож смотрит на ВСЕ утверждения корпуса, и первым делом нашёл два ложных в витрине (
12bfe59) - Двойники стендов собираются скриптом: «а что было бы» стало повторяемым (
d477ccd) - Близнец ядра догнал правило умножения: слитая ветка писалась под эталон, который с тех пор уехал (
8d7fc6b) - Подстановка перестала захватывать чужое имя: «доказано индукцией» о лжи закрыто (
9689a37) - Связь модулей перестала быть сличением имён: у объекта функтора появился перевод данных, и квадрат считается на сетке (
cbbd42e) - Округление названо своим именем, а минимум и максимум взяты как честный носитель — находка соседней ветки, проверенная своими законами (
e568ce0) - Незаконченное сохранено на обрыве лимита: работа прервана посреди шага, проверок не было (
b535718) - Незаконченное сохранено на обрыве лимита: работа прервана посреди шага, проверок не было (
05207a1) - Незаконченное сохранено на обрыве лимита: работа прервана посреди шага, проверок не было (
1241a67) - Четвёртый прогон примера: занятое имя роняет сервер, и это сверяется побайтово (
4f1bcab) - Две леммы об ограде таблицы ключевых слов: разрез попал на границу пары (
5905ea0) - Сторож длины дерева пересчитал строки: 24 379 → 24 673 (
27341fc) - Сторож проводом узнал шестое действие: «породить» на проводе такой же вариант (
1ee68f7) - Число строк компилятора в self/SPEC.md догнало дерево: 24379 стало 24745 (
ce5cdc3) - Спецификация назвала четвёртый связыватель у сторожа захвата и общее у четырёх дыр (
4f1da99) - Три леммы о ширине символа в UTF-8, и одна выдуманная ложь по дороге (
20f8bca) - Замер ПОСЛЕ теми же стендами: три таблицы, два двойника и один опровергнутый довод (
5f5626b) - Найдена своя дыра того же класса: сторож захвата имени отстал от языка на связыватель (
28e9ca1) - Монотонность: разрешение кешировать — и первое место, где сломанное свойство останавливает зависящее от него (
2f0f878) - Контракт и карта догнали порождение: Б1 и Б2 закрыты, «породить нет» вычеркнуто (
f451412) - Частичный порядок: три закона порознь, и антисимметрия — та, без которой расхождение реплик становится законным (
9f05f49) - Спецификация слоя назвала сторожа на класс и то, чего он не покрывает (
1e2d77c) - Дистрибутивность: одну строку заказа можно разбить на две, и это теперь разрешение, а не обещание (
f6bc341) - Точка раскрутки перепечатана: близнец лексера узнал девятое слово (
171880d) - Две леммы о регистре латиницы: поднятие и правда обращает опускание (
dd65d62) - Коммутативность: моноид впервые называет третий закон, и недостача из cat/SPEC.md закрыта (
5f5bbdb) - Две леммы о списке русских окончаний: длинные впереди, пустых нет (
c209cae) - Отказ и вывод типа перестали расходиться: деление конечного положительного на вес законно в обоих (
7cb887e) - Две леммы о синонимах встроенных форм: цель есть и разрешение в один шаг (
d111f81) - Идемпотентность: язык впервые умеет сказать «повторить безопасно», и это разрешение выдаётся, а не подразумевается (
01cc4d4) - Числа сверок в спецификациях догнали дерево: 195 и 201 программа, изъятий двадцать пять (
becea64) - Лемма о знаках полной ширины: двойники стоят парами (
626e3ef) - Четыре леммы об алфавите лексера: парность регистра и граница ID_Start (
aa2062b) - Цена типа названа числом: 21 функция корпуса из 139 становится доказуемо неотрицательной (
120f1fa) - Две леммы о транслитерации имён для C: на выходе только буквы идентификатора (
f147801) - Куча процесса покупается полукилобайтом, а не 64 КиБ: вторая стена замера (
cc2cebe) - Две леммы о таблицах встроенных форм для C: помощник без арности не спрячется (
d0f3fd2) - Три леммы об экранировании JSON: обратная косая и правда стоит первой (
5e605a8) - Счёт строк эталона в self/SPEC.md догнал дерево: 25044 вместо 24379 (
818416e) - Зазор близнеца до эталона на main измерен прогоном: решение расходится на четырёх программах, текст ещё на шести (
4fc24a3) - Отрезок [0,+∞] стал типом «вес»: три действия разрешены, четыре отказывают с предъявленной парой (
8f90221) - Пример: сервер заводит обработчика на каждый запрос и переживает его смерть (
7cfb69d) - Рантайм C: указатель имён вместо перебора, и таблица процессов, которая растёт (
60fafee) - Порождение в эталоне: имя даёт родитель, потому что вернуть его нечем (
bacbb23) - Английская поверхность «Фибоначчи шагом» догнала русскую, и сверка пар научилась именам утверждений (
a83440c) - Две леммы о списке длин ключевых фраз: порядок и дно жадной склейки (
b8f21e6) - Три леммы о таблицах типов FTS: цепочка из двух переводов не рвётся (
954d646) - Носитель моноида читается по имени уточнения: до этой строки не собирался ни один моноид над «нат» (
f47a535) - Охват ядра вырос на две функции, и обе получили утверждения там же, где стоят: 33 высказано, 31 доказано (
9aaf00c) - Три леммы о знаках лексера FTS: одиночный знак и правда один символ (
15e82fb) - Три леммы о метках связывания: знак вопроса и несовпадение (
753a6b4) - Три леммы об ограде перечня точных имён: без неё крайние имена не находятся (
f615d8a) - Числа корпуса и проза догнали предусловие (
03908f1) - Точка раскрутки перепечатана: 447 обёрток компилятора получили область на вызов (
12f81cd) - Арена в цели C научилась откатываться: сортировка слиянием 4000 чисел берёт 3,5 МиБ вместо 1655 (
e342156) - Три леммы о точной сетке double: потолок пришпилен сверху, дно ему симметрично (
24bc46a) - Две леммы о носителе обещания: код без пробела, слово и код пустеют вместе (
78fa12e) - Обстановка шага перестала пересобираться на каждом звене: та же запись едет дальше как есть (
5f93120) - Лемма о трёхзначной логике парсера: найденная скобка — решённый исход (
103cf5a) - Две леммы о печати JSON: оператор сравнения всегда в кавычках (
be5be26) - Замер досягаемости: сколько функций корпуса стало высказываемо (
6ca55a6) - Две леммы стали высказываемыми, две теоремы — доказанными (
25b1ec2) - Спецификации назвали связку перенесённой: вместо «ещё 1281 строка JavaScript» стоит таблица двух близнецов с числами (
da22f39) - Вторая половина связки на flang: ядро само сворачивает терм, и на 199 программах вердикт совпал с эталоном знак в знак (
0ea3df8) - Предусловие доехало до ядра: вызывающий снимает, тело допускает, граница проверяет (
baddb7a) - Скрипты замера стали переносимыми, и границу печати пришлось назвать честнее (
52533d5) - Свод корпуса пересчитан один раз в конце сборки: 5761 функция, 4403 тотальных, 663 места частичных форм (
134c7e8) - Проверка типов вписана в цену заведения процесса, и стенд доехал целиком (
aeb3917) - Слово «требует» заведено: лексер, разборщик, типизатор (
0f17050) - Замер планировщика: десятки тысяч работающих процессов, не миллионы — и три причины, все три в реализации (
db62198) - Первая половина связки уехала на flang: обязательства строит близнец, и на 193 программах он не разошёлся с эталоном ни на знак (
a3b7b07) - Пустой квадрат больше не считается проверенным: отчёт называет посчитанное, а не осмотренное (
c1521b6) - Цена перевода в «Долгах» пересчитана после дописанного утверждения: 1926 строк, ×1.72 (
c762c1c) - Числа прозы догнали дерево: двадцать расхождений сторожа чисел закрыты правкой прозы, а не сторожа (
ca459a1) - Точка раскрутки догнала близнеца, а сверка ведомости — пятый источник законов (
3277c4b) - Охват ядра догнал дерево: две новые функции не просто вписаны в список, а получили утверждения (
007e170) - Захват имени в «отобразить» закрыт: подстановка узнала четвёртый связыватель (
7935192) - Естественное преобразование: квадрат коммутирует, и это первый закон, который краснеет на честной программе (
d9d54b7) - Дыра, позволявшая ядру доказать ложь, закрыта одним словом: поле записи перестало отмывать значение (
2cbcba8) - Стенд дорос до пяти видов: цепь и «пинг с конца» ловят то, что остальные прячут (
6e7b404) - Принцип целиком сошёлся с эталоном: близнец назвал лишние случаи и прочтение (
f1cd98f) - Близнец научился считать свободные имена заключения: посылка везёт free и facts (
afaeeeb) - Запрет на «к числу или беда» в stdlib сняли рано: парсер форму знает, а типы и печать в C на flang — нет, и это показала побайтовая сверка (
c8dd762) - Ядро дотянулось до новой функции оболочки — утверждение написано, а охват пересчитан (
6ed8c0a) - Цена пересчитана парным прогоном на законченном вычислителе: +27 % по часам, +56 % по процессору (
22fd258) - Три красных слияния индукции закрыты: близнец узнал носителя и метку, а сверки — новый текст отказа (
83ec42b) - Долг переноса теорем назван точнее: файлов пять, а у пятого запрет ДРУГОЙ (
c5e4006) - Спецификация слоя догнала измерение: девять посылок вместо двух, шесть функций из шести (
08f3b8b) - Спецификация ядра догнала оба правила, и заказ на свёртку вычеркнут наполовину (
21f3b49) - Посылка шага читает свой «если», и «Факториал» корпуса доказан индукцией (
96f7ba9) - Долги самоприменения знают про оболочку, а цена языкового сервера замерена, а не угадана (
07fad83) - Разбор строки в число дошёл до библиотеки: было «ровно одна цифра», стало любая строка — и минус ноль поймали границей, а не глазом (
2b45709) - У умножения появился второй случай: ограничен один сомножитель, второму хватает дна (
562664a) - Оболочка на flang отвечает эталону знак в знак: 91 ввод сверен побайтово, изъятие красит все шесть порч (
0ee758b) - На копейках моноид ЕСТЬ, на «число» его НЕТ — и язык различает это отказом сборки (
610cf67) - Ассоциативность композиции проверена на сетке, и сила проверки названа без прикрас (
c6433ca) - Стенд для замера планировщика: генератор программ с N процессами, печать в C, снятие памяти и времени (
9de7638) - Работа возвращена на место: улика ДО снята на голом дереве, 30 красных, и все тридцать старые (
78c9bdc) - Границы
остаток отсняты прогоном: посылок у правила дна ДВЕ, а у потолка ТРИ — и ни одна не окупается (d831b9c) - Дробное дно больше не доказывает ложь: «если н меньше 2.5» ядро отвергает, а не принимает (
efc61c6) - Найдена своя же дыра: импорт инструмента ЗАПУСКАЛ обход корпуса — семь секунд и чужой вывод в каждом прогоне теста (
ed7cb57) - Граница печати названа, но не измерена: поиск пишет русскими словами, и в английском файле скелет разъедется с утверждением (
1781128) - Незаконченное сохранено на обрыве лимита: работа прервана посреди шага, проверок не было (
6c522e7) - Незаконченное сохранено на обрыве лимита: работа прервана посреди шага, проверок не было (
a643243) - Незаконченное сохранено на обрыве лимита: работа прервана посреди шага, проверок не было (
749ed4c) - Незаконченное сохранено на обрыве лимита: работа прервана посреди шага, проверок не было (
7dd28a9) - Незаконченное сохранено на обрыве лимита: работа прервана посреди шага, проверок не было (
1a3ee75) - План ядра считает и вторую сторону: усиление правила сразу превращается в найденные цепочки (
51967b4) - Оболочка flang заговорила на flang: слой связывается, типизируется и проходит анализ завершаемости (
72222e9) - Имя параметра догнало устройство: ядро спрашивают честной цепочкой, портится она позже (
94e8450) - Число сломанных программ в прозе сверено с деревом: 68, а не 67 (
7b6b26c) - Отказ называет предел, действовавший в этом прогоне, а не записанный в модуле (
c663b72) - Проза догнала язык: точное десятичное в SPEC, третий факт подписи в SPEC доказательства (
6e64c89) - Список строк стал значением библиотеки: 33 функции корпуса писали руками то, чего в двенадцати модулях не было ни одной (
a3d7c66) - Ядро узнало два новых факта: длина не меньше нуля и свёртка держит знак — охват 17 → 43 (
b822361) - Спецификация назвала оба числа и обе границы: нового 0 из 20, перевывода 11 из 11, пределы 256 и 8 (
51f6464) - Деньги считаются точно и доказуемо: программа корпуса, 24 примера, два доказанных утверждения (
225539a) - Близнец компилятора узнал форму «к числу или беда»: обе головы её не знали вовсе (
fdb590f) - Проза догнала дерево: восемь чисел строк, два «Состояния» и раздел про непустоту (
e9568db) - Остаток пути назван числом: между поверхностью и ядром на flang стоят ещё 1281 строка JavaScript (
8024bf0) - Инструмент поиска считает по корпусу два числа: нового 0, перевывода 11 из 11 (
9d3fd77) - Число функций, несущих состояние, названо замером: двадцать девять, а не пятнадцать по памяти (
56f30a9) - Категория объявляет своё равенство: эквивалентность и согласованность с композицией проверены на сетке (
65a6d0e) - Цена замкнутого круга померена парным прогоном: +22 % по часам, +31 % по процессору (
f6c48e9) - Охват ядра вырос на три функции, и все три получили утверждения там же, где стоят: 31 высказано, 29 доказано (
9ad4d48) - Близнец ядра на flang называет покрытие тем, чем оно стало: сказано ли о каждой посылке (
4ff886a) - Оракул поиска доказательства отделён от ядра: предлагает цепочку словами языка, принимает по-прежнему ядро (
4bd66c4) - Ядро читает из подписи третий факт — целость, и на нём стоит правило остатка (
580e12f) - Спецификация слоя названа двумя принципами: долг базы вычеркнут, отрезок описан, ловушка 2⁵³ стоит таблицей (
2bb6fa8) - Точный десятичный тип есть: сотые и тысячные — уточнение числа, а не новый вид значения (
233f46c) - Число сверенного названо точно: 15 828 утверждений вместо 15 812 — круг на flang добавил свои шестнадцать (
83c3832) - Спецификация самоприменения записала замкнутый круг числами: 4014 ответов из 4480 считает сам flang (
aba91a2) - Таблица переписываемых слоёв назвала обе половины ядра доказательства, и сторож чисел их теперь стережёт (
f4f1a48) - Четыре слоя перестали утверждать, что вычислителя на flang нет: он есть, и таблица остаётся по другой причине (
2434a20) - Сверка нашла дыру, которой не было в задании: близнец начальной алгебры не отдавал ядру объявленных типов — четыре суммы из шести расходились (
485de0c) - Сторож объявленной меры стоит и в вычислителе на flang: 44 стережённые программы корпуса (
484441d) - Спецификация слоя доказательства догнала свод: 32 утверждения, и названо, чем упёрлась индукция (
69a8bc2) - Свод и проза догнали дерево: 4025 функций, близнец ядра вырос с 77 до 141, сторожей по-прежнему сто (
3899207) - Строка заказа «Глубина» вычеркнута тестом, а не человеком: перенос стал дословным на обеих функциях корпуса (
c0ab2f2) - Близнец проверки типов научился доказывать непустоту: 240 мест из 240 совпали с эталоном (
1a0a3e7) - Отрицание в logic.flang доказано импликацией в ложь, а де Морган рядом — назван как то, чего ядро не берёт (
4356f84) - Первое доказательство индукцией по числу лежит в дереве, и свод считает носители порознь (
fd8cf94) - Срез вычислителя на flang закрыт целиком: сверено 2318 примеров из 2318, вне среза 0 (
cec6b35) - Согласие специальной функции с общей в higher-order.flang стало доказанным, а не проверенным на примерах (
96402ed) - Ядро на flang догнало эталон целиком: третье правило и развёртка определений донесены, зазор с 450 и 27 расхождений упал до нуля (
2fbd12a) - Спецификация ядра догнала правило умножения и назвала дыру в поле записи (
71862ef) - У библиотеки появились первые два утверждения о поведении: «Знак» и «Чётное» из numbers.flang (
910ee10) - Ядро сворачивает принцип по отрезку той же свёрткой, что и принцип по сумме, а ведомость называет носитель (
55fed90) - Посылку, которая сводится без единого допущения, ядро закрывает само — база больше не требует примера, которого у функции нет (
d686b60) - Вычислитель на flang научился функциям первого класса: сверено 2273 примера из 2317 (
aec022f) - Потолок римской цифры сказан на обеих поверхностях: тысяча и не больше (
6a84b91) - У римской цифры появился потолок: значение не больше тысячи, и это доказано вторым правилом (
2851c00) - Разность натуральных не выходит за точный потолок — утверждение стоит у функции, а не в копии (
ff4e218) - Принцип индукции по отрезку «нат» порождается термом — из двух границ типа, а не из аксиомы (
121ed64) - Ядро берёт умножение: два
натдают неотрицательное произведение (7971a66) - Посылка принципа несёт свободные имена своего заключения — их считает подстановка, а не второй список связывателей (
ea95c19) - Разобрано, что случится с близнецом при слиянии соседних веток Go: рантайм не страшен, граница входа — задевает (
a1c457f) - Раздел SPEC перестал подразумевать число: сторож меры доезжает до одной программы из трёх, и это печатает тест (
48cdea0) - Зазор до трёх веток эталона измерен числом: 0, 0-при-условии и 158 из 5520 (
ecf5daa) - Шапка близнеца назвала тотальность числом: 128 из 203, и причина у остатка одна, а не три (
937e8c4) - Два случая, которых в дереве нет: кольцо отскоков и тело, не трогающее контекст — оба печатаются побайтово (
9ac504f) - Мёртвый посимвольный сниматель шума снят: 74 строки, которые больше никто не звал, и свод пересчитан (
0a62159) - Свод корпуса пересчитан: 2949 функций, и сторожей не прибавилось ни одного (
474b2b4) - Изъятие показало цену обоих новых правил числом: снимите алгебру — доказано падает с 9 до 6, снимите закрытость — ядро печатает «доказано» о лжи (
f8dd313) - Шапка близнеца называет, чего в нём нет: рантайм параметром и непокрытый порченый AST (
f7b6928) - Остаток непустоты назван числами и образцами: 30 мест из 45 упираются в одну развилку — тип в подписи (
075d22f) - Разбор строки и «символы» знают длину: снято ещё 6 мест, и форма «код символа» закрыта целиком — 0 сторожей из 6 (
eeb67be) - Печать в Rust вошла в список переписанных слоёв: девятый слой самоприменения назван числами, а не обещанием (
2e1f518) - Испорченный AST отвергается тем же текстом: двенадцать отказов подготовки из тринадцати (
eb8e646) - Проза догнала ядро: индукции доступны 50 функций stdlib из 185, было 28, и весь прирост списочный (
56f70ff) - Печать в Rust на flang совпала с эталоном побайтово на всём корпусе: 101 из 101, 44 из 44 со сторожем меры, 19 из 19 моделей (
84e25df) - Отказ сверяется наравне с печатью, и самоприменение знает про восьмой слой (
19be75e) - Числа раздела SPEC подогнаны под прогон: 44 программы со сторожем меры, 13 отказов (
837ee5e) - Граница близнеца на порченом AST измерена и держится числом: совпадает 1 случай из 14 (
c7a9297) - Отношение объёма названо числом, а не округлением: 3223 строки против 1619, ×2.0 (
c778d97) - Принцип индукции целиком собирается на flang и совпал с эталоном побайтово (
e46d472) - Отношение объёма названо числом, а не на глаз: ×1.13, а не «вдвое короче» (
282d502) - У встроенного списка есть начальная алгебра: доказано ядром было 6, стало 9, и три новых — первые утверждения о списке (
891da06) - Проза догнала свод: «случая (а) в корпусе НОЛЬ» перестало быть правдой, и обе половины этого утверждения названы новыми числами (
8a2bf5f) - Свод пересчитан под новый слой: 3111 функций, 2415 тотальных, сторожей по-прежнему 100 (
eb962f8) - Слоёв самоприменения стало девять: SPEC догнал печать в Go (
79759a6) - Печать в Rust на flang сошлась с эталоном побайтово на 99 программах из 101 и на всех 19 моделях FTS (
4fb3eb0) - Порождение принципа индукции переехало на flang: 410 входов сверены побайтово (
ba9f456) - Близнец печати в C читает отметку доказанной непустоты: на помеченной программе 65 вызовов без сторожа совпали с эталоном побайтово (
2517e87) - Девятый слой записан в flang/self/SPEC.md: 323 функции, 228 тотальных, побайтово на 100 программах (
e71895e) - Девятый слой самоприменения записан в flang/self/SPEC.md вместе со своим долгом: границы входа у близнеца C# нет (
2800742) - Печать в Java на самом flang совпала с эталоном побайтово: 101 программа из 101 (
aa8be99) - Печать в Elixir на самом flang совпала с эталоном побайтово на 101 программе из 101 (
2bd7fc5) - Печать в Python на самом flang совпала с эталоном побайтово: 100 программ из 100, 400 файлов из 400 (
2bbb94c) - Третий источник фактов унесён на flang: вердикты сошлись на 8700 утверждениях (
e338960) - Печать в C# на самом flang совпала с эталоном побайтово на всех 100 программах репозитория, включая собственный исходник (
3082e05) - Вердикты близнеца и эталона сошлись на 7902 утверждениях, подделки отвергнуты обе (
86127fa) - Печать flang → Go на самом flang: 100 программ из 101 и 19 моделей совпали побайтово (
7a7f271) - Печать в Rust на flang начата с измеряющего теста: сверка меряет, а не только падает (
a804ce5) - Таблица цены шага пересчитана по помеченному корпусу: разрыв C и Go — 639 раз (
0d56375) - Дифференциальный тест печати в Elixir заведён и мерит; близнец на flang начат (
d8463f9) - Близнец печати в C# начат: основания, разбор программы, граф вызовов и печать выражений — 2769 строк (
00bd7e7) - Близнец печати в Python разбирается: 282 функции, все слои кроме файлов и точки входа (
ddb7479) - Слой сведения ядра переехал на flang: 69 функций, 39 тотальных, сверки пока нет (
0af4c51) - Близнец печати в Java начат: 3037 строк, шесть слоёв из семи (сверки ещё нет) (
52e8859) - Доказанная непустота снимает сторожа у всех восьми целей, а не у одной: правило выбора помощника одно на всех (
57fa225) - Заказ от библиотеки лежит в SPEC ядра таблицей: шесть пунктов, у каждого улика настоящей функцией и код отказа (
18f78e9) - Индукции доступны 28 функций stdlib из 185, и это измерено: второй модуль сказал о себе, доказано по-прежнему ноль (
6d02caa) - lists.flang доведён до числа: 14 функций из 28 говорят о себе, утверждений 15, доказано ядром по-прежнему ноль (
89e11c3) - Библиотека впервые говорит о себе: восемь утверждений о lists.flang, все восемь сеткой, и причина названа кодом отказа (
d6ece88) - Один пример больше не доказывает утверждения обо всех входах: ядро отвергло ложное «в соединении ровно три» (
31226ff) - Непустота стала уточнением типа: 77 мест частичных форм из 280 перестали проверяться во время работы (
acf4e5a) - Близнецы законов догнали эталон: три красных противоречия сборки закрыты (
b7973f2) - Восемь целей считают шаги одинаково: C больше не берёт лишний шаг на входе в цикл (
330060b) - «Не проверяет ничего» спрошено до конца: своё тело чисто у 2013 функций, а вместе с вызванными — у 1737 (
a1da777) - Свод считает обе проверки рантайма: мест не 100, а 380, и без единой проверки не 2096 функций, а 2013 (
9b76283) - Свод второй волны пересчитан ОДИН раз: 3809 функций, 3036 тотальных, 26 утверждений (
cc8e8e8) - Постоянная шага Elixir измерена: словарь процесса стоит 50 нс из 1700, обвинение с него снято (
a43fe18) - Дождались: на 022 напечатанный JS не зависает, а стоит 21 минуту 30 секунд — и отказ у него знак в знак эталонный (
a5180c9) - Контракт называет измеренное: сторож меры сверен с эталоном у ВОСЬМИ целей из восьми, а причина застревания на 022 измерена числом (
029d42d) - Контракт записал: сторожей меры два, проверен был тот, у которого два места из ста, и назвал 278 мест, которых свод не считает (
700fc64) - Журнал вычислителя не приписывает сверке того, чего она не находила (
2293917) - Подготовка программы отказывает теми же словами, что эталон: пять проверок, которых не было (
0d9312c) - Контракт записал: сторож меры сверен с эталоном у семи целей из восьми, и назвал программу, на которой четыре сверки не досчитываются (
120a25a) - Прогонщик Elixir читает и пишет байты: кривая локаль хозяина больше не корёжит кириллицу (
e92a38e) - Шапка вычислителя называет счёт функций числом, а не «шестьюдесятью с лишним» (
422a43c) - Журнал долгов вычислителя называет и то, чего сверка не нашла (
f982e4d) - Отсутствующий подузел доезжает до ряда отсутствующим: «получено undefined» перестало превращаться в «null» (
2f39ba4) - Вычистил из собственной прозы сторожей то, за что они краснеют у других (
d76a3a4) - Глубина вызовов возвращается на место: два места, где машина расходилась с эталоном, и проба на каждое (
01850f4) - Спецификация самоприменения знает про девятый слой и честно называет, чего в срезе вычислителя нет (
a75dd06) - Вычислитель на flang сверен с эталоном на 2012 примерах корпуса: значения и витки совпали все (
9ffcceb) - Размер компилятора на JavaScript в шапке самоприменения отстал на 61 строку: 24440, а не 24379 (
e329fb6) - Своим счётом измерено, насколько врёт сторож пробелов: одиннадцать слов держатся на литерале (
98ce046) - Самоприменённый парсер читает «план» со словарём ввода-вывода: пробел остался один из 147 (
a0db3eb) - Сторож утверждений поймал мою же прозу: «инфиксного и в языке нет» — неправда, слово «и» лексер знает ключевым (
7eef13f) - Самоприменённый парсер читает «прогон»: разбор конкурентности закрыт, пробелов 2 из 147 (
020ef27) - Проза догнала код: «объявленную меру близнец только разбирает» перестало быть правдой в четырёх местах (
87b56ad) - Красноты сборки закрыты: рантаймы Rust и Elixir снова знают свой список, а сторожа догнали дерево (
4e3af02) - Самоприменённый парсер читает «надзор»: пробелов 4 из 147, а не 7 (
a590c58) - Третий поиск описания на каждое ребро был квадратом поверх квадрата: один поиск вместо трёх, анализ types.flang снова влезает в лимит (
0f38346) - Точка раскрутки догнала близнеца: правка «Собрать новое поле» доехала до bootstrap/ (
f8e2e26) - Самоприменённый парсер читает «процесс» вместе со словарём действий: пробелов 7 из 147 (
34c865e) - Самоприменённый парсер читает моноид и монаду: пробелов 11 из 147, а не 18 (
40b68a3) - Слово по номеру в парсере ядра берётся формой: девятнадцать мест перестали стоить длину строки (
78fc9eb) - Самоприменённый парсер читает «к числу или беда» и сам приписывает тип исхода (
4090e22) - Заказ на ядро в записках стал пятью строками из шести, и число названо на месте (
b9155a6) - Размер компилятора на JavaScript в flang/self/SPEC.md догнал дерево: 24645 строк вместо 24379 (
5574363) - Долги, свод и точка раскрутки догнали третьего носителя: 2938 функций корпуса, 2302 тотальных, 636 обычных (
a208381) - Записки догнали четвёртую переписку: «вызов не разворачивается никогда» было решением, а довод при нём был шире решения (
d0f4a81) - Обещания о печати и о стоимости форм сверяются с прогоном: Go брал
хвостсрезом, а таблица говорила «копия» (f3d38ea) - Свод собранного дерева пересчитан ОДИН раз: 3329 функций, 2678 тотальных, 25 утверждений (
2897521) - Строка заказа вычеркнута: «глубина дерева неотрицательна» доказана индукцией через развёртку «Глубже» (
d74c28b) - Код, названный прозой, обязан существовать или стоять в списке необещанного: сторож на 52 файла .md вместо одного (
24abcd3) - Печать в C перестала стоить квадрат: шесть взятий по индексу внутри свёрток стали постоянными (
f2ee965) - Печать близнеца ставит сторожа объявленной меры: 94 спуска в 41 программе корпуса совпали с эталоном побайтово (
aee6e25) - «Иногда является» доезжает до сверки значения: необязательное поле записи перестало требоваться как обязательное (
026f244) - Вычислитель flang написан на flang: у самоприменения появился девятый слой, первый исполняющий (
a3f46b7) - Улика владельца закрыта: «высота копии равна высоте оригинала» доказана индукцией, а не посчитана на одном значении (
8981852) - FLANG_LAW_LIMIT перестал быть обещанием: не досчитанный закон отличим от нарушенного (
b5f9be9) - Код отказа, названный любой прозой, обязан существовать: двое выдуманных названы (
dce59d9) - Напечатанная программа на JavaScript отвергает значение вне объявленного типа до вычисления: четыре лжи из четырёх, восемь целей из восьми (
ad47106) - Ядро научилось разворачивать определение функции: четвёртая переписка нормализации с четырьмя названными ограничителями (
2648f46) - Контракт конкурентности записал, где замкнутость набора отказов проверена, а где нет (
b7c9083) - Число строк компилятора в self/SPEC.md досчитано до конца работы: 25034 (
4a653c4) - Числа в прозе сверяются с измерителем: сторож нашёл 26 расхождений, все закрыты (
a5569d7) - sha256 формулы посчитан по архиву, который можно собрать заново и получить те же байты (
b41ff09) - Близнец объявленную меру теперь ПРОВЕРЯЕТ, а не только разбирает: вердикт сошёлся на всех 106 файлах корпуса (
5104eea) - Нарушение приписывается своему утверждению даже при совпавших именах (
e7227a0) - Размер эталона в «Самоприменении» сведён с деревом: 24596 строк, а не 24379 (
ba3f026) - Запрет слова «провер…» перестал смотреть половину ведомости — и слово нашлось (
d1ed8d6) - Точка раскрутки перепечатана скриптом: в неё вошли пять утверждений и проверка постусловия (
374d724) - Долг «у восьми слов нет продукции в самоприменённом парсере» записан закрытым и с ценой (
a7c5ddd) - Близнец-типизатор читает постусловие — дыру показала порча, а не рассуждение (
becdd2f) - Ведомость на flang высказывает утверждение о своём номере формата (
44a894c) - Разборщик на flang высказывает два утверждения о себе: размер пачки и наименьшая основа (
761ad24) - Печать в C на flang высказывает утверждение о себе: «байтов у символа неотрицательно» (
c615b11) - Отставание близнеца ведомости названо числом: два слова, и второе ждёт вычислителя (
7d658d6) - Утверждение «сумма пары неотрицательна» стоит у самой «Суммы пары», а не только в перенесённой копии (
66d9870) - Счёт нарушений моноида берётся один раз, а не дважды в одной записи (
06bf3d4) - Долг из SPEC переписан в замер: закрыт первым из двух названных путей, цена в шуме (
c382ab1) - Та же болезнь у законов вылечена: «нарушений не найдено» перестало печататься об оборванном обходе (
49e6be7) - Полиморфный параметр перестал отвергаться чужими словами, и сверка целей получила свой эталон (
94fc42f) - «Нарушений не найдено» стало означать «искали и не нашли»: сетка примеров прогоняется (
0c9d22f) - Утверждение «значение цифры неотрицательно» стоит у самой функции в leetcode 013, а не в перенесённой копии (
b524edd) - Граница входа напечатанной программы записана в спецификацию: у библиотечного входа её нет, у прогонщика она есть (
1f1d474) - Напечатанная программа на Elixir отвергает значение вне объявленного типа до вычисления: четыре лжи из четырёх, семь целей из восьми закрыты (
6522098) - Напечатанная программа на C# отвергает значение вне объявленного типа до вычисления: четыре лжи из четырёх (
9acf560) - Напечатанная программа на Java отвергает значение вне объявленного типа до вычисления: четыре лжи из четырёх (
4546d33) - Напечатанная программа на Python отвергает значение вне объявленного типа до вычисления: четыре лжи из четырёх (
3ad7fff) - Напечатанная программа на Go отвергает значение вне объявленного типа до вычисления: четыре лжи из четырёх (
e32e7be) - Напечатанная программа на Rust отвергает значение вне объявленного типа до вычисления: четыре лжи из четырёх (
8e670b4) - Напечатанная программа на C отвергает значение вне объявленного типа до вычисления: четыре лжи из четырёх (
ae4f41f) - Скобка итога про утверждения без теоремы стала функцией, а не двумя тройными знаками (
abd62da) - Раскладка охвата по каталогам исправлена и стала исполняемой: пять, одна и одна (
1117048) - Число целей в шапке снято: сказано «у целей печати», потому что счёт я не мерил (
0557c12) - Ведомость перестала называть источником факт, которым не пользовалась (
4162f2a) - Обход свёртки и «отобразить» снимает границы один раз: цена соседних форм вернулась к прежней (
87ec06f) - Оболочка отвергает ложь про тип до вычисления, и теперь это сторожат: дверь была закрыта, но ничем не удержана (
94c7cae) - Единственное отличие вида от массива названо и закреплено: запись отвергается (
d8d1fad) - Цикл поручений сверяет вход шага с объявленным типом: «мс: вчера» перестало быть ответом плана (
4bf1ca8) - «Добавить» в эталонном вычислителе за постоянное время: 200 000 элементов — 272 мс вместо 229 634 (
9824f27) - Факт-чекинг сверяет факты с объявленным типом до вычисления: «подтверждено» на значении вне типа больше не выдаётся (
6c64911) - Записки догнали третье правило, и одна из них была ЛОЖНА: «аксиомы появятся вместе с
нат» (bf45901) - Потолок объявленного
натстал вторым фактом ядра: утверждение о разности пары доказано без теоремы (ffad566) - Охват ядра по корпусу стал измерением: 10 функций из 2800, и семь из них писать нельзя (
edec2e1) - Числа в шапке js.mjs — свои, а не соседские: 919 мс эталона и 133 мс на 200 000 (
a8abb8a) - Самоприменённый парсер читает членство в категории: долг соседней ветки закрыт (
8e4b264) - Напечатанный модуль объясняет свой вид сам: довод переехал внутрь $view (
169bb09) - Два утверждения корпуса уехали из «сетки примеров» в «доказано ядром»: 7 → 9 (
0319cde) - Каталог и SPEC пересчитаны после JS: цена «добавить» постоянна у четырёх целей, дыра осталась у четырёх (
2777b2c) - Сличение таблиц нашло два слова, на которых близнец расходился с эталоном (
da33be7) - «Добавить» в напечатанном JavaScript за постоянное время: 90 с без ответа стали 0,8 с (
7c513ad) - Параметр печати ответа больше не затеняет саму функцию ответа (
c6b1384) - Слой доказательства закрыт: индукция разбирается, пробелов 19 из 147 вместо 20 (
1bed171) - Счёт расхождений бэкенда Elixir сошёлся: их пять, а не четыре (
7df8a51) - Шапка бэкенда Elixir договаривает про «хвост» и называет, что ветвление «добавить» тут даром (
3d4f46b) - Документация догнала прогонщика: у JavaScript больше не «один файл», а модуль и прогонщик рядом (
10475dc) - Разворот конца списка идёт через Enum.reverse: сторож «ни от чего не зависит» остаётся строгим (
1e02f10) - Самоприменённый парсер читает шаг доказательства: пробелов 20 из 147, а не 23 (
f25ad02) - Самоприменённый парсер строит теорему новой формы: пробелов 23 из 147, а не 25 (
d94dbbb) - У JavaScript появился прогонщик: было 1 378 кадров и не тот отказ, стало 10 001 и текст эталона (
0508384) - «Добавить» в напечатанном Elixir за постоянное время: 90 с стали 8,3 с (
0dc9814) - «Добавить» в напечатанном Python за постоянное время: тест цели снова досчитывается (
c1468cb) - Самоприменённый парсер читает постусловие функции: пробелов 25 из 147, а не 27 (
be2aab5) - «Добавить» в напечатанном C# за постоянное время: 273 с стали 2,1 с (
ccc2bd4) - Контракт теорката признал категорию сущностью, а обещание о полноте — бывшим пустым (
0bdb79c) - «Добавить» в напечатанной Java за постоянное время: 63,7 с стали 0,8 с (
037aaa0) - Новый ключ встал в справке после ведомости: сосед покраснел правильным красным, и правился код, а не тест (
d08e4c2) - Цена новой ошибки сборки названа числами: 3 отказа и 4 решения надзора против 1 и 0 (
20d5105) - Печать отбрасывает недостижимое: у import-check из 29 функций едут 2, C похудел с 74 394 байт до 6 284 (
871d185) - Корпус сверки вырос вслед за продукциями, и слой поверхностей назван долгом (
e5adf77) - Слой доказательства записал третий источник фактов и долг, который он сделал нагруженным (
f8f4d2a) - «Добавить» в напечатанном Go за постоянное время: тест цели снова завершается (
1388cfa) - Самоприменённый парсер читает «бифунктор»: пробелов 27 из 147, теоркат закрыт (
950c26d) - Самоприменённый парсер читает «изоморфизм» с обеими стрелками: пробелов 30 из 147 (
fa9117e) - Взятие по номеру в примере меры и в самоприменённом компиляторе стало постоянным (
4218514) - Стрелка-морфизм и её композиция разбираются самоприменённым: пробелов 33 из 147 (
99286ad) - Самоприменённый парсер разворачивает «цепочку» в композиции: пробелов 35 из 147 (
9be1f09) - Расхождение с самоприменением названо в SPEC, а не оставлено молчать (
f61f36a) - Ловушки достижимости названы и закрыты: функция-значение, обработчик процесса, мера, текст сторожа (
e5a4d27) - Самоприменённый парсер читает «единица «Заказ»»: пробелов 38 из 147 (
5531f19) - Самоприменённый парсер читает «вложение» вместе с «даёт»: пробелов 39 из 147 (
e11674c) - Двоичный поиск библиотеки перестал быть линейным: середина берётся встроенной формой (
1b25870) - Объявленные 10 000 кадров у JavaScript стали настоящими: было 1 379 и не тот отказ, стало 10 001 и текст эталона (
28d92e9) - Код отказа печати зовётся FLANG_CONC_UNSUPPORTED: имя одно на все 16 мест, и два сторожа не дают им разойтись (
588593a) - Самоприменённый парсер читает «пересечение»: пробелов разбора 41 из 147, а не 42 (
9c951ef) - Три контракта догнали седьмой вид: видов отказа семь, и самый крупный долг распределённости вычеркнут (
fbd5f5b) - Восемь прогонов на седьмой вид и десятое испытание распределённости: мимо анализа теперь не поднимешься (
c4d8e22) - Достижимость от точки входа считается: 27 из 29 функций import-check не вызываются никогда (
ab52036) - Две аксиомы категории доказываются, и обещание о полноте функтора перестало быть пустым (
b71daf0) - Седьмой вид отказа: FLANG_LINK_DOWN вошёл в анализ, и забытый надзор над представителем стал ошибкой сборки (
11410fa) - «Добавить» в напечатанном Rust за постоянное время: 20 минут стали 1,9 с (
6f36d31) - Категория называет свои стрелки: форма разбирается, а AST сорока моделей не сдвинулся ни на байт (
9354587) - Объявленный тип аргумента стал фактом ядра: одно утверждение уехало из «сетки» в «доказано» (
2cbea8c) - Граница входа сверяет --args с объявленным типом: четыре лжи из четырёх отвергнуты до вычисления (
032d6f1) - Уведомление доехало до всех восьми целей: рантаймов оказалось 28, а не 8 (
cc872b6) - Печатаемые рантаймы C и Rust уезжают к пользователю с уведомлением: восемь файлов из восьми (
75a9d59) - Пять красных закрыты, и все пять — последствия сегодняшней работы, а не старые долги (
8203f39) - Лексер на flang узнал иероглиф 自: работа над «нат» завела 自然数 и сломала сверку (
1762682) - Отношения множеств и монада сверены с эталоном побайтово: два слоя не проверялись ничем (
f6cb89f) - Законы категорий считаются на flang: сетка моноида и изоморфизма перенесена, а её числа сверяются побайтово (
945c230) - sha256 формулы пересчитан по настоящему архиву 0.5.0, точка раскрутки стала видима журналу (
cb80317) - Факт-чекинг сверен с эталоном побайтово: того, ради чего язык создан, на flang не было (
55b1c71) - Версия поднята до 0.5.0 во всех четырёх местах (
d24494b) - Гейт лицензий снова зелёный: печатаемый планировщик JS остался без SPDX (
d5be996) - Журнал изменений перепечатан: он разошёлся с историей ветки ещё до этой работы (
eba4594) - Объявленный предел глубины в C стал пределом: было 1518 кадров и SIGSEGV, стало 10 001 и текст эталона (
468d165) - То же в близнеце: self/types.flang научен неотрицательному без потолка, сторожей ноль (
39dc718) - Неотрицательность переживает выход за точную сетку: терялась вся, остаётся знак (
5c7e12a) - Распределённость: два узла говорят по имени процесса, а разрыв связи испытан разрывом (
439f164) - Числа корпуса догнали хеш-таблицу: 2795 функций, библиотека 12 модулей и 185 функций (
316d9a3) - Словарь перестал зависеть от числа ключей: спуск идёт по цифрам хеша, а не по связям (
97f136d) - Индукция: ядро доказывает утверждения о БЕСКОНЕЧНЫХ типах, и подделку отвергает (
aeaf75b) - Индукция: принцип порождается начальной алгеброй и проверяется как терм (
76236bb) - Постусловие отвечает за своё завершение, а «дано» теоремы — за свой тип: обе улики больше не valid: true (
7ff80d8) - Близнец проверки типов знает точное натуральное: свод корпуса сошёлся, точка раскрутки перепечатана (
8b497db) - Утверждение постусловия типизируется: «результат плюс "строка"» больше не valid: true (
5ab2ee3) - flang test проверяет программу перед прогоном примеров: зелень на программе с ошибкой типов больше не выдаётся (
0c6ae17) - Печать в JavaScript называет уточнённое число числом, а не «неизвестно» (
d3f3627) - Самоприменённый анализ завершаемости знает точный шаг: цепочка без Node называет тот же носитель, что эталон (
c76f8a0) - Ведомость называет пятый носитель обещания: «точным шагом», и он единственный без сторожа (
c6925df) - Точный натуральный тип «нат» снимает сторожа с постоянного шага: 100 мест вместо 115 (
06e8dd6) - Занятость слова в корпусе меряется командой тем же токенизатором, что у языка (
fee632e) - Ведомость доказательства печатается самим flang: 1376 строк против 519 на JavaScript, текст знак в знак и JSON байт в байт (
4351f44) - Оболочка починена: обёртка выражения говорит явно, что сказать нечего (
a2ecffa) - Компилятор flang собирается из клона без Node: «make -C bootstrap», нужны только cc и make (
ae973f8) - Напечатанный JavaScript сам считает глубину и витки: вместо RangeError и зависания — объявленный FLANG_RECURSION_LIMIT (
51986c4) - Из ядра убрано мёртвое: карта вариантов, которую никто не читал, и два перевывоза (
67ce68c) - Указатель библиотеки называет зависимости каждой функции, и
толькоперестал быть догадкой (e59bcdc) - Семь функций «Списков» приняли список любых значений, и в библиотеке появились промежуток, двоичный поиск, равенство списков, дерево чисел и последний элемент (
dab10b8) - Числа самоприменённого парсера вернулись на место после моей ошибки в слиянии (
296c02b) - Восемь диагностик называют лекарство, а не только болезнь (
6b21b3c) - Названа недостача, которую открыло слово «обеспечивает»: выражение постусловия не проверяет типизатор (
0a0711c) - Доказательство стало объектом: обязательства лежат данными, ядро проверяет терм и само доказано тотальным без сторожа (
b554e37) - Пять дыр статической проверки закрыты: пропущенное «возвращает» больше не выключает типизацию, джокеры плана сверяются с объявлениями, а повтор имени и ложное имя модуля при импорте перестали быть молчаливыми (
dca5cb7) - Решений LeetCode 82: восемь задач из списка невыразимых решены, недостачи языка переписаны с уликами (
be14e2c) - Программа с процессами печатается и в JavaScript: планировщик в модуле, журнал сходится с эталоном побайтово (
d2005eb) - Пробелы разбора у самоприменённого парсера перечислены сторожем: 34 слова лексера без продукции названы поимённо, и список краснеет в обе стороны (
3ddbb84) - Объявленная мера «убывает» разбирается самоприменённым компилятором: AST сошёлся с эталоном побайтово на всём корпусе, неподвижная точка не двинулась (
bdd05ef) - Утверждение о поведении можно высказать: обычная функция пишет постусловие словом «обеспечивает», теорема — доказательство в духе Isar (
4ae7b92) - Напечатанный TypeScript отвечает то же, что ядро: коды и тексты отказов сошлись на 966 входах из 966 (
2480cad) - Двоичный поиск снова двоичный: взятие по номеру встроенной формой, а не обходом (
4073199) - Ключ, поднимающий предел шагов, у команды run перестал быть украшением (
f4646ef) - FLANG_MEASURE вошёл в закрытое множество отказов процесса шестым видом, а сторож множества перестал быть слепым по построению (
38e8dd3) - Шесть целей больше не теряют процессы молча: печать конкурентной программы в цель без планировщика отказывает (
26ec179) - Печать больше не обходит проверку: emit отказывается печатать программу, которую check отвергает (
4c6b51a) - «Проверено на двенадцати значениях» больше не читается как «доказано»: flang check --proof печатает ведомость доказательства (
ca16678) - Сетка из одного семени больше не сходит за сетку: «любое из» на ней отвергается до прогона (
fe39642) - Числа самораскрутки снова можно перепроверить: скрипт, который их печатает, доехал до main (
0d56c04) - Знак нуля переживает компилятор BEAM: −0 в печати Elixir приезжает вызовом, а не литералом (
144f03f)
Ещё 380 правок языка снаружи не меняют.
0.4.8 — 9 августа 2026
вложение и пересечение: у множеств появились слова
- Версия 0.4.8: слова множеств — вложение и пересечение — доезжают до пакета (
5a7e23a) - Исчерпание своей кучи стало отказом ПРОЦЕССА, а не смертью программы (
2dcae4c) - Утверждение о недостаче в комментарии стало проверяться прогоном (
9bf853c) - Ящик ограничен объявляемым размером: переполнение стало отказом отправителя (
3e6c5e5) - Множество отказов процесса замкнуто на деле, а барьер замены держит целым пробег, а не сообщение (
d06111b) - Множества получили слова: вложение и общая часть — и по причине, а не по списку (
0f529ba) - Логика пишется инфиксом — «не», «и притом», «или», — а «Ф» от а и б по-прежнему два аргумента (
f8588f2) - Процесс живёт неограниченно: своя куча у процесса, сообщение уезжает в неё копией (
5907532) - Горячая замена живёт под работающим планировщиком, а состояние переезжает проверенной функцией (
2c22f26) - Стек на процесс: наклон устойчив, свободный член гуляет — сказано врозь (
6f0ef9c) - Спуск ограничивает глубину рекурсии, но не цену тела: вторая ложь оценки (
da4102c) - Оценка витков считала длину цикла размером входа — это была ложь в опасную сторону (
7cd9c3a) - Страница Rosetta называла доказанной обычную функцию, а обычной доказанную (
623f277) - Числа В1 и правки контракта: цена вытеснения, ограниченность, счёт строк (
5aa4e18) - Ветка «В» карты отказоустойчивости: вытеснение измерено, ограниченность сделана (
5bb25e1) - Счёт строк компилятора в self/SPEC.md отстал на пять строк (
3c8836e) - Анализ отказов не знал про «код символа», приехавшую соседней веткой (
d02816c) - Иероглиф 码 стоял в таблице слов и отсутствовал в алфавите (
dcc5f36) - Число строк компилятора в self/SPEC.md отстало от дерева (
c0883b8) - Анализ отказов обходил одну и ту же функцию по разу на каждый процесс (
285230e) - Слияние хеш-дерева развело грамматику: поля конструктора остались с запятыми (
fa0af93) - Наблюдение текло в рабочем режиме: журнал доставок писался всегда (
9fca07f) - Контракт называл отказом деление на ноль, которого не бывает (
52ed938) - Процесс мог упасть, а решать о его отказе было некому — и это молчало (
a86e396) - Эмодзи в исходнике .flang разводил два лексера, и это был известный долг (
c6253b9) - Словарь стал логарифмическим: дерево поиска с приоритетом по хешу ключа (
683ec9d) - «Код символа» печатается во все восемь целей и понимается самоприменением (
50be733) - Четыре программы объясняли себя запретом, которого в языке уже нет (
1afa107) - Размер компилятора на JS пересчитан, а сторож числа научился склонять слово (
dddfda9) - Напечатанный разборщик развёл запятую и «и» так же, как эталон (
691d08c) - Запятая принадлежит списку, а не полям конструктора: литерал перестал быть двояким (
96bffe6) - Мера — тоже код, и анализ теперь её обходит (
d4966db) - Прогон объявляет, что проверит по-настоящему, и умеет идти туда, где всё есть (
fadc8d9) - Каталог недостач и SPEC говорят про меру то, что стало правдой (
1cbbc8c) - Евклид и двоичный поиск пишутся на языке, а не обходятся топливом (
9af1a70) - Сторож объявленной меры проверяет убывание, дно и целость (
72d1c47) - Цикл доказывается объявленной мерой, когда двух даровых порядков не хватило (
d0f03ad) - Мера проверяется на число и на то, что в ней одни параметры (
9d1fd96) - У функции есть объявленная мера: «убывает <выражение>» (
4f03bce) - Слово «убывает» стало ключевым: объявить меру было негде (
807b993) - Вечного процесса нет и в рантайме: fl_conc_run сам ограничен пределом пробегов (
2c31a2a) - Заголовок контракта и открытые вопросы узнали про время жизни (
4481910) - Контракт сверен с тем, что измерено: 256 ядер, время жизни и два противоречия (
afb22c8) - Карта до отказоустойчивости: тотальность процессам не мешает, а память — стена (
984fc79) - Кодовая точка символа стала числом: у строк появилось всё, чего им не хватало (
3be8782) - Мерка научилась спрашивать, сколько живёт процесс, а не только как быстро бегает (
7cfebc9) - Синтаксис в SPEC говорил о двух поверхностях, а их четыре (
57b29f1) - Полноширинные :,( — те же знаки, что :,( — иначе китайский исходник набирался в двух раскладках (
b0ef815) - Диагностика цитирует слово той поверхности, на которой написан файл, а не русское (
7e022c2) - Поверхностей у языка четыре: эсперанто говорит 127 понятиями из 131, китайский — 129 (
684ad72) - Алфавит лексера на flang дорос до четырёх поверхностей: на «ĉ» он расходился с образцом (
f4627ce) - Напечатанный компилятор не ставил сторож меры и крутился там, где эталон отказывал (
37cd2b9) - Двум функциям библиотеки разрешалось жить без примера по неверной причине (
c32b09f) - Обоснование самоприменения опиралось на число, разошедшееся втрое (
e27f963) - Английский модуль назывался «in English» — на вики это читалось как часть языка (
69ad275) - Каждая задача Rosetta Code говорит на обоих языках, и это сверено деревьями (
c03a6a8) - Выкладка на Rosetta Code делается скриптом, а пароль остаётся у владельца (
28473eb) - Пример полиморфной функции перестал сверяться без подстановки (
3044589) - Стрелка получила закон: обещание, которое проверяется примерами и умеет упасть (
9ddacdc) - Счёт функций в «Долгах» пересчитан по исходникам, а не выбран из двух версий (
8cdf5c1) - Элемент списка берётся по номеру — и доказательство завершения от этого окрепло (
f12a0d1) - Порог «потоки против кооперации» оказался разным вчетверо на двух машинах (
99481fe) - Печать в C молча выбрасывала процессы; теперь у неё свой планировщик (
bb68a1a) - Отметку меры кладёт и копия на flang, и кладёт её в те же места (
a76ae85) - Мера научилась шагу-параметру: «н минус ш» доказывается, когда ш не меняется (
777d2a3) - Инфиксная логика не заводится, и причина названа точнее: арность (
7337a10) - Образцы разбирают строку: посимвольный проход больше не меняет сигнатуру (
3a6470b) - Список из двух конструкторов пишется: разделитель полей смотрит вперёд (
584c3da) - Журнал изменений печатается из тегов и коммитов, а не пишется про них (
656e097)
Ещё 42 правки языка снаружи не меняют.
0.4.7 — 7 августа 2026
монада, отказ значением, полиморфизм в репозитории
- Версия 0.4.7: монада, обработка отказа и полиморфизм доезжают до пакета (
d9676d2) - Отказ «к числу» стал значением: столбец из строк складывается, не падая (
979d82c) - Монада получила форму:
в монадеразворачивается в разбор до конца разбора (1883935) - «тотальная» перестала обещать больше, чем доказано: сторож меры (
f1c3ead) - Библиотека схлопнулась по типам; второй параметр нашёл дефект в самоприменении (
25b6167) - Печать в Go давала вариант и функцию одним именем — и молчала об этом (
bedf937) - Слияние меры с закрытым полиморфизмом: числа пересчитаны, а не перенесены (
6acdf61) - Число теперь тоже убывает — но только на постоянный шаг и только до проверенного дна (
0bee9ac)
Ещё 2 правки языка снаружи не меняют.
0.4.6 — 7 августа 2026
бинарник разговаривает с человеком: check, repl, справка, man
- Версия 0.4.6: то, что ставится из brew, наконец разговаривает с человеком (
0633e72) - Три документа догнали закрытые недостачи, четвёртый нашёл мою ошибку слияния (
1b1e3a5) - Самоприменение понимает полиморфизм и высший порядок; библиотека переехала (
c21a8d5) - Парсер на flang понимает полиморфизм и функции-значения (
9afa0e2) - Бинарник из brew стал инструментом для человека: check, справка, версия, man (
febf795) - Прогон проверял одно чередование из тысячи — теперь сетку семян, и модель измерена (
86397d1) - Теоркат переезжает границу файла целиком: пять видов, а не четыре (
c0a2428) - Материалы к выходу наружу: проверено каждое внешнее обстоятельство, а не вспомнено (
9105c86) - Витрина Rosetta Code выросла вдвое и научилась говорить, чего язык не умеет (
ea7c621) - Три числа файлов в документах считали разное, и нигде не было сказано что (
e705bc2) - Запись о полиморфизме утверждала шире, чем проверяла её улика (
6672800) - Указатель библиотеки печатается из модулей, а не пишется про них (
3736eb9) - Множество, служба REST — и три ловушки языка, найденные при попытке им пользоваться (
a56e1da) - Словарь в языке появился — и вместе с ним недостача, которой никто не знал (
9a4700c) - Логические операции в языке есть — функциями, потому что слово «и» занято (
51b76ce) - Связывание больше не теряет теоркат: доказательство переживало границу файла (
5e390a5) - Поправка к плану: «печатается» не значит «можно писать библиотеку» (
b1ecbff) - Библиотека на функциях-значениях написана — и не там, где должна (
d5f830c) - Функция-значение доехала до восьми целей: понижение легло одним проходом (
2614a3b) - Функция стала значением: дефункционализация оставила граф вызовов конечным (
d754261)
Ещё 6 правок языка снаружи не меняют.
0.4.5 — 7 августа 2026
- Версия 0.4.5: оболочка наконец доезжает до brew, плюс ввод-вывод и BEAM (
b49f64d) - Обрезка пробелов стала тотальной: шапка модуля утверждала невозможное (
c021778) - Слои самоприменения перестали ходить по строке позицией — лексер стал тотальным целиком (
0b0ca36) - Процессы flang поехали на настоящей BEAM: печать в Elixir и сверка по набору исходов (
2f110f4) - Язык научился читать файл и ходить в сеть, не перестав быть чистым (
5bfdce0) - Теоркат: изоморфизм и бифунктор — и честная строка о том, чего в изоморфизме не проверяется (
39f832f) - Монада была невыразима: типы стали параметрическими, и печать этого не заметила (
716d19b) - Список недостач языка врал наполовину: восемь записей из пятнадцати неправда (
e65a533) - Тринадцать функций stdlib стояли без примеров по причине, которой нет (
bb7faf0) - Надзор перестал быть объявлением: упавший процесс поднимается к тому же началу (
746d4f4) - Теоркат, шаг 3: моноид и группа — граница «доказано / проверено» внутри одной конструкции (
1a864e3) - Оболочка в бинарнике из brew: язык можно потрогать сразу после установки (
ced8665) - Восемь из двадцати модулей библиотеки уезжали в пакет без SPDX: tsc уносил шапку вместе с import type (
c94f283) - Восемь файлов, приехавших за последние сутки, не несли SPDX — гейт их и поймал (
497b195) - SPDX-заголовки во всём, что уезжает в пакет, и лицензионный гейт в CI (
0eeaeab) - Самая дорогая недостача языка закрыта: четыре задачи и stdlib стали тотальными (
47e94fa)
Ещё 4 правки языка снаружи не меняют.
0.4.4 — 6 августа 2026
- Версия 0.4.4: языковой сервер, функтор с законами, конкурентность и Trojan Source (
8e4afb5) - Языковой сервер для .flang: та же проверка, что у «flang check», прямо в буфере (
8bc0e08) - Два слова контракта конкурентности уже были именами: «начальное» и «порог» (
b247c19) - Конкурентность: атомарность по процессу, а не глобальная — и печать в BEAM (
5b54c99) - Rosetta Code: семь канонических задач, и граница языка сторожится тестом (
1ddb483) - Trojan Source: имя FTS уезжало сырым в комментарии — и во весь ftsc (
e9763e9) - Раскладка проекта: REST-пример «библиотека» и выведенные из него правила (
c234215) - Trojan Source: java, csharp и elixir печатали двунаправленные управляющие сырыми (
fc9ec0f) - Плагин asdf рядом с формулой Homebrew: две упаковки одного релиза (
c62baa0) - Теоркат, шаг 2: функтор перестал быть словом без гарантии (
046a93a)
Ещё 2 правки языка снаружи не меняют.
0.4.3 — 6 августа 2026
подсветка FTS для Vim едет в пакете
- Версия 0.4.3: подсветка FTS для Vim в пакете (
43a89f6) - Подсветка FTS едет в npm-пакет; тема Workbench из репозитория убрана (
6ff44b4) - Пример: правило жи-ши как исполняемая спецификация с морфизмами и теоремой (
bbfdc8d) - Оболочка flang repl: язык можно потрогать, а не только запустить файл (
26e1835) - Встроенная форма «разложить … на символы»: посимвольный проход стал доказуемым (
dfe98e0) - Контракт модели конкурентности: что можно взять у BEAM, а что придётся отдать (
1621cd6) - Подсветка FTS для Vim: 154 слова языка и проверка, что роли различимы (
d63bd4e)
Ещё 2 правки языка снаружи не меняют.
0.4.2 — 6 августа 2026
- Поправка: v0.4.1 не сломан, а описание пакета отстало на пять целей (
6cba8e0) - Слияние двух веток: лимит шагов и запас ёмкости сведены, релиз чинится (
021cc13) - Релиз v0.4.1 выпущен: формула знает хеш, а печать в C — четвёртый случай молчания (
88aaec0) - Компилятор ставится без Node: релизный C, формула Homebrew, честный README (
37b8ad7) - Теоркат, шаг 1: стрелка, композиция, цепочка, единица (
b50f540) - Разбор суждений попал в основную проверку, и пакет получил существующий scope (
c369294) - Самоприменение завершено: неподвижная точка сошлась (
0cd0e90) - flang: печать в Java, C# и Elixir — целей стало восемь (
6a59a75) - Самоприменение: flang₁ собран и работает; неподвижная точка упирается в память (
f2070a7) - Корпус сверки перестал зависеть от чужого домашнего каталога (
567bf61)
Ещё 2 правки языка снаружи не меняют.
0.4.1 — 5 августа 2026
Команды пакета отвечают после установки
Исправлено: flang, fts и fts-mcp в 0.4.0 после npm i печатали ноль байт и выходили с кодом 0 — страж точки входа сравнивал пути как строки, а npm ставит команды символьными ссылками.
Закреплено регрессией, которая ставит ссылку так же, как npm.
- Команды пакета молчали после установки: страж точки входа не разрешал ссылку (
5a4dedd)
0.4.0 — 5 августа 2026
Первая публикация @digitable-lol/fts
Пакет несёт FTS и flang одним набором: fts, fts-mcp, ftsc, ftsvm, ftspec и flang. 327 файлов, 1,1 МБ в архиве, 8,3 МБ распакованный.
Проверено до выпуска: 1738 тестов на Node 20, 22 и 24 без падений, сборка, состав пакета без тестовых файлов, запуск flang из распакованного архива.
- Пакет называется @digitable-lol/fts: scope @digitable нам не принадлежит (
f28500e) - Печать в C: двунаправленные символы, лимит шагов и линейное «добавить» (
61b37d8) - Самоприменение: анализ тотальности на flang — пятый слой, все на месте (
a257d50) - Самоприменение: проверка типов, написанная на flang (
38d0ca7) - flang: тот же дефект печати в C — для прямой рекурсии (
ff50af5) - Самоприменение: парсер flang, написанный на flang (
51d1ff1) - Публикация в npm: пакет открыт, flang входит, публикует тег (
92db56c) - Самоприменение: печать в C, написанная на flang — и найденный ею дефект эталона (
cc944fe) - Самоприменение: лексер flang, написанный на flang (
92a0337) - Ядро FTS на flang: скобочная запись — 56 моделей из 56 побайтово (
9164aa3) - flang: Go печатал литерал варианта записью — расхождение с интерпретатором (
c952e3d) - flang: печать в Python — пятый целевой язык (
7e31eea) - flang: печать в Rust — четвёртый целевой язык (
fda937d) - README: репозиторий называется flang — README теперь описывает flang (
124c3d1) - flang: команда emit — печать в целевой язык из CLI (
ec89e78) - flang: бэкенд C печатал некомпилируемый код, когда вариант одноимён функции (
b33b801) - Ядро FTS на flang: все четыре слоя связались в одну программу (
2dd75df) - Ядро FTS на flang: парсер — цепочка замкнулась (
a018496) - flang: печать в Go — третий целевой язык (
a0b40c6) - Ядро FTS на flang: вычислитель утилит (
f87e776) - Ядро FTS на flang: лексер и печать JSON (
eee1f66) - flang: выборочный импорт «только» — чтобы не дублировать чужой код (
328580d) - flang: связывание модулей — «использует» начинает действовать (
af52ac4) - flang: восемь расхождений между слоями, печать в C, stdlib и LeetCode (
cd5d3d7) - Включить тесты flang в npm test (
67213ba) - feat: flang, языковой сервер, карта покрытия, грамматики и веб-компонент (
867d86e) - Лицензия: BSD 2-Clause вместо унаследованной Apache-2.0 (
6dceb8d) - Убрать research/ из публичного репозитория и починить установку из git (
2cac0b1) - ci: проверять кодогенерацию восемью тулчейнами, запретить молчаливый пропуск (
23b0ef6) - feat: перенести инструменты ftsc, ftsvm и ftspec в репозиторий языка (
5957c72) - feat: add natural English FTS surface (
7401559) - feat: add runtime integrations and benchmarks (
d8204a1) - feat: generate utilities and tests from FTS (
83798af) - feat: add syllogistic Russian FTS surface (
dc46125) - feat: add natural Russian syntax and integrations (
3e57b58) - feat: add Russian real-world FTS examples (
73e5d41) - feat: add strict FTS proof certificates (
18b4a3b) - feat: extract FTS language toolkit (
acbf340)
Ещё 8 правок языка снаружи не меняют.