Skip to content
This repository was archived by the owner on Mar 12, 2025. It is now read-only.

Commit 3a7c89e

Browse files
authored
Update README.md
1 parent 414204f commit 3a7c89e

File tree

1 file changed

+4
-44
lines changed

1 file changed

+4
-44
lines changed

README.md

+4-44
Original file line numberDiff line numberDiff line change
@@ -7,40 +7,13 @@
77

88
## Текущий статус
99

10-
На данный момент проект находится на стадии активной разработки.
11-
12-
Ожидается, что следующие этапы будут включать:
13-
14-
- Разработка интерпретатора
15-
16-
- Разработка хранилищя состояния
17-
18-
- Оптимизация производительности и добавление новых функций
19-
20-
21-
Уже разработано/разрабатываться:
22-
- Разработка парсера и AST — выполнено ≈ 70%
23-
24-
- ~~Разработка токенизатора~~ — работает, но требуется оптимизация
25-
26-
- Реализация структуры хранения переменных и состояния — базовая структура хранения переменных
27-
28-
29-
## Цели:
30-
31-
- Автоматизация: Giraffe-Language предоставляет простые и гибкие возможности для автоматизации задач, что идеально подходит для настройки и обслуживания процессов, а также для работы с API и системами.
32-
33-
- Удобные интерфейсы: Язык ориентирован на создание удобных и читаемых интерфейсов, которые помогут интегрировать и управлять сложными проектами через легкие в использовании скрипты.
34-
35-
- Интерактивность и гибкость: Язык поддерживает динамическую работу с данными и интерфейсами, позволяя быстро изменять поведение системы через скрипты.
36-
37-
## Конецепт:
10+
На данный момент проект на паузе. Версия 1.2.0 является финальной, но сейчас идет разработка версии 2.0.0.
3811

3912
### Графичиская схема роботы:
4013

4114
![Giraffe Sheme](images/Giraffe_Sheme.jpg)
4215

43-
### Описание концепта/схемы:
16+
### Описание схемы:
4417

4518
#### Лаксер (Токенайзер)
4619
Разбивает исходный код на токены, представляя его в виде более простых элементов для дальнейшей обработки
@@ -79,20 +52,7 @@
7952
- Отладочный режим
8053

8154

82-
83-
## Идеи по улучшению концепта:
84-
85-
**Мемоизация вычислений:** Для часто встречающихся выражений можно хранить уже вычисленные результаты и возвращать их при повторных вызовах, чтобы избежать лишних вычислений.
86-
87-
**Снимки состояния:** На определённых этапах работы программы можно делать "снимки" состояния для отката в случае ошибки или для возврата к состоянию на определённой инструкции.
88-
89-
**Поддержка замыканий:** Механизм замыканий позволяет переменным сохранять своё значение даже после выхода из области видимости, где они были определены. Это полезно для реализации лямбда-функций или обработчиков.
90-
91-
**Использование слабых ссылок:** Для некоторых объектов, например, временных данных, можно использовать слабые ссылки `weak references`, чтобы избежать утечек памяти при удалении ненужных объектов.
92-
93-
94-
95-
## Предпологаемый синтаксис:
55+
## Синтаксис:
9656
```js
9757
/*
9858
Многострочный коментарий
@@ -169,4 +129,4 @@ func main(){
169129

170130
## Лицензия
171131

172-
Этот проект лицензирован под GNU LICENSE - подробности см. в файле [LICENSE](LICENSE).
132+
Этот проект лицензирован под GNU LICENSE - подробности см. в файле [LICENSE](LICENSE).

0 commit comments

Comments
 (0)