Repository navigation
flang 0.7.22 — Силлогизм `следует` и верный код символа вне базовой плоскости
Силлогизм следует и верный код символа вне базовой плоскости
Что появилось
следует— вывод утверждения из посылок, названных выше. Заключение записывается отдельным блоком и ссылается на доказанное утверждение словомпо свойству.
утверждение «все люди смертны»
для всех кто: «Человек»
утверждаем («Смертен» от кто)
следует «Сократ смертен»
дано сократ: «Человек»
утверждаем («Смертен» от сократ)
по свойству «все люди смертны»
$ flang check socrates.flang --proof
утверждение «Сократ смертен» — доказано: терм принят ядром, 1 шаг, основания: утверждение «все люди смертны» — утверждение обо ВСЕХ входах
Без строки по свойству заключение не доказывается:
FLANG_PROOF_STEP: теорема «Сократ смертен»: ни одного шага код 1
Что изменилось
код символав оболочке: знаки вне базовой плоскости.flang replотдавал 240 — первый октет UTF-8 — на любом таком знаке;flang runна том же выражении отвечал верно. Теперь ответ один.
$ flang repl
» код символа "𝒜"
119964
» код символа "👍"
128077
Заявка #103.
- Ключа
--step-limitу самого двоичного нет. Ранняя редакция этих заметок обещала, что ключ годится при любой команде. В 0.7.22 его разбирает толькоflang check.
$ flang --step-limit 100000000 emit файл.flang --target c
flang: неизвестная команда «--step-limit» код 2
Что сломалось
- Скрипты печати семени переименованы. Касается тех, кто пересобирает компилятор из исходников.
| было | стало |
|---|---|
scripts/raskrutka.sh |
scripts/bootstrap-reprint.sh |
scripts/otpechatok-semeni |
scripts/seed-fingerprint |
Миграция: замените имена в своих скриптах и в настройке CI.
The следует syllogism and correct code points outside the BMP
What appeared
следует(follows) — derive a statement from premises named above it. The conclusion is a separate block that cites a proved statement withпо свойству.
утверждение «все люди смертны»
для всех кто: «Человек»
утверждаем («Смертен» от кто)
следует «Сократ смертен»
дано сократ: «Человек»
утверждаем («Смертен» от сократ)
по свойству «все люди смертны»
$ flang check socrates.flang --proof
утверждение «Сократ смертен» — доказано: терм принят ядром, 1 шаг, основания: утверждение «все люди смертны» — утверждение обо ВСЕХ входах
Without the по свойству line the conclusion is not proved:
FLANG_PROOF_STEP: теорема «Сократ смертен»: ни одного шага exit 1
What changed
код символа(character code) in the shell: characters outside the BMP.flang replreturned 240 — the first UTF-8 octet — for any such character, whileflang runanswered correctly. Both now agree.
$ flang repl
» код символа "𝒜"
119964
» код символа "👍"
128077
Issue #103.
- The binary itself has no
--step-limitkey. An earlier edition of these notes said the key works with any command. In 0.7.22 onlyflang checkparses it.
$ flang --step-limit 100000000 emit file.flang --target c
flang: неизвестная команда «--step-limit» exit 2
What broke
- The seed print scripts are renamed. This affects those who rebuild the compiler from source.
| was | now |
|---|---|
scripts/raskrutka.sh |
scripts/bootstrap-reprint.sh |
scripts/otpechatok-semeni |
scripts/seed-fingerprint |
Migration: replace the names in your scripts and in your CI setup.
Страница выпусков: по-русски · in English.
Архив flang-0.7.22-c.tar.gz — исходники C99 и Makefile: make && sudo make install, Node не нужен. Или brew install digitable-lol/tap/flang.