Update doc and readme
This commit is contained in:
+5
-6
@@ -141,27 +141,26 @@ print(get(chest, 0)); // Выведет 55
|
|||||||
|
|
||||||
## 7. Модули и Импорт
|
## 7. Модули и Импорт
|
||||||
|
|
||||||
FoxLang v4.0 поддерживает умный импорт.
|
FoxLang v4.0 поддерживает импорт внешних модулей.
|
||||||
Используйте `include("путь/к/файлу.fox");`.
|
Используйте `include("путь/к/файлу.fox");`.
|
||||||
|
|
||||||
**Особенности:**
|
**Особенности:**
|
||||||
|
|
||||||
* Поддерживаются **относительные пути** (например, `../lib/utils.fox`).
|
* **Важная информация:** При подключении внешних модулей в связи с оссобенностями c++, если в скрипте есть вызов функции в корне скрипта то она тоже будет выполнена при импорте. Это может привести к неожиданным результатам и ошибкам.
|
||||||
* **Режим Импорта:** При подключении файла интерпретатор выполняет **только** объявления переменных и функций. Команды вызова функций или `print` внутри подключаемого файла **игнорируются**. Это позволяет безопасно подключать библиотеки, содержащие тестовый код.
|
|
||||||
|
|
||||||
**Пример:**
|
**Пример:**
|
||||||
`lib.fox`:
|
`lib.fox`:
|
||||||
|
|
||||||
```cpp
|
```cpp
|
||||||
void hello() { print("Hi!"); }
|
void hello() { print("Hi!"); }
|
||||||
hello(); // ЭТО НЕ ВЫПОЛНИТСЯ ПРИ ИМПОРТЕ
|
hello(); // Это выполнтся при импорте
|
||||||
```
|
```
|
||||||
|
|
||||||
`main.fox`:
|
`main.fox`:
|
||||||
|
|
||||||
```cpp
|
```cpp
|
||||||
include("lib.fox");
|
include("lib.fox");
|
||||||
hello(); // А вот теперь мы вызываем функцию сами
|
hello(); // Мы так же можем вызывать функции из модулей.
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -174,4 +173,4 @@ hello(); // А вот теперь мы вызываем функцию сами
|
|||||||
| `input()` | Останавливает программу и ждет ввода строки от пользователя. |
|
| `input()` | Останавливает программу и ждет ввода строки от пользователя. |
|
||||||
| `round(expr)` | Округляет дробное число до ближайшего целого. |
|
| `round(expr)` | Округляет дробное число до ближайшего целого. |
|
||||||
| `random()` | Генерирует случайное число от 0 до 99. |
|
| `random()` | Генерирует случайное число от 0 до 99. |
|
||||||
| `fox()` | Пасхалка: выводит ASCII-арт лисы. |
|
| `fox()` | Пасхалка: выводит ASCII-арт лисы. |
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
  
|
  
|
||||||
|
|
||||||
**FoxLang** — это интерпретируемый язык программирования общего назначения, разработанный с нуля на C++.
|
**FoxLang** — это интерпретируемый язык программирования общего назначения, разработанный с нуля на C++.
|
||||||
Он сочетает строгий синтаксис (в стиле C++/Java) с динамической гибкостью скриптовых языков. Проект демонстрирует реализацию собственного лексера, рекурсивного парсера, AST-дерева и модульной архитектуры.
|
Он сочетает строгий синтаксис (в стиле C++) с динамической гибкостью скриптовых языков. Проект демонстрирует реализацию собственного лексера, рекурсивного парсера, AST-дерева и модульной архитектуры.
|
||||||
|
|
||||||
## ✨ Ключевые возможности
|
## ✨ Ключевые возможности
|
||||||
|
|
||||||
@@ -47,7 +47,7 @@ fox();
|
|||||||
## 💻 Пример кода
|
## 💻 Пример кода
|
||||||
|
|
||||||
```cpp
|
```cpp
|
||||||
// Подключаем библиотеку (код внутри не выполняется, только функции запоминаются)
|
// Подключаем библиотеку
|
||||||
include("math_lib.fox");
|
include("math_lib.fox");
|
||||||
|
|
||||||
int x = 10;
|
int x = 10;
|
||||||
@@ -72,5 +72,5 @@ print("Array elem: " + get(nums, 0));
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
**Author:** [SkrinVex]
|
**Author:** [SkrinVex](https://skrinvex.su)
|
||||||
**License:** MIT
|
**License:** MIT
|
||||||
|
|||||||
@@ -141,27 +141,26 @@ print(get(chest, 0)); // Выведет 55
|
|||||||
|
|
||||||
## 7. Модули и Импорт
|
## 7. Модули и Импорт
|
||||||
|
|
||||||
FoxLang v4.0 поддерживает умный импорт.
|
FoxLang v4.0 поддерживает импорт внешних модулей.
|
||||||
Используйте `include("путь/к/файлу.fox");`.
|
Используйте `include("путь/к/файлу.fox");`.
|
||||||
|
|
||||||
**Особенности:**
|
**Особенности:**
|
||||||
|
|
||||||
* Поддерживаются **относительные пути** (например, `../lib/utils.fox`).
|
* **Важная информация:** При подключении внешних модулей в связи с оссобенностями c++, если в скрипте есть вызов функции в корне скрипта то она тоже будет выполнена при импорте. Это может привести к неожиданным результатам и ошибкам.
|
||||||
* **Режим Импорта:** При подключении файла интерпретатор выполняет **только** объявления переменных и функций. Команды вызова функций или `print` внутри подключаемого файла **игнорируются**. Это позволяет безопасно подключать библиотеки, содержащие тестовый код.
|
|
||||||
|
|
||||||
**Пример:**
|
**Пример:**
|
||||||
`lib.fox`:
|
`lib.fox`:
|
||||||
|
|
||||||
```cpp
|
```cpp
|
||||||
void hello() { print("Hi!"); }
|
void hello() { print("Hi!"); }
|
||||||
hello(); // ЭТО НЕ ВЫПОЛНИТСЯ ПРИ ИМПОРТЕ
|
hello(); // Это выполнтся при импорте
|
||||||
```
|
```
|
||||||
|
|
||||||
`main.fox`:
|
`main.fox`:
|
||||||
|
|
||||||
```cpp
|
```cpp
|
||||||
include("lib.fox");
|
include("lib.fox");
|
||||||
hello(); // А вот теперь мы вызываем функцию сами
|
hello(); // Мы так же можем вызывать функции из модулей.
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -174,4 +173,4 @@ hello(); // А вот теперь мы вызываем функцию сами
|
|||||||
| `input()` | Останавливает программу и ждет ввода строки от пользователя. |
|
| `input()` | Останавливает программу и ждет ввода строки от пользователя. |
|
||||||
| `round(expr)` | Округляет дробное число до ближайшего целого. |
|
| `round(expr)` | Округляет дробное число до ближайшего целого. |
|
||||||
| `random()` | Генерирует случайное число от 0 до 99. |
|
| `random()` | Генерирует случайное число от 0 до 99. |
|
||||||
| `fox()` | Пасхалка: выводит ASCII-арт лисы. |
|
| `fox()` | Пасхалка: выводит ASCII-арт лисы. |
|
||||||
|
|||||||
+2
-2
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
void Hello() {
|
void Hello() {
|
||||||
print("Привет, " + Player + "!");
|
print("Привет, " + Player + "!");
|
||||||
print("Тебе предстоит пройти это подземелье");
|
print("Тебе предстоит пройти это подземелье");
|
||||||
}
|
}
|
||||||
Hello();
|
Hello();
|
||||||
|
|
||||||
@@ -27,4 +27,4 @@
|
|||||||
} else {
|
} else {
|
||||||
print("Не найдено действие для этого ввода.");
|
print("Не найдено действие для этого ввода.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user