Компилятор языка RuC. Авторство принадлежит Андрею Николаевичу Терехову, заведующему кафедрой "Системного программирования" СПбГУ.
https://github.com/andrey-terekhov/RuC
Исходный код С на русском языке!
Этот репозиторий содержит компилятор языка RuC. Авторство принадлежит Андрею Николаевичу Терехову, заведующему кафедрой "Системного программирования" СПбГУ.
Сборка
При первоначальном использовании необходимо установить некоторые утилиты:
$ sudo apt-get -y install git gcc g++ cmake clang-tidy clang-format-9
Для конфигурирования и сборки репозитория воспользуйтесь:
$ cmake -S . -B build
$ cmake --build build --config Release
P.s. Если вы собирали Debug версию, не забудьте вернуть -DCMAKE_BUILD_TYPE=Release
2.1.2. Стадии трансляции
Приоритет синтаксических правил перевода определяется следующими стадиями трансляции:
Исходный файл разбивается на токены препроцессора и последовательности пробельных символов (включая комментарии). Исходный файл не должен заканчиваться токеном частичной препроцессора или частичным комментарием. Каждый комментарий заменяется одним пробелом. Символы новой строки сохраняются.
Выполняются директивы препроцессора, расширяются вызовы макросов. Если последовательность символов, соответствующая синтаксису универсального имени символа, создается конкатенацией токенов, поведение не определено. Директива препроцессора #include вызывает рекурсивную обработку именованного заголовка или исходного файла с этапа 1 по этап 2. Затем все директивы повторной обработки удаляются.
Каждый элемент исходного набора символов и управляющая последовательность в символьных литералах и строковых литералах преобразуются в соответствующий член набора символов выполнения.
Строковые литералы, следующие друг за другом, объединяются.
Пробелы, разделяющие токены, больше не имеют значения. Каждый токен препроцессора преобразуется в токен. Полученные токены синтаксически и семантически анализируются и переводятся как единица перевода.
Компилятор языка RuC
Moderator: Shaos
-
- Devil
- Posts: 822
- Joined: 04 Jan 2016 09:15
- Location: Russia, S.- Peterburg
Компилятор языка RuC
You do not have the required permissions to view the files attached to this post.
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Язык Си для троичного компьютера
Это что-то над clang-ом чтоли?
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Devil
- Posts: 822
- Joined: 04 Jan 2016 09:15
- Location: Russia, S.- Peterburg
Re: Язык Си для троичного компьютера
Полноценный компилятор С из исходного кода.Shaos wrote:Это что-то над clang-ом чтоли?
Есть тесты конструкций реализации Си. Хорошая документация по описанию компилятора.
Поддержка ключеных слов языка Си на русском языке, английском языке.
Создаёт бинарные файлы для микроконтроллеров. Есть примеры и описание как это сделать. Можно добавить поддержку других процессоров.
На этом проекте с исходными кодами компилятора Си можно сделать поддержку троичных вычислителей.
C/RUC_Soft$ tree -L 2
.
├── roboGTK
│ ├── build
│ ├── CMakeLists.txt
│ ├── LICENSE
│ ├── README.md
│ ├── res
│ └── src
├── RuC
│ ├── build
│ ├── CMakeLists.txt
│ ├── docs
│ ├── libs
│ ├── LICENSE
│ ├── path
│ ├── README.md
│ ├── scripts
│ ├── src
│ └── tests
├── RuC-UI
│ ├── Build
│ ├── CMakeLists.txt
│ ├── keywords.txt
│ ├── LICENSE
│ ├── Makefile
│ ├── README.md
│ ├── RuC
│ ├── RuC.sublime-project
│ ├── RuCVM
│ ├── tests
│ ├── test.sh
│ ├── thirdparty
│ ├── UI
│ └── util
└── RuC-VM
├── CMakeLists.txt
├── libs
├── LICENSE
├── README.md
├── scripts
└── src
24 directories, 16 files
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
-
- Admin
- Posts: 24080
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Компилятор языка RuC
А зачем ему clang-tidy и clang-format-9 ?
P.S. В 2022 году Сергей Вакуленко поделился h-файлом, с помощью которого можно писать Си программы на старославянском языке
https://vak.dreamwidth.org/879986.html
P.S. В 2022 году Сергей Вакуленко поделился h-файлом, с помощью которого можно писать Си программы на старославянском языке

https://vak.dreamwidth.org/879986.html
Code: Select all
#include <stdio.h>
#include "ancientslavic.h"
молитва отченаш
цело х, у, xmax ъ
молви ( "Введите предел по икс (5-15): " ) ъ
поведай ( "%d", &xmax ) ъ
х стане дулю ъ
покуда х помене xmax пущай
у стане х да 2 ъ
молви ( "y (%d) = %d\n", х, у ) ъ
х стане х да 1 ъ
аминь
молви ( "Готово\n" ) ъ
воздати дулю ъ
аминь
Я тут за главного - если что шлите мыло на me собака shaos точка net