Skip to content

Releases: MrModelOS/Glyph

v2.1.0

Choose a tag to compare

@github-actions github-actions released this 23 Sep 17:46

Glyph v2.1.0

Glyph is a systems language that transpiles to readable GNU C. This release
also integrates NeuralScript (.ns) into the same glyphc binary.

Highlights

  • glyphc nns with CPU C++, CPU SIMD-reference, CUDA, runtime C-ABI, MLIR dump,
    shape checking, and -o/--output.
  • NeuralScript port is byte-compatible with the former nsc CPU/CUDA output
    for the shipped examples.
  • glyphc new/init, real glyphc lsp subcommand, reproducible generic C
    emission, and hardened error/temp-directory handling.
  • Strict CI: formatting, Clippy, docs, 100 unit tests, 25 integration tests,
    27 example checks, and complete NNS pipeline smoke tests.
  • English documentation, mdBook Pages site, VS Code extension source, Docker,
    release installer, issue/PR templates, and community policies.

Install

curl -fsSL https://raw.githubusercontent.com/MrModelOS/Glyph/main/install.sh | bash
# or
cargo install --git https://github.com/MrModelOS/Glyph --locked

See the documentation site and
Releases for platform archives.

v2.0.0

Choose a tag to compare

@github-actions github-actions released this 10 Sep 16:50
chore: bump to v2.0.0, refresh benchmark numbers, add changelog

glyphc v1.3.0

Choose a tag to compare

@MrModelOS MrModelOS released this 07 Sep 14:56

Glyph v1.3.0

New: Map runtime

  • #{ "key": value, ... } literal syntax
  • Index read/write: m["k"] and m["k"] = v (missing key aborts at runtime)
  • Methods: put(key, value), get(key) -> Option<V>, len(), free()
  • FNV-1a hash + chained buckets, GlyphMap runtime C type
  • Iteration over Map is typechecked and rejected (no runtime backing yet)

Lists: reference counting

  • free() is now safe with aliases (releases one reference)
  • append()/expression aliasing does copy-on-write
  • Locals and parameters auto-release at function end

Diagnostics

  • Type errors now report the source line: in function 'main': line 3: ...

Tooling & docs

  • Live example examples/fifteen.glyph
  • Prebuilt binaries in this release (Linux + macOS) built by a new release workflow
  • English README (Russian version lives in README.ru.md)

Status

  • 23 example programs pass, 51 unit tests, zero warnings

Glyph v1.2.0

Choose a tag to compare

@MrModelOS MrModelOS released this 07 Sep 13:31

Что нового:

  • Ноль warnings в сборке (удалён мёртвый код: HexLiteral, неиспользуемые error-варианты, DuplicateModule/GraphNode и др.)
  • Map честно: итерация по Map теперь отвергается в typechecker сразу (рантайма у Map нет)
  • for x in arr по массивам [T; N] в codegen
  • 2 новых юнит-теста (срезы, запрет Map-итерации): 48 тестов
  • Версия синхронизирована: Cargo.toml / Cargo.lock / glyphc --version = 1.2.0
  • CI: GitHub Actions (build + test + все 20 примеров + release build)
  • Бейджи CI/версии в README

Предыдущий коммит (v1.2 content): срезы списков xs[a..b], == для POD-списков, List.free(), контекст функции в ошибках типов.

Glyph v1.0.0 — стабильный релиз

Choose a tag to compare

@MrModelOS MrModelOS released this 06 Sep 10:27

Язык Glyph v1.0.0 объявлен стабильным и готовым к использованию. Все проверки проходят на 100%:

  • 19 unit-тестов компилятора (cargo test)
  • 15 примеров набора examples/run_all.sh
  • тестовый фреймворк glyphc test (@test, ассерты, изоляция через setjmp/longjmp)

Инженерные доработки кодгена:

  • циклы for i in start..end и ..=end (int64_t, включительно/исключительно)
  • константы @const → static const (разрешение ссылок между константами)
  • конкатенация строк через glyph_concat_strings
  • дефолт вывода compile — output.c

Документация: docs/language.md, docs/testing.md, examples/README.md, обновлённый README.

Как собрать:

cd Glyph/glyphc && cargo build --release

Известные ограничения: @impl-методы, payload Result/Option, конкурентность (в планах v1.1).

Glyph v0.1.0

Choose a tag to compare

@MrModelOS MrModelOS released this 06 Sep 08:04

Первый стабильный релиз компилятора Glyph.

Core

  • Лексер, парсер, AST, typechecker, кодогенерация C (GNU Statement Expressions, -std=gnu11)
  • @-синтаксис: @fn, @struct, @enum, @impl, @const, @use
  • Контракты #guard
  • match с паттернами и данными вариантов (tagged union на C)
  • enum-ы с полезной нагрузкой: Shape::Circle(5.0)
  • while / for / loop, range, массивы, приведение типов (as)

Модульная система

  • @use, квалифицированные имена math::add
  • Мультифайловая компиляция, префиксация имён модулей
  • Детекция циклических импортов (Tarjan), топологическая сортировка (Kahn)

Стандартная библиотека

  • std.math, std.io, std.string, std.fs, std.mem, std.conv, std.assert

CLI

  • compile, check, tokens, ast, run, build (glyph.toml)

Тесты: 17 unit-тестов, примеры в examples/.