1
0
Fork
You've already forked korsakov
0
[ЗЕРКАЛО] Кириллический мультипарадигменный язык программирования общего назначения https://корсаков.рус
  • Assembly 77.4%
  • Shell 6.2%
  • C++ 5.9%
  • HTML 4.9%
  • PHP 3.8%
  • Other 1.8%
2025年11月13日 13:58:48 +03:00
.gitverse/workflows v1.23.2.4: Изменение ветвей для зеркалирования 2025年11月13日 13:58:01 +03:00
.пакеты v1.23.2.3: Обновление файла сборки для ALT Linux 2025年11月13日 13:56:25 +03:00
core v1.23.1: Оператор ссылочного присваивания 2025年11月13日 13:49:02 +03:00
core_tests v1.23.2.5: Временное отключение тестов для Словарей 2025年11月13日 13:58:48 +03:00
executor v1.23.2: Возвращение ; в качестве разделителя 2025年11月13日 13:49:13 +03:00
hooks v1.23.0: Портирование на Windows 2025年09月19日 12:20:30 +03:00
lib v1.23.2.1: Использование ; в строковом представлении Списков 2025年11月13日 13:49:17 +03:00
modules v1.23.0: Портирование на Windows 2025年09月19日 12:20:30 +03:00
Подсветка синтаксиса v1.23.2.2: Удаление устарешего синтаксиса 2025年11月13日 13:53:50 +03:00
.gitignore v1.23.0.2: Небольшие правки 2025年09月19日 12:21:08 +03:00
build.bat v1.23.0.2: Небольшие правки 2025年09月19日 12:21:08 +03:00
config.inc v1.23.0: Портирование на Windows 2025年09月19日 12:20:30 +03:00
GPLv3.md v1.0.0-alpha 2025年02月03日 16:15:33 +03:00
korsakov.asm v1.23.1: Оператор ссылочного присваивания 2025年11月13日 13:49:02 +03:00
LICENSE.md v1.0.0-alpha 2025年02月03日 16:15:33 +03:00
Makefile v1.23.0: Портирование на Windows 2025年09月19日 12:20:30 +03:00
README.md v1.22.1.8: Добавление ссылок в README 2025年08月28日 00:25:32 +03:00
ROADMAP.md v1.22.1.6: Реструктуризация 2025年08月27日 20:52:21 +03:00
SPONSORS.md v1.22.1.6: Реструктуризация 2025年08月27日 20:52:21 +03:00
tests.asm v1.23.0: Портирование на Windows 2025年09月19日 12:20:30 +03:00

Язык программирования Корсáков

Описание

Корсáков – это проект по разработке нового, независимого языка программирования, поддерживающего кириллическую знаковую систему. Цель проекта – создание универсального инструмента для работы на разных архитектурах (x86-64, ARM, E2K и другие) и операционных системах (Microsoft Windows, macOS, дистрибутивы на базе ядра GNU/Linux).

Дорожная карта

Внимание!

Сейчас проект находится на стадии бета-тестирования.

Большая часть функционала не реализована, а также могут встречаться существенные баги. При нахождении таковых, пожалуйста, сообщайте в раздел «Задачи» или в чате Дневника разработки.

Подробности о развитии проекта в Дневнике разработки, а также в файле Дорожной карты

Полезные ресурсы:

Сборка и использование

На текущий момент Корсáков доступен только для Linux-дистрибутивов с архитектурой x86_64

Установка через пакетный менеджер

Arch Linux (AUR)

Ручная сборка
git clone https://aur.archlinux.org/packages/korsakov.git
cd korsakov
makepkg -si
Помощники
yay -S korsakov # С ключами в Pacman-стиле
pamac install korsakov # Pamac

Установка из репозитория

Подготовка

git clone https://gitverse.ru/rus.yaz/korsakov --depth 1
cd korsakov

Сборка

Make
make
# или
make build
Вручную
fasm -m 131072 korsakov.asm korsakov.o
ld korsakov.o -o korsakov
ld korsakov.o -o корсаков
Отладочная сборка

Режим отладки позволяет увидеть промежуточные этапы работы компилятора/интерпретатора:

  • Токены
  • Работу парсера и итоговое абстрактное синтаксическое дерево
  • Работу компилятора (и итоговый код) или интерпретатора, в зависимости от режима исполнения
make debug
# или
fasm -m 131072 -d DEBUG= korsakov.asm korsakov.o
ld korsakov.o -o korsakov
ld korsakov.o -o корсаков

Установка

make install
# или
sudo install -m 755 korsakov /usr/bin/korsakov
sudo install -m 755 корсаков /usr/bin/корсаков

Использование

Использование:
 корсаков [флаги] файл.[корс|kors]
Флаги:
 --справка|--помощь|-п|--help|-h
 Показать эту справку
 --компилировать|--компиляция|--комп||--compile|-c
 Компиляция в исполняемый файл с таким же именем, что и переданный
 --выходной-файл|--выход||--output|-o [имя_файла]
 Указание имени выходного файла
 --без-стандартной|--no-std
 Компиляция без стандартной библиотеки

По умолчанию код выполняется в режиме интерпретации.

В будущем настройку по умолчанию можно будет изменить с помощью конфигурационного файла.

Подсветка синтаксиса

Мы предоставляем поддержку подсветки синтаксиса для редакторов Vim и Neovim.

Для Vim

cd Подсветка\ синтаксиса/vim
mkdir -p ~/.vim/syntax
cp korsakov.vim ~/.vim/syntax/
echo "au BufNewFile,BufRead *.kors :set filetype=korsakov
au BufNewFile,BufRead *.корс :set filetype=korsakov" >> ~/.vimrc

Для Neovim

cd Подсветка\ синтаксиса/nvim
cp -r syntax ftdetect ~/.config/nvim

Спонсорство

Проект был поддержан Фондом содействия инновациям, подробнее на сайте проекта.

Если вы хотите поддержать разработчика, вы также можете оставить пожертвование. Если вы укажите имя или ник, то вы будете закреплены в файле Спонсоров.

Лицензия

Данный проект имеет двойную лицензию, подробнее в файле Лицензий

Контакты

Если у вас возникли вопросы или предложения, пожалуйста, свяжитесь с нами:

  • Официальный сайт проекта: корсаков.рус
  • Основной репозиторий проекта: GitVerse
  • Электронная почта организации: info@корсаков.рус

Дневник разработки (Телеграм)

Другие ссылки

Спонсорство

Если хотите оставить своё имя или ник в истории развития языка, не забудьте указать их в сообщении