Skip to content

Releases

Evolution of the GrassGreen v-4-1-0 interface

Choose a tag to compare

@m1oky m1oky released this 05 Nov 10:58
2d6ae8a

Evolution of the GrassGreen v-4-1-0 interface

Что нового:
Графический движок VD+ (Video Graphics Plus): субпиксельный софтверный рендерер без зависимостей от устаревших Win32 элементов и браузерных обёрток.
Ультра-оптимизация: полное приложение со всеми эффектами и 60 FPS частицами потребляет всего 4.3 МБ RAM и <2% CPU!
Живой генератор частиц (particles): парящий космический изумрудный фон с синусоидальной анимацией прозрачности.
Динамический виджет системных часов: real-time HUD в шапке окна.
Стили шапок окон (header): macOS dots, modern Windows 11, frameless glass.
Z-Index и слои: многозадачный оконный менеджер готов к созданию графического окружения операционной системы (GrassOS).
Официальное расширение под VS Code: обновлено до v4.1.0 с полной поддержкой синтаксиса VD+.
Новая библиотека !audio!

GrassGreen-v-3-6-0: two new libraries, !tg! and !2DGraphics!

Choose a tag to compare

@m1oky m1oky released this 29 Oct 07:29
79cc99e
Add files via upload

Evolution of GrassGreen v-4-0-0

Choose a tag to compare

@m1oky m1oky released this 27 Oct 09:32
4a49f85

GrassGreen 4.0 (G&G) — крупное системное обновление языка программирования, включающее переработанную архитектуру виртуальной машины, нативный JIT-компилятор под архитектуру x86_64, встроенную многопоточность, аппаратный доступ к памяти (MMIO), поддержку C-ABI структур и расширение для Visual Studio Code.

Главные изменения

1. Новая архитектура ядра и производительность

  • Прямая диспетчеризация инструкций: отказ от цикла switch в пользу табличной диспетчеризации (computed goto).
  • NaN-Boxing: все базовые значения упакованы в 64-битный формат IEEE 754 (ровно 8 байт на значение), что снижает нагрузку на L1-кэш процессора в 2 раза.
  • Arena Allocator: блочный аллокатор памяти со сдвигом указателя (bump-pointer) для быстрого выделения и освобождения памяти в O(1) без фрагментации.
  • Нативный JIT-компилятор x86_64: компиляция горячих циклов байт-кода в машинные инструкции процессора с использованием регистров SSE2.
  • Режим Freestanding: возможность автономной работы ядра без стандартной библиотеки C/C++ (libc) для загрузчиков ОС и bare-metal окружения.

2. Многопоточность и синхронизация (!thread!)

  • Запуск функций в системных потоках операционной системы: take t = thread(worker, arg);.
  • Синхронизация и ожидание завершения потока: take res = thread_join(t);.
  • Фоновые асинхронные задачи: async task();.
  • Системные мьютексы: mutex_create(), mutex_lock(), mutex_unlock(), mutex_destroy().

3. Аппаратный доступ к памяти и портам (!mmio!)

  • Прямое чтение и запись физических и виртуальных адресов: mmio_read8/16/32/64 и mmio_write8/16/32/64.
  • Инструкции ввода-вывода x86: inb, outb, inw, outw, inl, outl.
  • Модификатор volatile для запрета кэширования значений в регистрах.
  • Барьеры памяти: memory_barrier() (mfence), read_barrier() (lfence), write_barrier() (sfence).

4. Синтаксис и система типов

  • Поддержка составных структур данных struct со строгим выравниванием полей по стандарту C-ABI (1, 4, 8 байт).
  • Динамические массивы array с методами push, pop, len.
  • Потоковый ввод-вывод: вывод через gout << ... << endl; и ввод через gin >> var; с прямыми вызовами Win32.
  • Модульная система подключения файлов: import "file.grass"; с автоматическим контролем повторных включений (семантика #pragma once).

5. Инструментарий и установка

  • Автономный графический инсталлятор (setup.exe): Win32 GUI установщик (1 МБ), который разворачивает компилятор grg, прописывает системный PATH и регистрирует ассоциации файлов .grass и .gdb с официальными иконками.
  • Расширение для Visual Studio Code (grassgreen-4.0.0.vsix): TextMate подсветка, автодополнение IntelliSense по всем 18 библиотекам, всплывающая документация (Hover), сборка по Ctrl + Shift + B и запуск по F5.

Установка

  1. Скачайте setup.exe из блока прикрепленных файлов ниже.
  2. Запустите установщик и нажмите "Установить".
  3. После установки откройте любой терминал и проверьте доступность компилятора:
    grg --help

Установка плагина для VS Code

  1. Скачайте файл grassgreen-4.0.0.vsix.
  2. В терминале выполните команду:
    code --install-extension grassgreen-4.0.0.vsix
    Либо откройте вкладку Extensions в VS Code (Ctrl + Shift + X), нажмите меню ... в правом верхнем углу и выберите Install from VSIX....

GrassGreen-v-3-5-0/Two libraries have been added

Choose a tag to compare

@m1oky m1oky released this 27 Oct 17:32
Release v3.5.0: added !proc!, !fsys! and updated core

GrassGreen Release v-3-4-0 — New System & JSON Modules

Choose a tag to compare

@m1oky m1oky released this 27 Oct 09:30
4a49f85
Update README.md

GrassGreen-v-3-2-0

Choose a tag to compare

@m1oky m1oky released this 26 Oct 17:46
f6de1ae
Change logo image source in README

Updated logo image source path in README.md

GrassGreen-v-3-1-0

Choose a tag to compare

@m1oky m1oky released this 26 Oct 09:20
3a6508a
Add files via upload

GrassGreen-v-3-0-1

Choose a tag to compare

@m1oky m1oky released this 25 Oct 16:12
3a6508a
Add files via upload

GrassGreen-v-3-0-0

Choose a tag to compare

@m1oky m1oky released this 25 Oct 15:04
eb9518d
Fix logo image source path in README.md

Updated image source path for logo in README.