dalet/specification/main.md

35 lines
1.3 KiB
Markdown
Raw Normal View History

# Dalet v1.0-preview
**Dalet** is a system through which it is possible to combine human readable markup language and small size of transmitted data. The system is divided into two stages and two languages.
2024-07-23 18:10:13 +03:00
## Specification
- [Tags](./tags.md)
- [Daletl](./daletl.md)
- [Daleth](./daleth.md)
2024-07-27 17:44:34 +03:00
- [DaletPack](./daletpack.md)
2024-07-23 18:10:13 +03:00
## Languages
### Daleth
2024-07-23 19:00:02 +03:00
**Daleth** is a high-level language for humans. It can be compiled into daletl, but daletl cannot be decompiled into daleth[^1]. It is only used for page creation by humans.
### Daletl
2024-07-27 17:44:34 +03:00
**Daletl** is a low-level language for machines. It is used in data transmission, processing and generation. It is specifically optimized to transfer as little data as possible using DaletPack.
## Stages
### Stage 1 (optional)
2024-07-27 17:44:34 +03:00
In the first stage, the daleth language is parsed and converted to daletl. All tags becomes an array of properties `[tag_id, body, argument]`, so that they take up less space in the transmitted data, for example. **This stage is not for data transmission**.
### Stage 2
At this stage, only daletl is used. This stage is used by programs for generation, modification and rendering. The data is transferred between the server and the client only in this stage.
## References
2024-07-23 19:00:02 +03:00
[^1]: In the first versions only. Decompilation is planned for the future for the sake of devtools.