Skip to content

Commit d9676d2

Browse files
author
Marat Zimnurov
committed
Версия 0.4.7: монада, обработка отказа и полиморфизм доезжают до пакета
Версию 0.4.6 гейт публикации остановил, и правильно: печать в Go давала два объявления с одним именем. Дефект починен в тот же день, но нового выпуска не было, и в реестре с утра лежит 0.4.5 — то есть всё сделанное за день до людей не дошло. Что в этой версии, сверх человеческого CLI из 0.4.6: форма «в монаде» — разворачивается внутри разбора, поэтому печать во все восемь целей, завершаемость и оба слоя самоприменения получают её даром; правок в self/parser.flang и self/types.flang ноль; «к числу или беда» — отказ встроенной формы стал значением: «Разобрано» со значением либо «Не разобрано» с кодом и текстом. Тексты совпадают у интерпретатора и у всех восьми целей буквально, а не по смыслу; параметрический полиморфизм в самом репозитории — библиотека схлопнута: «Возможно» от «А», «Результат» от «Значение» и «Беда»; сторож меры — «тотальная» перестала обещать больше, чем доказано: при |н| ≥ 2⁵³ спуск в IEEE не идёт, и программа честно отказывает, а не виснет; печать в Go больше не сталкивает имена варианта и функции. Проверено на машине со всеми восемью тулчейнами: 1942 теста, 1942 прошли, пропусков НОЛЬ. Неподвижная точка сошлась — семь файлов совпали побайтово. Архив собран с нуля флагами формулы, «flang --version» отвечает 0.4.7, repl считает «Куб» от 9 → 729.
1 parent 979d82c commit d9676d2

4 files changed

Lines changed: 6 additions & 6 deletions

File tree

flang/src/emit/c/flang_repl.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ static char *repl_read_all(FILE *stream, size_t *length) {
161161
* СОБРАННОГО бинарника. Иначе `flang --version` однажды назвал бы версию,
162162
* которой нет ни в одном релизе.
163163
*/
164-
#define FLANG_VERSION "0.4.6"
164+
#define FLANG_VERSION "0.4.7"
165165

166166
static const char REPL_GREETING[] =
167167
"Оболочка flang. «.помощь» — команды, «.выход» — конец.\n"

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@digitable-lol/fts",
3-
"version": "0.4.6",
3+
"version": "0.4.7",
44
"description": "flang: a checkable language with total and ordinary functions, emitted to C, Go, Rust, Python, Java, C#, Elixir and JavaScript, over the FTS executable-specification surface.",
55
"type": "module",
66
"license": "BSD-2-Clause",

packaging/flang.1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
.\"
1010
.\" SPDX-FileCopyrightText: 2026 Digitable (Marat Zimnurov)
1111
.\" SPDX-License-Identifier: BSD-2-Clause
12-
.TH FLANG 1 "2026-08-07" "flang 0.4.6" "Команды пользователя"
12+
.TH FLANG 1 "2026-08-07" "flang 0.4.7" "Команды пользователя"
1313
.SH ИМЯ
1414
flang \- проверить программу на flang: типы и доказанное завершение
1515
.SH СИНОПСИС

packaging/homebrew/flang.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@
2323
class Flang < Formula
2424
desc "Проверяемый язык: исполняемая спецификация, печатается в восемь языков"
2525
homepage "https://github.com/digitable-lol/flang"
26-
url "https://github.com/digitable-lol/flang/releases/download/v0.4.6/flang-0.4.6-c.tar.gz"
26+
url "https://github.com/digitable-lol/flang/releases/download/v0.4.7/flang-0.4.7-c.tar.gz"
2727
# Хеш архива, собранного `node scripts/build-release-c.mjs` и упакованного
2828
# `tar -czf`. Пересчитывается при каждом релизе: brew сверяет его сам, и
2929
# расхождение остановит установку до распаковки.
30-
sha256 "2fca882275b0e012eb4632335b90b02c90ff0922d9e4b9ba3185c910461fcb28"
30+
sha256 "3287ecb7ea1d789c1e6c4a5ca2e958656410825ec3e79ee475854681d96e6645"
3131
license "BSD-2-Clause"
32-
version "0.4.6"
32+
version "0.4.7"
3333

3434
# Ни Node, ни каких-либо ещё зависимостей: в архиве C99 и Makefile.
3535
depends_on "make" => :build

0 commit comments

Comments
 (0)