summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README_RU.md48
1 files changed, 24 insertions, 24 deletions
diff --git a/README_RU.md b/README_RU.md
index 29dbfc3..863b9b8 100644
--- a/README_RU.md
+++ b/README_RU.md
@@ -9,7 +9,7 @@
# Zen C
-**Современная эргономика. Никаких оверхедов. Чистый Си.**
+**Современная эргономика. Никаких накладных расходов. Чистый Си.**
[![Build Status](https://img.shields.io/badge/build-passing-brightgreen)]()
[![License](https://img.shields.io/badge/license-MIT-blue)]()
@@ -24,11 +24,11 @@
## Обзор
-**Zen C** — это современный язык системного программирования, который компилируется в человекочитаемом `GNU C`/`C11`. Он предоставляет богатый набор функций, включая вывод типов, сопоставление с паттернами, генерику, трейты, async/await и ручное управление памятью с возможностями RAII, при этом поддерживая 100% совместимость с ABI Си.
+**Zen C** — это современный язык системного программирования, который компилируется в человекочитаемом `GNU C`/`C11`. Он предоставляет богатый набор возможностей, включая вывод типов, сопоставление с паттернами, генерику, трейты, async/await и ручное управление памятью с возможностями RAII, при этом поддерживая 100% совместимость с ABI Си.
## Сообщество
-Присоединяйтесь к обсуждению, делитесь демо, задавайте вопросы или сообщайте об ошибках на официальном сервере Discord Zen C!
+Приглашаем вас присоединиться к нам на официальном Discord-сервере Zen C! Здесь можно обсуждать проект, делиться примерами, задавать вопросы и сообщать об ошибках.
- Discord: [Присоединиться](https://discord.com/invite/q6wEsCmkJP)
@@ -122,10 +122,10 @@ sudo make install
```
### Портативная сборка (APE)
-Zen C может быть скомпилирован как **Actually Portable Executable (APE)** с использованием [Cosmopolitan Libc](https://github.com/jart/cosmopolitan). Это создаёт один двоичный файл (`.com`), который работает нативно на Linux, macOS, Windows, FreeBSD, OpenBSD и NetBSD на архитектурах x86_64 и aarch64.
+Zen C можно скомпилировать как **Actually Portable Executable (APE)** с помощью [Cosmopolitan Libc](https://github.com/jart/cosmopolitan). Это создаёт один исполняемый файл (`.com`), работающий нативно на Linux, macOS, Windows, FreeBSD, OpenBSD и NetBSD на архитектурах x86_64 и aarch64.
-**Перед этим:**
-- Набор инструментов `cosmocc` (должен быть в вашем PATH)
+**Требования:**
+- Набор инструментов `cosmocc` (должен быть в PATH)
**Сборка и установка:**
```bash
@@ -133,30 +133,30 @@ make ape
sudo env "PATH=$PATH" make install-ape
```
-**Артефакты:**
-- `out/bin/zc.com`: Портативный компилятор Zen-C. Включает стандартную библиотеку встроенную в исполняемый файл.
-- `out/bin/zc-boot.com`: Самостоятельный инсталлятор начальной загрузки для установки новых проектов Zen-C.
+**Созданные файлы:**
+- `out/bin/zc.com`: Портативный компилятор Zen-C с встроенной стандартной библиотекой.
+- `out/bin/zc-boot.com`: Установщик для создания новых проектов Zen-C.
**Использование:**
```bash
-# Запустите на любой поддерживаемой ОС
+# Запустить на любой поддерживаемой ОС
./out/bin/zc.com build hello.zc -o hello
```
### Использование
```bash
-# Компиляция и запуск
+# Компилировать и запустить
zc run hello.zc
-# Исполняемый файл
+# Создать исполняемый файл
zc build hello.zc -o hello
-# Shell оболочка
+# Интерактивная оболочка
zc repl
```
### Переменные окружения
-Вы можете установить `ZC_ROOT` для указания расположения Стандартной библиотеки (стандартные импорты по типу `import "std/vec.zc"`). Это позволяет вам запускать `zc` из любого каталога.
+Установите `ZC_ROOT` для указания пути к стандартной библиотеке (для импортов типа `import "std/vec.zc"`). Это позволяет запускать `zc` из любого каталога.
```bash
export ZC_ROOT=/path/to/Zen-C
```
@@ -176,7 +176,7 @@ let buffer: char[MAX_SIZE]; // Допустимый размер массива
#### Переменные (`let`)
Расположения в памяти. Могут быть изменяемыми или только для чтения (`const`).
```zc
-let x = 10; // Изменяемая
+let x = 10; // Переменная
x = 20; // ОК
let y: const int = 10; // Только для чтения (квалификатор типа)
@@ -776,7 +776,7 @@ impl Drop for Resource {
}
```
-> **Примечание:** Если переменная перемещена, `drop` **не** вызывается для исходной переменной. Это подчиняется [Семантике ресурсов](#семантика-ресурсов-move-по-умолчанию).
+> **Примечание**: Если переменная перемещена, `drop` не вызывается для оригинала. Подробнее в [семантике ресурсов](#семантика-ресурсов-move-по-умолчанию).
**Copy**
@@ -1090,7 +1090,7 @@ fn main() { ... }
Zen C предлагает два способа взаимодействия с кодом Си: **Доверительные импорты** (Удобно) и **Явный FFI** (Безопасно/Точно).
-#### Метод 1: Доверительные импорты (Удобно)
+#### Способ 1: Импорт заголовков
Вы можете импортировать заголовок Си напрямую, используя ключевое слово `import` с расширением `.h`. Это рассматривает заголовок как модуль и предполагает, что все доступные символы существуют.
@@ -1104,8 +1104,8 @@ fn main() {
}
```
-> **Преимущества**: Нулевые накладные расходы. Получите доступ ко всему в заголовке сразу.
-> **Недостатки**: Никакой безопасности типов от Zen C (ошибки перехватываются позже компилятором Си).
+> **Плюсы**: Просто и быстро.
+> **Минусы**: Нет проверки типов со стороны Zen C (ошибки перехватываются пизже компилятором Си).
#### Метод 2: Явный FFI (Безопасно)
@@ -1122,10 +1122,10 @@ fn main() {
}
```
-> **Преимущества**: Zen C гарантирует совпадение типов.
-> **Недостатки**: Требует ручного объявления функций.
+> **Плюсы**: Zen C гарантирует совпадение типов.
+> **Минусы**: Нужно писать сигнатуры.
-#### `import` vs `include`
+#### Разница между `import` и `include`
- **`import "file.h"`**: Регистрирует заголовок как именованный модуль. Включает неявный доступ к символам (например, `file::function()`).
- **`include <file.h>`**: Просто выводит `#include <file.h>` в сгенерированный код C. Не вводит никаких символов в компилятор Zen C; вы должны использовать `extern fn` для их доступа.
@@ -1174,7 +1174,7 @@ Zen C предоставляет встроенный языковой серв
* **Нахождения ссылок**
* **Информация при наведении**
* **Автозаполнения:** (имена функций/структур, dot-дополнение для методов/полей)
-* **Символы документа** (оутлайн)
+* **Символы документа** (outline)
* **Справка для сигнатур**
* **Диагностика** (ошибки синтаксиса/семантики)
@@ -1389,7 +1389,7 @@ let tid = local_id();
### Поддержка C23
-Zen C поддерживает современные функции C23 при использовании совместимого компилятора бэкенда (GCC 14+, Clang 14+, TCC (частичная)).
+Zen C поддерживает современные функции стандарта C23 при использовании совместимого компилятора бэкенда (GCC 14+, Clang 14+, TCC (частичная)).
- **`auto`**: Zen C автоматически отображает вывод типов на стандартный C23 `auto`, если `__STDC_VERSION__ >= 202300L`.
- **`_BitInt(N)`**: Используйте типы `iN` и `uN` (например, `i256`, `u12`, `i24`) для доступа к целым числам произвольной ширины C23.